всплески времени ответа на кеширующем сервере

Игорь Хомяков homyakov на embria.ru
Пт Дек 25 19:07:20 MSK 2009


Здравствуйте!

кеширующий nginx, FreeBSD 7.2 amd64, 6Gb Ram

proxy_cache_path  /usr/mem_disk/cache levels=1:2
keys_zone=MEMDISK:128m inactive=3d max_size=1600M;
proxy_cache_key  $scheme$proxy_host$uri$is_args$args;

# proxy_cache_valid  72h;
proxy_cache_valid  200 301 302 304 72h;

proxy_cache_use_stale   updating error timeout invalid_header;
proxy_ignore_client_abort on;


запускаю на соседнем сервере
while true; do time wget -q -O /dev/null $image_url; sleep 2; done

вижу
wget -q -O /dev/null   0.00s user 0.00s system 3% cpu 0.083 total
wget -q -O /dev/null   0.00s user 0.00s system 1% cpu 0.127 total
wget -q -O /dev/null   0.00s user 0.00s system 4% cpu 0.082 total
wget -q -O /dev/null   0.00s user 0.00s system 0% cpu 5.277 total
wget -q -O /dev/null   0.00s user 0.00s system 4% cpu 0.082 total
wget -q -O /dev/null   0.00s user 0.00s system 3% cpu 0.083 total
wget -q -O /dev/null   0.00s user 0.00s system 1% cpu 0.126 total
wget -q -O /dev/null   0.00s user 0.00s system 1% cpu 0.158 total
wget -q -O /dev/null   0.00s user 0.00s system 2% cpu 0.104 total
wget -q -O /dev/null   0.00s user 0.00s system 1% cpu 0.120 total
wget -q -O /dev/null   0.00s user 0.00s system 4% cpu 0.083 total
wget -q -O /dev/null   0.00s user 0.00s system 3% cpu 0.128 total
wget -q -O /dev/null   0.00s user 0.00s system 2% cpu 0.163 total
wget -q -O /dev/null   0.00s user 0.00s system 2% cpu 0.124 total
wget -q -O /dev/null   0.00s user 0.00s system 0% cpu 4.668 total
wget -q -O /dev/null   0.00s user 0.00s system 1% cpu 0.184 total

то есть каждый 10-12 запрос отдается с серьезной задержкой

на сервере в это время работает 4 worker-а и cache loader обновляет данные

Грешил на медленный HDD, но при отдаче с md картина та же самая.
sysctl -a | grep vnode
kern.maxvnodes: 1000000
kern.minvnodes: 25000
vm.stats.vm.v_vnodepgsout: 0
vm.stats.vm.v_vnodepgsin: 1269012
vm.stats.vm.v_vnodeout: 0
vm.stats.vm.v_vnodein: 266964
vfs.freevnodes: 25065
vfs.wantfreevnodes: 25000
vfs.numvnodes: 200612
debug.sizeof.vnode: 504


-- 
WBR
Igor Homyakov
System Administrator, Embria



Подробная информация о списке рассылки nginx-ru