在迁移到Ubuntu Hardy,amd64时,我们注意到我们的一个应用程序显着减速.它在Debian Sarge i386上运行得非常好.
对(Apache 1.3)httpd进程运行’strace -r’显示了以下令人不安的部分:
0.000083 poll([{fd=8,events=POLLIN|POLLERR,revents=POLLIN}],1,-1) = 1 0.000026 recvfrom(8,"_323-412D\0\0\0000\0\2\0\0\0\17recueil-cours"...,32727,NULL,NULL) = 8192 0.000061 poll([{fd=8,"\0\0\0000\0\2\0\0\0\17recueil-courses\0\0\0\23er2"...,32767,NULL) = 2369 0.117422 brk(0x397a000) = 0x397a000 0.140721 brk(0x399b000) = 0x399b000 4.457037 brk(0x39bc000) = 0x39bc000 0.078792 stat("/opt/semantico/slot/nijhoff/3/sitecode/live/public_home.html",{st_mode=S_IFREG|0644,st_size=2194,...}) = 0
注意最后一行的brk – 暗示brk(0x399b000)花了4.45秒!
我已经查看了brk的手册页,它指出它用于请求更大的数据段/堆,但我找不到任何理由为什么需要这么长时间.
有人有任何想法吗?