私は自分のLinode Ubuntu 14 64ビットサーバーをテストしています。これは、それらから入手できる最も基本的なサーバーです。Apache Benchmarkを使用してサーバーをテストしているほか、Pythonで記述したマルチスレッドスクリプトを使用していますが、これについては後で詳しく説明します。ABを使用すると、サーバー自体からローカルに実行すると1秒あたり約7kの要求がありますが、別のネットワーク/インターネットから実行すると約15になります。応答時間は、ローカルでの1000の同時接続の場合、約150ミリ秒です。リモートでは、100の同時接続の場合、応答時間は約1.5〜2.5秒です。リモートテストを実行しているネットワークには十分な帯域幅があり、実行しているコンピューターには十分なRAMとプロセッサ速度があります。それは高速なビジネスネットワークです。私は他の2台のコンピューターで、米国中の他の2つのネットワークを試しましたが、速度はほぼ同じです。
マルチスレッドスクリプトを実行しているときに、100を超える同時要求を試行するとすぐに一時中断します。これは外部ネットワークからのものです。サーバー上のPythonを3+にアップグレードするか、スクリプトを2.7互換に変更する必要があるため、サーバー上でスクリプトをローカルでまだ試していません。これをローカルでテストし、最大1000個のマルチスレッド接続でスクリプトを実行すると、150ミリ秒の応答時間が得られました。これは、単にurllib2を使用しているだけです。
私はこれを直接nginx(静的ファイル)、nginxの背後にあるpywsgiアプリ、およびpywsgiに対して直接テストしています。pywsgiアプリには、基本的な応答で応答する単純なルートがあるため、高速になります。驚くことではありませんが、nginx-> pywsgiが最良の結果を提供します。これは、おそらくリクエストをバッファリングする方法が原因です。この問題を引き起こしているLinodeのネットワークに固有の何かがありますか?内部テストと外部テストの桁違いの違いにより、何が原因であるのか疑問に思います。唯一の方法は、http / sとsshでフィルタリングするiptablesファイアウォールだけです。
dmesgには、私のテストに関する情報はありません。