Re[9]: очень много клиентов

Anton Maksimenkov engineer at hlebprom.ru
Sat Feb 18 17:35:43 MSK 2006


Hi, Igor.

>>> Для картинок можно вычислять root и отдавать их nginx'ом:
>>>      location  ~* \.(gif|jpe?g|png)$ {
>>>          вычисление рута, исходя из $http_host
>>>      }
>> Ок, я так сделал. Картинки отдаются nginx'ом путем приведенного выше
>> блока, а остальное проксируется на апач. Результат опять плачевный:

Кстати говоря, "делается" это, преодолевая следующий глюк: если
сделать так
location ~* \.(gif|jpe?g|png)$ {
        if ($http_host ~* ^(.+)\.domen\.ru.*$) {
                set $rootdir    /var/www/domen.ru/$1/;
        }
        root    $rootdir;
}
то nginx будет пытаться взять файлы типа
/var/nginx/var/www/domen.ru/vasya/...
^^^^^^^^^^
Если поставить ещё один слэш
        root    /$rootdir;
                ^
то будет //var/www/domen.ru/vasya/..., то  есть работает. Но глючок
есть :-)

И ещё. Почему то такая батва наблюдалась когда НА ЛЮБОМ из описанных
серверов стояло root $rootdir; (без слэша). То есть на одном из них
стоит без слэша, а на другом со слэшом, но всё равно на нём глюк есть.
МОЖЕТ БЫТЬ это было и потому что не успел перезапуститься nginx (по
сигналу -HUP делал), когда я поставил слэш. Но после 15-20 секунд я
подключался, глюк был. После того как НА ВСЕХ ОСТАЛЬНЫХ server{}
поставил слэш, заработало...


>> на большом трафике задержки. Тормоза, потом появляется страничка,
>> потом картинки с большими задержками постепенно отдаются. Иногда
> Судя по top, nginx'ы блокируются на диске. Нужно уменьшить worker_processes
> до 1, а потом постепенно увеличивать и смотреть на трафик.

с 1-м периодически пролетает:
[crit] 6711#0: accept() failed (53: Software caused connection abort)
while accepting new connection on X.X.X.X:80

 Довел до 4-х и worker_connections  до 8192;, всё равно crit
возникают, хотя реже.
 Я добавил worker_connections  8192; (хотя параметр и не описан) потому
что предположил, что он задает кол-во одновременно обслуживаемых
подключений... Но не уверен.

 Поэтому прошу разъяснить в общих словах, из каких соображений
настраивать и чего ожидать от worker_processes и worker_connections.

-- 
engineer






More information about the nginx-ru mailing list