1

私はApache HTTPClient(4.2.2)/ Java7を使用して、Tomcat 7サーバーへの再利用可能な接続を多数開いています(多くのユーザーがサービスに繰り返しアクセスすることをシミュレートするため)。Ubuntu 12 上のクライアントとサーバーの両方 (ただし、異なるマシン)。systctl.conf と limits.conf でこのシナリオが許可されていることを確認しました。

これは、約 1500 のシミュレートされたユーザー/接続までうまく機能します。接続は期待どおりに再利用されます。ただし、1500 から 1600 のシミュレートされたユーザーの間のどこかで、接続が再利用されなくなり、常に閉じたり再度開いたりします。これはなぜでしょうか?

同じサーバーに対して異なるマシンで複数のシミュレーションクライアントを起動すると、各クライアントが1500接続を超えない限り、サーバーは接続の再利用に問題がないため、問題はサーバー側にあるとは思いません。

4

2 に答える 2

1

接続マネージャーまたはサーバー側の構成の構成に応じて、接続が再利用されなくなった理由についてさまざまな理由が考えられます。理由を見つける最も簡単な方法は、ロギング ガイドの「接続管理/リクエスト実行のコンテキスト ロギング」の例で説明されているように、コンテキスト ロギングをオンにして HttpClient を実行することです。

于 2013-04-09T11:41:35.667 に答える
0

使用可能なワーカーの数を増やす必要がある場合があります。少なくとも、サーバーステータスに移動して、接続が不足したときに空いているワーカーがあるかどうかを確認してください

于 2013-04-09T11:48:16.450 に答える