Squidのcache_dirの最適化
かなり古いMLが元なので今も有効かよくわからないのですが、
RE:
[SQU] Squid cache_dir size calculation from Wisnu Wijayanta on 2000-10-09
(squid-users)
によると、
1)cache_dirのサイズはHDD(パーティション)のサイズの60%以下に
Squidのwikiの方にも記述がありますが、swap.stateファイルや一時ファイルの容量、そしてfilesystemのフラグメンテーションを考えて、少なめにしておく方がよいそうです。
2)最適なL1ディクレクリ数
cache_dirのサブディレクトリ数は、以下の式で求めます。
(((cache-size-KB/avg.-KB)/L2)/L2)*2= L1 dir.
L2はデフォルト256になっており、変更は必要なさそうです。
かなりのCache Object数を抱えるサーバ(2.5 STABLE14)において、上記の設定を試しています。
結果として、HDDの容量の9割ぐらいをcache_dirに割り当てた時に起きていた、Cache Hitのrespose timeがCache
Missの場合を大きく上回るようになり、全体のパフォーマンスが落ちることが押さえられているので、まだまだこの最適化は効果ありそうです。
あと、reiserfsとmount時のnoatime,notailは確実に効果あります。