ログの出力は直接ファイルに書き込みが走るので、ディスク性能がモロに影響する。
Apache2.2で低速なディスクを使っていて、それなりにアクセスがある環境だと、BufferedLogsをOnにするだけで体感速度が変わるくらい大きな影響がある。
Nginxでも同じようにバッファーできないのかな?と思ってみたら、やはりあった。
http://nginx.org/en/docs/http/ngx_http_log_module.html
試しに自宅サーバーで設定してみた。
設定はaccess.logの後にbuffer=サイズを追記するだけ。
[root@master01]/etc/nginx# diff nginx.conf.20160819 nginx.conf
35c35
-- access_log /var/log/nginx/access.log custom;
---
++ access_log /var/log/nginx/access.log custom buffer=32k;
これでNginxをrestartすればOK。
実際にログをtailで見てもちゃんとバッファーされた。
自宅サーバーだとアクセス少ないので、32kだと中々ログ出力されない笑
どの程度影響があるかわからないけれど、これは知っておいて損はなさそうに思う。
また、良さそうなパラメータがあったら設定してみたい。