2016-08-29 4 views
0

現在、私のWebサーバ(php zendframeworkベース)をUbuntuからFreeBSDに移動しようとしています。両方のサーバーが同じハードウェア構成を持っています。マイグレーション後、私はJMeterのテスト(Httpリクエスト(Json)、Concurrent = 200)をFreeBSDサーバーの "スループット"がUbuntuサーバーの2倍になりました。 「:接続をリセットjava.net.SocketExceptionが」私は500に同時を増やすときFreebsdのApache2同時のリクエスト原因接続リセット

しかし、私が原因のほぼ50%の要求失敗を参照してください。しかし、Ubuntuサーバーでは正常に動作します。

何度もテストした結果、Ubuntuはエラーなしで1500同時のhttprequestを処理できることがわかりました.FreeBSDサーバーは2倍の速度で200倍の同時リクエストを処理できますが、それ以上の処理はできません。結果を確認するために、ABコマンドを試しました。 **ab -c 200 -n 5000 127.0.0.1/responseController。 ¬-cパラメータが200を超えると失敗して終了しますが、Ubuntuでは正常に動作します。

私は次のようにしました: 1. httpd.conf、/boot/loader.conf、/etc/sysctl.confを何らかの形で調整しますが、何も変更されていないように見えます。 2.私はmpn_worker_moduleにApacheの設定とPHPの関連する設定で切り替えてみます。何も変わっていないが、障害箇所のログがではなく、「対応する要求の失敗」を示しており、異なっていた:

「java.net.SocketExceptionが接続リセット」私は、検索をたくさんやったが、原因を見つけることができませんでしたこの失敗の私は、Jsonのリクエストが応答またはタイムアウトまで待っていましたが? どの設定ファイルやパラメータが動作するかわかりません。

助けてください。

+0

FreeBSDでipfwまたはpfを使用していますか?途中に何かがありますか?ソケット(netstat -Lan)の待ち行列をチェックするといいでしょう。最大長はデフォルトでは128です(kern.ipc.soacceptqueue)。 –

+0

はい、大変ありがとうございます –

答えて

0

マイケル・チリンのおかげで、「ipfw」はこれを引き起こしました。この場合、「kern.ipc.soacceptqueue」はボトルネックです。

関連する問題