こんにちは、( ,_ノ` )です。
量産型ハイブリッドTigerサーバーを2ちゃんねる様に納品しました。
2ちゃんねるの新しいサーバー名は toki.2ch.net となります。
こちらで、toki.2ch.net に移転する掲示板の一覧をご案内いたします。
toki.2ch.net 新登場 / ハイブリッドTigerサーバー
さて、toki.2ch.net としてデビューした量産型ハイブリッドTigerサーバーですが、
以下のセッティングを「標準設定」として適用していますので紹介いたします。
●ネットワークバッファ拡大(スペシャルセッティング1)
突発的なアクセス数の増加でデータのやりとりが頻繁になった時に
処理が詰まらないようにする設定です。
/boot/loader.conf
# increase nmbclusters, maxsockets, etc.
kern.ipc.nmbclusters=131072
kern.ipc.maxsockets=65536
vm.pmap.shpgperproc=2048
kern.ipc.maxpipekva=41943040
|
/etc/sysctl.conf
# increase maximum file descriptors
kern.maxfiles=131072
kern.maxfilesperproc=65536
# increase listen queue
kern.ipc.somaxconn=32768
kern.ipc.maxsockbuf=20480000
# see http://qb5.2ch.net/test/read.cgi/operate/1097931665/666-676
net.inet.icmp.icmplim=3000
net.inet.icmp.icmplim_output=0
# authority
security.bsd.see_other_uids=1
## nmb (number of mbufs) tuning for FreeBSD 7.x
## note: kern.ipc.nmbclusters=131072 should be set at /boot/loader.conf
#kern.ipc.nmbjumbop=65536
#kern.ipc.nmbjumbo9=32768
#kern.ipc.nmbjumbo16=16384
# original settings of A-tiger
net.inet.tcp.rfc3042=1
net.inet.tcp.rfc3390=1
net.link.ether.inet.log_arp_wrong_iface=0
# changi Memory settings
vfs.ufs.dirhash_maxmem=134217728
|
※赤文字は、FreeBSD 7.x 用の設定のため、FreeBSD 8.0 にバージョンアップした
ハイブリッドTigerサーバーでは、上記の設定をコメントアウトしました。
●httpd待機数の増量(スペシャルセッティング2)
httpdを多めに待機させておき、突発的なアクセスの増加が発生しても
受け入れ可能になるまでの待ち時間を作らないようにする設定です。
Apacheディレクトリ/conf/httpd.conf
ServerLimit 2048
StartServers 1024
MinSpareServers 703
MaxSpareServers 1024
MaxClients 2048
MaxRequestsPerChild 10000
MaxMemFree 2000
|
●DNSキャッシュの問い合わせログを記録しない(スペシャルセッティング3)
この設定を BIG-server.com の標準設定としました。
●ネットワークバッファ使用量を節約(スペシャルセッティング5)(追加)
ネットワークバッファ使用量を節約する事により、バッファ不足の発生を抑えて
httpdが「zoneli(mit)」状態になりにくいようにする設定です。
/etc/sysctl.conf
# The higher the buffer, the more mbufs will be used for network connections.
# Lowering these buffers down will reduce your memory usage and
# save yourself some mbufs.
# This should dramatically reduce your mbuf usage and get your server
# out of zonelimits once and for all.
# http://www.realfreebsdtips.com/networking/freebsd-stopping-zoneli-state/
net.inet.tcp.sendspace=8192
net.inet.tcp.recvspace=8192
|
●保留状態のコネクションのキューの最大長拡大(スペシャルセッティング6)
Apacheの方で制限している保留状態のコネクションのキューの最大長を拡大して、
アクセスの集中時(混雑時)の接続で「詰まり」や「エラー」を発生しにくくする設定です。
Apacheディレクトリ/conf/httpd.conf
# Increasing maximum length of the queue of pending connections.
# (Default value is 511)
ListenBackLog 4096
|
●rtprioによるlogbufferの活入れ(スペシャルセッティング7)
rtprioによりlogbufferの処理優先度を上げて、logbufferの処理待ちで
httpdの処理がブロックされる事を解消する設定です。
Apacheディレクトリ/conf/httpd.conf
TransferLog "| exec /usr/sbin/rtprio 23 /usr/local/sbin/logbuffer"
|
/etc/sysctl.conf
# tuning for aio(4)
vfs.aio.max_aio_queue_per_proc=1024
vfs.aio.max_aio_queue=4096
|
●rtprioによるspeedy_backendの活入れ(スペシャルセッティング8)
「speedy_backend_wrapper」という特別なプログラムによりspeedy_backendの
処理優先度を上げて処理の「詰まり」を解消する設定です。
Apacheディレクトリ/conf/httpd.conf
SpeedyBackendProg /usr/local/bin/speedy_backend_wrapper
|
量産型ハイブリッドTigerサーバーでは、kamome.2ch.net の設定をベースに、
hayabusa.2ch.net で設定されたrtprioによるlogbufferとspeedy_backendの
優先度変更を「標準設定」としました。
用途に合わせて2ちゃんねるセッティングやchangiセッティングなどの
スペシャルセッティングを設定していくのが良いのではないかと思っています。
|