Re: странная статистика

ruslan usifov ruslan.usifov на gmail.com
Пт Дек 10 15:21:17 MSK 2010


Я почему то думал что если начинаются тормоза, то увеличивается количество
ожидающих запросов, а тут получается что увеличивается количество пишущих а
как такое вообще то возможно? У нас на бекендах крутиться 64*3 = 192
процесса fastcgi, если предполагать что бекенд стал неспешно отдавать
контент, то по идее количество одновременно пишущих подключений не должно не
должно быть больше 192, и должно увеличиваться количество ожидающих в моем
же случае все как раз наоборот. Я сначала думал что у меня графики местами
перепутаны но однако все перепроверив убедился что нет не перепутаны.







PS:
root на social5# uname -a
FreeBSD social5.playrix.com 8.0-RELEASE-p4 FreeBSD 8.0-RELEASE-p4

root на social5# nginx -V
nginx version: nginx/0.8.53
configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt='-I
/usr/local/include' --with-ld-opt='-L /usr/local/lib'
--conf-path=/usr/local/etc/nginx/nginx.conf
--sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid
--error-log-path=/var/log/nginx-error.log --user=www --group=www
--http-client-body-temp-path=/var/tmp/nginx/client_body_temp
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp
--http-proxy-temp-path=/var/tmp/nginx/proxy_temp
--http-scgi-temp-path=/var/tmp/nginx/scgi_temp
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi_temp
--http-log-path=/var/log/nginx-access.log --with-http_stub_status_module
--with-pcre



на всякий случай прикрепляю свой zabbix скрипт сбора статистики с Nginx
#!/bin/sh

### DESCRIPTION
# $1 - имя узла сети в zabbix'е (не используется)
# $2 - измеряемая метрика

### OPTIONS VERIFICATION
if [ -z $1 ]; then
    exit 1
fi

### PARAMETERS
METRIC="$1"  # измеряемая метрика
STATURL="http://localhost/" # адрес nginx статистики

CURL=/usr/local/bin/curl

CACHETTL="5" # Время действия кеша в секундах (чуть меньше чем период опроса
элементов)
CACHE="/tmp/nginxstat.cache"

### RUN

## Проверка кеша:
# время создание кеша (или 0 есть файл кеша отсутствует или имеет нулевой
размер)
if [ -s "$CACHE" ]; then
        TIMECACHE=`stat -f"%m" "$CACHE"`
else
        TIMECACHE=0
fi

# текущее время
TIMENOW=`date '+%s'`
# Если кеш неактуален, то обновить его (выход при ошибке)
if [ "$(($TIMENOW - $TIMECACHE))" -gt "$CACHETTL" ]; then
        $CURL -s "$STATURL" > $CACHE || exit 1
fi

## Извлечение метрики:
case "$METRIC" in
    "active")
        grep "Active connections" $CACHE | cut -d':' -f2
    ;;
    "accepts")
        sed -n '3p' $CACHE | cut -d" " -f2
    ;;
    "handled")
        sed -n '3p' $CACHE | cut -d" " -f3
    ;;
    "requests")
        sed -n '3p' $CACHE | cut -d" " -f4
    ;;
    "myrequests")
        sed -n '3p' $CACHE | cut -d" " -f4
    ;;
    "reading")
        grep -Eo "Reading: +[0-9]+" $CACHE | cut -d':' -f2
    ;;
    "writing")
        grep -Eo "Writing: +[0-9]+" $CACHE | cut -d':' -f2
    ;;
    "waiting")
        grep -Eo "Waiting: +[0-9]+" $CACHE | cut -d':' -f2
    ;;
esac



10 декабря 2010 г. 14:29 пользователь Михаил Монашёв <
postmaster на softsearch.ru> написал:

> Здравствуйте, Руслан.
>
> Friday, December 10, 2010, 11:57:03 AM, Вы писали:
>
> ru> Приветствую
>
> ru> я  наблюдаю очень странную статистику nginx (статистика собирается
> ru> через status module):
>
> ru> http://pixs.ru/showimage/troublejpg_9917540_1340475.jpg
>
>
> ru> как  видно начинает резко расти количество активных подключений (и
> ru> количество  соединений  которые  чего  то  пишут),  но при этом не
> ru> растет  количество  запросов  в  секунду.  Причем в момент резкого
> ru> роста  CPU  на всех обработчиках (их у нас 3) под 100%. В принцепе
> ru> ладно  - это по идее должно означать что во время резкого роста мы
> ru> не  справляемся  с  нагрузкой,  но  не  понятно  отчего  не растет
> ru> количество запросов в секунду на Nginx?
>
> Всё  верно.  Начались какие-то тормоза. Например бэкенд начал медленее
> отдавать  ответы,  но  он  их  всёравно  отдавал в прежнем количестве,
> просто не так быстро, как ранее.
>
>
> --
>
> С уважением,
> Михаил Монашёв
> mailto:postmaster на softsearch.ru
> http://talxy.com - p2p-based online broadcasting and file sharing.
> Без бэкапа по жизни.
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено&hellip;
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20101210/61da372e/attachment-0001.html>


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