web-dev-qa-db-ja.com

遅いPOSTアップロード(Linuxカーネルチューニング)

私は、専用サーバーで、HAproxyが設定されたCauchoResinバックエンドで作業しています。

今、私はファイルのアップロードの問題を扱っています。私たちのWebアプリケーションでは、Resinサーバーのいずれかに直接ヒットした場合、画像のファイルアップロードが可能です。アップロードは非常に高速(5秒)で問題ありません。次に、本番ロードバランサーにアクセスすると、画像のアップロードが非常に遅くなります(50/60秒)。

ロードバランサーのsysctl.confを調整して、より多くのメモリをTCPソケットに

net.core.rmem_max = 134217728 
net.core.wmem_max = 134217728 
net.ipv4.tcp_rmem = 4096 87380 67108864
net.ipv4.tcp_wmem = 4096 65536 67108864
net.core.netdev_max_backlog = 250000
fs.file-max = 100000

しかし、改善は見られなかったので、別のサーバーを使用して、実行構成とsysctlファイルの同じチューニングでHAproxyをインストールしました。その後、同じアップロードテストを実行し、アップロード速度はかなり良好で、リクエストを完了するのに約6秒かかりました。 。したがって、haproxy構成ファイルに問題はなく、バックエンドサーバーにも問題はありません。

この2番目のサーバーはトラフィックのないスペアサーバーであるため、sysctlチューニングが本番ロードバランサーでは十分ではないことを理解しています。他のすべては正常に機能します(通常のWebページの閲覧など)

ロードバランサーは、Haproxy1.5.9を実行するIntel82576 GbENICを搭載したDellR415です。

Sysctl.confの調整についてサポートをいただけますか?

ありがとう

1
Masterl1nk

応答の50秒は非常に珍しいです。すべてのTCP sysctrlチューニングを削除し、すべての設定をOSのデフォルトに戻すことをお勧めします。基本構成が機能するようになったら、一度に1つのパラメーターをチューニングします。基準。

1
robbyt