メモ書きを一部書き直して転載.
なにでこんなことやったのかは書かないでおく.
1. sysctl で TIME_WAIT を短く(60秒 -> 20秒)
# sysctl -w net.inet.tcp.msl=10000
10秒でも問題ない気がする
2. accept filter で Apache の性能を絞り出す(?)
#kldload accf_http
#kldload accf_data
# ( apache 再起動する)
サーバ再起動したときにも設定されるように以下記述
・/boot/loader.conf
accf_data_load="YES"
accf_http_load="YES"
・/etc/sysctl.conf
net.inet.tcp.msl=10000
変更後、TIME_WAIT の滞留がだいたい 250 -> 100ちょっとくらいに減少。
FIN_WAIT_2 は残念ながら 調整できない
(現行のバージョンだと fast_finwait2_recycle や finwait2_timeout といた mib があるので、変更可能)
ソースに手を加えるなら話は別
ほか、最近の OS での基本的なチューニング項目は varnish cache のサイトにいくつか書いてあるので参考にできる。
http://varnish.projects.linpro.no/wiki/Performance
0 件のコメント:
コメントを投稿