5

私はVPSでテストを試みましたが、1秒あたり10Kのリクエストに近づきました。それは、simple 'hello world' servletmembaseへの呼び出しは言うまでもなくです。

私のVPSは、2 x Intel Xeon X5570、クアッドコア「Nehalem」アーキテクチャでした。

注:私はJavaの専門家でも、Tomcatの専門家でもありません。これは、デフォルト設定でした。

他の誰かが、光を当てる可能性のあるこのような大量のトラフィックに対処していますか?

私はapacheベンチを使用し、それをおそらく4〜5回実行して、サーバーに対して約100Kの要求を実行しました。

オリジナル:Tomcatで2000以上のリクエスト/秒を処​​理する方法は?

4

1 に答える 1

16

NIO(非ブロッキングIO)をオンにします。これはデフォルトではオンになっていません。NIOがない場合、すべてのHTTP接続は単一のスレッドによって処理され、制限は使用可能なスレッドの量によって異なります。NIOを使用すると、複数のHTTP接続を1つのスレッドで処理でき、制限は使用可能なヒープメモリの量によって異なります。約2GBで、最大20Kの接続が可能です。

NIOをオンにするには、Tomcatの要素のprotocol属性をに変更します。<Connector>/conf/server.xml"org.apache.coyote.http11.Http11NioProtocol"

<Connector
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    port="80"
    redirectPort="8443"
    connectionTimeout="20000"
    compression="on" />
于 2011-11-01T18:14:20.237 に答える