ウェブホスティングコントロールパネルアプリケーション用のCherryPy
-
11-07-2019 - |
質問
かなり長い間、私は Webホスティングコントロールパネルになるまでの時間ですが、主にPythonホスティングに焦点を当てています- ユーザーがDjango /を生成/起動する方法を作りたいと思います 他のフレームワークプロジェクトは、パネルから直接。私は持っているようだった アプリを作成するのに最適なツール、CherryPyを見つけました。
これにより、独自のHTTP / HTTPSサーバーおよびすべて私のお気に入りのプログラミング言語。
しかし、今、新しい疑問が生じます。CherryPyはスレッドサーバーであるため、 この種のタスクに適していますか?
時間のかかるタスクがたくさんあるので、 タスクがブロックされ、他のページにアクセスしようとする残りのユーザーは そのままにしておくと、最終的にタイムアウトになります。
この種の問題は、フォークベースのサーバーでは発生しないと思います。
何をアドバイスしますか?
解決
"スレッド化"および「フォークベース」サーバーは同等です。 「スレッド」サーバーには複数の実行スレッドがあり、1つがブロックすると、他のスレッドは続行します。 「フォークベース」サーバーには複数のプロセスが実行されており、1つがブロックすると、他のプロセスが続行されます。唯一の違いは、スレッドサーバーはデフォルトでスレッド間でメモリを共有することです。デフォルトではメモリを共有しません。
もう1つのポイント-「サブプロセス」モジュールはスレッドセーフではないため、CherryPyから使用しようとすると、エラーが発生します。 (これは Python Bug 1731717 )
です。所属していません StackOverflow