2007-06-27 :-)
_ ロディアのメモ帳
尽きたので次のメモ帳を補充しました。
_ 「なぜそんなにもWikiは重要なのか」(PDF)
( via 角谷さんのところ )
あう。
パターンランゲージじゃなくてパタンランゲージなんですね。
江渡浩一郎さんと言えば「qwikweb のひと」「Software Design の 『wiki つまみぐい』に名前があったひと」という認識しかありませんでした。オブジェクト倶楽部[ 2007-06-20 ]での講演では wiki と建築業界の話題がありました。ソフトウェアを作るときの「ビルド( build )」という言葉は建築業界を連想させます。
_ [zsh]指定したディレクトリ以下の Makefile 以外のファイルを削除する
zsh
% find /foo/bar/baz -type f | while read f; do if [ `basename $f` != "Makefile" ]; then rm $f fi done
ものすごく遅いです。basename が影響してるのかしら。ファイル名にマッチさせる部分は正規表現を使えそうな気がするのだけどよく分かりませんでした。
_ [NetBSD][httpd][アクセス拒否][Load Average]Load Average が高い
現象
こんな。
% top -d1
load averages: 2.72, 3.22, 3.60 19:44:11
55 processes: 54 sleeping, 1 on processor
CPU states: % user, % nice, % system, % interrupt, % idle
Memory: 290M Act, 247M Inact, 4024K Wired, 12M Exec, 489M File, 211M Free
Swap: 128M Total, 128M Free
PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
17 root 18 0 0K 179M syncer 68:12 0.00% 0.00% [ioflush]
18 root -18 0 0K 179M aiodoned 3:31 0.00% 0.00% [aiodoned]
199 root 18 0 1180K 3280K pause 2:16 0.00% 0.00% ntpd
6994 www -4 0 7924K 3120K semwait 1:00 0.00% 0.00% httpd
16192 www -4 0 10M 3348K semwait 0:59 0.00% 0.00% httpd
19106 www -4 0 7780K 5836K semwait 0:58 0.00% 0.00% httpd
856 root 2 0 1124K 2060K select 0:55 0.00% 0.00% sendmail
16081 www 2 0 7120K 3004K poll 0:54 0.00% 0.00% httpd
21414 www -4 0 7888K 7072K semwait 0:54 0.00% 0.00% httpd
24878 www -4 0 7180K 6988K semwait 0:52 0.00% 0.00% httpd
8777 www -4 0 7828K 2988K semwait 0:52 0.00% 0.00% httpd
20441 www -4 0 7220K 7064K semwait 0:51 0.00% 0.00% httpd
25835 www -4 0 7808K 6964K semwait 0:51 0.00% 0.00% httpd
28749 www -4 0 7228K 3008K semwait 0:50 0.00% 0.00% httpd
860 root 2 0 300K 684K select 0:41 0.00% 0.00% sshd
18457 root 2 0 6148K 8044K select 0:12 0.00% 0.00% httpd
407 root 2 0 188K 408K kqread 0:11 0.00% 0.00% syslogd
317 tinydns 2 0 160K 236K netio 0:11 0.00% 0.00% tinydns
173 root 2 0 192K 352K select 0:08 0.00% 0.00% master
378 dnslog 2 0 60K 340K piperd 0:04 0.00% 0.00% logger
16 root -18 0 0K 179M pgdaemon 0:04 0.00% 0.00% [pagedaemon]
1020 root 10 0 268K 416K nanoslee 0:03 0.00% 0.00% cron
3512 rin 2 0 1116K 1372K select 0:02 0.00% 0.00% screen-4.0.3
22987 rin 3 0 788K 804K ttyin 0:01 0.00% 0.00% zsh
224 postfix 2 0 228K 444K select 0:01 0.00% 0.00% qmgr
22939 rin 28 0 156K 872K CPU 0:00 0.00% 0.00% top
5219 rin 18 0 492K 2124K pause 0:00 0.00% 0.00% zsh
26228 rin 18 0 500K 1776K pause 0:00 0.00% 0.00% zsh
19437 rin 18 0 436K 1224K pause 0:00 0.00% 0.00% screen-4.0.3
2 root 14 0 0K 179M crypto_w 0:00 0.00% 0.00% [cryptoret]
結論
httpd の負荷が高いのかしら。先日設定したアドレス[ 2007-06-23 ]にアドレス範囲を指定してなかったので /usr/pkg/etc/httpd/deny-us.conf を用意して以下を書きました。しばらく様子を見てます。
<Limit GET POST> Order allow,deny Allow from all Deny from 67.159.0.0/18 Deny from 64.124.0.0/14 Deny from 208.36.0.0/15 </Limit> </Directory>
作業ログ
せっかくだから sysstat してみました。
ref. Chapter17.Tuning NetBSD - 17.3.2. The sysstat utility
% sysstat all
/0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10
Load Average |||||||
/0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100
<idle> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
/usr が多い?
% sysstat bufcache
/0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10
Load Average ||||||||
34715 metadata buffers using 118782 kBytes of memory (12%).
125055 pages for cached file data using 500220 kBytes of memory (51%).
3272 pages for executables using 13088 kBytes of memory ( 1%).
52414 pages for anon (non-file) data 209656 kBytes of memory (21%).
52962 free pages 211848 kBytes of memory (21%).
File System Bufs used % kB in use % Bufsize kB % Util %
/usr 32181 92 101778 86 102076 86 100
/home 2127 6 14598 12 14788 12 99
/var 314 0 1264 1 1266 1 100
/ 92 0 634 1 636 1 100
Total: 34714 99 118274 100 118766 100 100
んふ?
% sysstat iostat
/0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10
Load Average |||||||
/0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100
CPU user|
nice|
system|
interrupt|X
idle|XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
/0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100
md0 kBps|
tps|
wd0 kBps|X
tps|
cd0 kBps|
tps|
http のアクセスが多いっす。
% sysstat netstat
/0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10
Load Average ||||||
Local Address Foreign Address Proto Recv-Q Send-Q (state)
fe80:1::217:31ff.ntp *.* udp6 0 0
localhost.ntp *.* udp6 0 0
fe80:2::1.ntp *.* udp6 0 0
localhost.smtp *.* tcp6 0 0 LISTEN
hitomi.area51.gr.domain*.* udp 0 0
hitomi.area51.gr.ntp *.* udp 0 0
localhost.ntp *.* udp 0 0
localhost.smtp *.* tcp 0 0 LISTEN
hitomi.area51.gr.ssh sumire.area51.gr.1191 tcp 0 0 ESTABLISHED
hitomi.area51.gr.http ntsitm052211.sit.32253 tcp 0 0 TIME_WAIT
hitomi.area51.gr.http ip-122-152-129-1.47672 tcp 0 0 TIME_WAIT
hitomi.area51.gr.http rz502291.inktomi.38259 tcp 0 0 TIME_WAIT
hitomi.area51.gr.http livebot-65-55-20.29902 tcp 0 0 TIME_WAIT
hitomi.area51.gr.http ip-122-152-129-6.41018 tcp 0 0 TIME_WAIT
hitomi.area51.gr.http livebot-65-55-20.30024 tcp 0 0 TIME_WAIT
hitomi.area51.gr.http rz502290.inktomi.40232 tcp 0 0 TIME_WAIT
hitomi.area51.gr.58230 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58229 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58228 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58227 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58226 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58225 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58224 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58223 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58222 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58221 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58220 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58219 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58218 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58217 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58216 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58215 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58214 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58213 210.188.204.58.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58212 210.188.216.246.http tcp 0 0 TIME_WAIT
hitomi.area51.gr.58211 210.188.204.58.http tcp 0 0 TIME_WAIT
www ががんばってる?
% sysstat ps
/0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10
Load Average |||||||||||||||
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
www 13950 70.7 2.6 25420 26220 ?? R 10:06PM 0:01.78 ruby /home/rin/public_html/diary/index.
root 17 0.0 17.1 0 173400 ?? DL 31May07 68:31.79 [ioflush]
root 199 0.0 0.3 1180 3280 ?? Ss 31May07 2:17.98 /usr/sbin/ntpd
root 407 0.0 0.1 188 520 ?? Is 31May07 0:11.60 /usr/sbin/syslogd -s
www 23581 0.0 0.0 0 0 ?? ZW 1Jan70 0:00.00 (ruby18)
root 0 0.0 17.1 0 173400 ?? DLs 31May07 0:00.54 [swapper]
root 1 0.0 0.0 72 220 ?? Is 31May07 0:00.88 init
root 2 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [cryptoret]
root 3 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus0]
root 4 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus1]
root 5 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus2]
root 6 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus3]
root 7 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus4]
root 8 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atabus5]
root 9 0.0 17.1 0 173400 ?? DL 31May07 0:00.20 [usb0]
root 10 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [usbtask]
root 11 0.0 17.1 0 173400 ?? DL 31May07 0:00.13 [usb1]
root 12 0.0 17.1 0 173400 ?? DL 31May07 0:00.19 [usb2]
root 13 0.0 17.1 0 173400 ?? DL 31May07 0:00.09 [usb3]
root 14 0.0 17.1 0 173400 ?? DL 31May07 0:00.23 [usb4]
root 15 0.0 17.1 0 173400 ?? DL 31May07 0:00.00 [atapibus0]
root 16 0.0 17.1 0 173400 ?? DL 31May07 0:05.59 [pagedaemon]
rin 21436 0.0 0.2 712 1536 p3 R+ 10:06PM 0:00.02 sysstat ps
root 18 0.0 17.1 0 173400 ?? DL 31May07 3:33.31 [aiodoned]
postfix 6493 0.0 0.1 192 968 ?? S 10:06PM 0:00.00 pickup -l -t unix -u
tinydns 317 0.0 0.0 160 236 E0- I 31May07 0:11.99 /usr/pkg/bin/tinydns
dnslog 378 0.0 0.0 60 340 E0- I 31May07 0:04.34 logger -t nbtinydns -p daemon.info
root 703 0.0 0.0 1044 300 ?? Is 31May07 0:00.34 /usr/sbin/dhcpd -q vr0
root 860 0.0 0.1 300 972 ?? Is 31May07 0:41.79 /usr/sbin/sshd
www 25963 0.0 0.4 6576 3568 ?? S 8:27PM 0:01.09 /usr/pkg/sbin/httpd -k start
root 173 0.0 0.0 192 420 ?? Ss 31May07 0:08.57 /usr/libexec/postfix/master
root 1083 0.0 0.0 88 280 ?? Is 31May07 0:00.02 /usr/sbin/inetd -l
root 1020 0.0 0.0 268 420 ?? Is 31May07 0:03.71 /usr/sbin/cron
postfix 224 0.0 0.0 228 444 ?? I 31May07 0:01.08 qmgr -l -t unix -u
root 228 0.0 0.0 56 4 E0 IWs 31May07 0:00.00 /usr/libexec/getty Pc console
root 230 0.0 0.0 56 4 E1 IWs 31May07 0:00.00 /usr/libexec/getty Pc ttyE1
はて?
apache httpd のログを見てみます。
% grep "27/Jun/2007" /var/log/httpd/access_log | awk '{ print $1}' | sort | uniq -c | sort -nr | head
4294 67.159.44.231
4231 64.124.85.214
2149 133.9.238.98
1259 38.99.13.124
1187 65.55.212.244
1184 122.152.129.6
1182 66.249.67.24
1136 122.152.129.11
985 220.194.55.47
932 222.145.161.158
IPひろば で探してみます。
OrgName: FDC Servers.net, LLC NetRange: 67.159.0.0 - 67.159.63.255 CIDR: 67.159.0.0/18
先日書いた /usr/pkg/etc/httpd/deny-us.conf はこんなでした。IP アドレス 1 つずつです。
<Directory /> <Limit GET POST> Order allow,deny Allow from all Deny from 67.159.44.233 Deny from 208.36.144.9 </Limit> </Directory>
ということでアドレス範囲を指定したわけでした。
[ツッコミを入れる]





