« Reverse Transparent Proxy | メイン | RedHatでapt-get »

Squidのfiledescriptor増加

Squidのfiledescriptorを増やす@RedHat7.3

RedHat7.3のデフォルトのfiledescriptor(以下fd)は1024、1つのコネクションに3つのfdを使うので、
squidの初期状態では、300ぐらいのアクセスをさばくことができます。

が、それでも足りない場合はどうするのか、
設定ファイルにはそんな項目はありません。
OSのヘッダファイルをいじって、再コンパイルが必要。

ついでなので、rpmのrebuildで対応してしました。

/usr/include/bits/types.h
の98行目
#define __FD_SETSIZE 1024
を変更(8192にしました)

squidのsrcパッケージをダウンロードしてきて、
ulimit -HSn 8192
をした後でリビルド
rpm --rebuid squid.ver.src.rpm

/etc/rc.d/init.d/squid
のexport行の後に
ulimit -HSn 8192
を入れてsquidを起動。

ログの最初でファイルディスクリプタの数は確認できます。
また、squidの情報はsquidの動いているサーバで
/usr/sbin/client -p 80 cache_object://localhost/info
などとしてもOK。