2016-11-16 7 views
0

私はaws beanstalkアプリをPython用に見て、Apacheとmod_wsgiを使って、デフォルトの設定で1プロセスと15スレッドを使用することを学びました。Aws beanstalk、mod_wsgi、python、プロセスとスレッド

1)ユーザーがシステムに長いファイルをアップロードすると、1スレッドがビジー状態になり、コンテキストが他のスレッド間で急速に切り替わるため、1人のユーザーがファイルをアップロードしてもアプリケーション全体がブロックされません。

2)私は2 cpusを持っているなら、私はプロセスの数を増やすべきですか?cpusの数?

3)このaws beanstalkの設定であなたの個人的な経験は何ですか、あなたのサイトは速く応答性があると思いますか?どのくらいのトラフィックがBS EC2のどのタイプのawで処理されますか?私はこのようなmod_wsgi awsの設定が提供できるものが何かを知りません。

答えて

0

一般に、ファイルのアップロードはI/O境界になります。アップロードは、サーバの操作に過度の影響を与えてはいけません。また、スレッド切り替えやPythonグローバルインタプリタロックの問題を引き起こしてはいけません。あなたが心配する必要があるのは、スレッドの数が設定によって制限されるのと同時に実行しているかもしれない長期実行アップロードの数です。

プロセス/スレッドのミックスをどのように設定するかは、非常に特定のアプリケーションに依存し、アプリケーションの要件が分かっているだけなので、誰もあなたにアドバイスすることは不可能です。あなたがまだ分かっていないなら、あなたはそれを設定する必要があるかもしれないことについて早すぎることを心配しています。したがって、アプリケーションを記述して実行し、監視を追加して、それが何をしているのかを知ってから、サーバーを調整する必要があるかどうかを確認してください。様々な問題に関するいくつかの背景については

、時計を行く:あなたの答えのための

+0

感謝。 mod wsgiの著者として、単一のCPUコアaws EC2上で実行する必要があるプロセスはいくつありますか?コアの数に等しいようにプロセスの数を常に制限する必要がありますか?プロセス> CPUコアを持つ利点はありますか? –

+0

私が言ったように、あなたのアプリケーションが持つ要件について知っておく必要があります。どのくらいの秒数のリクエストが得られますか?リクエストの実行時間。それらは、CPU集約的な作業を行うI/O境界ですか?使用可能なメモリ容量。アプリケーションが使用するメモリ量。それを解決しようとするには2つの変数があり、推測することはできません。 –

+0

私はあなたのことを理解しています。この瞬間を忘れてください...一般的なルールとして、Cpuコアごとに1つ以上のプロセス(スレッドについては言及しません)が決して存在しないことが本当です。同じコアですか? –

関連する問題