pslaboが試したことの記録

はてなダイヤリーからはてなブログに引っ越してきました

この日記は現在実行中の減量記録を含む個人的なメモとして始めましたが、最近はコンピュータやガジェット、ハック、セキュリティネタのほうがメインになっております。

はてなダイヤリー時代はカテゴリ分けが適当だったのですが、これはそのうち直します。


Squid の cache_dir に関するメモ

このページの内容は記述が古いので最新のバージョンとは異なる可能性があります。

  • 基本中の基本

    cache_dir は専用のパーティションを割り当てるほうがよい。ファイルやディレクトリをたくさん作るので、フラグメンテーションが出やすい。Linux だと mount の際に noatime したほうがいい。ファイルシステムジャーナリング無しのほうがたぶん良い。



  • アルゴリズム別の特徴?

    • ufs

      デフォルトの動作。ディスクIOでブロッキングが起きると遅くなる。可もなく不可もなく。

      cache_dir ufs /var/spool/squid 1024 16 256



    • diskd

      オススメしない。高負荷になると、squid 本体と diskd との間の通信が詰まって急激に遅くなる。ディスクIOに専用の別プロセスを使う。まあまあ速い。CPUコアが複数の場合に向く。CPUコア1個でHTで論理CPU2個の構成にはたぶん向かない。

      cache_dir diskd /var/spool/squid 1024 16 256



    • aufs

      ディスクIOを別スレッドでやる。diskd にくらべるとCPU負荷が高い傾向があるみたい。でも ufs よりマシか?

      CPUコアが複数の場合に向く。CPUコア1個でHTで論理CPU2個の構成にはたぶん向かない。

      cache_dir aufs /var/spool/squid 1024 16 256



    • coss

      ディスクキャッシュがファイル一個なので一番速いハズ。できれば、これは特定のパーティションを raw device で使いたい感じ。設定方法がイマイチ判りにくい。

      cache_dir coss /var/spool/squid/cachefile 1024 max-size=1048576

      cache_swap_log /var/spool/squid/swap.state