web-dev-qa-db-ja.com

Tomcatとnginxのサイジング

リバースプロキシとして、nginxを前面に置いてTomcatサーバーにデプロイされたアプリケーションを管理します。スレッドプール/接続プールのサイズ設定について助けが必要です/ ...さまざまなパラメーター(Tomcatエグゼキューター、nginxワーカー、キープアライブなど)を説明するドキュメントはかなりたくさんありますが、見つける方法を説明するドキュメントはあまりありません。適切なサイズ。そして、私はドキュメントを正しく理解しているかどうかわかりません。

たとえば、nginxの監視グラフでは、約350のアクティブな接続、30の書き込み接続、320の待機接続があることがわかります。 1秒あたり約30件のリクエストがあります。

HTTP処理を処理するためにTomcatサーバーに200のスレッドが構成されています。

1024ワーカー接続のnginxに1つのワーカープロセスがあります。

ドキュメントから理解していることから、待機中の接続はHTTP1.1キープアライブです。しかし、nginxはHTTP1.0をプロキシとしてのみ実行することも理解しています。私は少し戸惑っています。それらの待機中の接続はTomcatスレッドを消費して何もしていませんか?

Tomcat/nginx(または別のリバースプロキシ、概念は同じである必要があります)のサイズ設定に関する優れたリソースを知っていますか。

ご協力いただきありがとうございます!

3
Guillaume

1024ワーカー接続のnginx上の1ワーカープロセス。

したがって、1 * 1024を超える接続を処理することはできず、nginxは複数のプロセッサコアを使用することはできません。

しかし、nginxはHTTP1.0をプロキシとしてのみ実行することも理解しています。

違う。参照: http://nginx.org/r/proxy_http_version

それらの待機中の接続はTomcatスレッドを消費して何もしていませんか

いいえ。クライアントとのキープアライブ接続です。また、バックエンドへのキープアライブ接続が含まれる場合もありますが、keepaliveディレクティブ( http://nginx.org/r/keepalive )で設定したものにすぎません。

4
VBart