Welcome! Log In Create A New Profile

Advanced

Зависание nginx из-за memcached

May 23, 2016 03:19AM
Здравствуйте

У нас 5 nginx, которые соединены с 2мя memcached. После того как на memcached случился
segfault at 24 ip
000000000040dda0 sp 00007ff13d03cc10 error 4 in memcached[400000+16000];

каждый nginx worker (по настройке их 8 на каждом nginx) начинает утилизировать 100% ядра CPU, вызывая "зависание" процессов nginx на всех серверах. Когда подняли сбойнувший memcached с помощью monit, то ситуация не изменилась. Пришлось убить все nginx и снова поднять. После этого, все заработало как до segfault.


Версия nginx: 1.4.2
Версия memcached: 1.4.10
ОС: CentOS 6.5

Настройки memcached в nginx:
upstream memcached_screenshots {
server 127.0.0.1:11211;
hash $uri;
keepalive 512;
}
memcached_connect_timeout 60s;
memcached_read_timeout 60s;
memcached_send_timeout 60s;

Запуск memcached:
memcached -d -p 11211 -u memcached -m 16384 -c 1024 -P /var/run/memcached/memcached.pid -t 2

Настройки nginx workers:
worker_processes 8;
timer_resolution 100ms;
worker_rlimit_nofile 50000;
worker_priority -5;

events {
worker_connections 100000;
use epoll;
}

Как я понимаю, segfault является следствием количества evictions в memcached (200-2000) перед моментом остановки процесса (возможно баг в процессе дефрагментации у memcached), и т.к. задан timeout, видимо, относительно большой в 60 секунд, то те запросы, которые приходили на nginx, скапливались в некоторой очереди в ожидании получения соединения, а каждый worker ходил по этой очереди и проверял для каждого запроса, имеется ли возможность соединиться с memcached или нет. Ну + к этому, возможно, когда случился segfault сокет не отдался ОС (достоверно неизвестно на данный момент, после segfault убился процесс memcached или нет). Видимо, уменьшение connect|read|write timeout должно решить проблему. Но так ли это ?

Подскажите, пожалуйста, как если не устранить проблему, то уменьшить возможность ее появления в ближайшем будущем. И является ли это проблемой nginx (возможно, у клиента старая версия nginx и стоит обновиться до 1.10) или все-таки проблема в конфигурации (что то нужно убрать, что то добавить) ?
Subject Author Posted

Зависание nginx из-за memcached

Vadim Osipov May 23, 2016 03:19AM

Re: Зависание nginx из-за memcached

Михаил Монашёв May 23, 2016 06:50AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 23, 2016 07:40AM

Re: Зависание nginx из-за memcached

Михаил Монашёв May 23, 2016 08:06AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 23, 2016 09:16AM

Re: Зависание nginx из-за memcached

Vadim A. Misbakh-Soloviov May 23, 2016 10:36AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 23, 2016 11:01AM

Re: Зависание nginx из-за memcached

kpoxa May 23, 2016 12:02PM

Re: Зависание nginx из-за memcached

Yuriy Medvedev May 23, 2016 12:14PM

Re: Зависание nginx из-за memcached

Vadim Osipov May 24, 2016 03:27AM

Re: Зависание nginx из-за memcached

Yuriy Medvedev May 24, 2016 04:24AM

Re: Зависание nginx из-за memcached

Yuriy Medvedev May 24, 2016 04:24AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 24, 2016 10:52AM

Re: Зависание nginx из-за memcached

Михаил Монашёв May 24, 2016 04:52AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 24, 2016 11:22AM

Re: Зависание nginx из-за memcached

Илья Шипицин May 23, 2016 09:34AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 23, 2016 10:59AM

Re: Зависание nginx из-за memcached

Илья Шипицин May 23, 2016 01:08PM

Re: Зависание nginx из-за memcached

Vadim Osipov May 24, 2016 03:22AM

Re: Зависание nginx из-за memcached

Илья Шипицин May 24, 2016 07:12AM

Re: Зависание nginx из-за memcached

Vadim A. Misbakh-Soloviov May 24, 2016 08:36AM

Re: Зависание nginx из-за memcached

Илья Шипицин May 24, 2016 09:14AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 25, 2016 06:28AM

Re: Зависание nginx из-за memcached

Илья Шипицин May 25, 2016 10:28AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 26, 2016 08:04AM

Re: Зависание nginx из-за memcached

Валентин Бартенев May 26, 2016 08:22AM

Re: Зависание nginx из-за memcached

Vasiliy Tolstov May 26, 2016 09:58AM

Re: Зависание nginx из-за memcached

kemko May 26, 2016 11:12AM

Re: Зависание nginx из-за memcached

Валентин Бартенев May 26, 2016 11:32AM

Re: Зависание nginx из-за memcached

Валентин Бартенев May 24, 2016 10:58AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 25, 2016 04:39AM

Re: Зависание nginx из-за memcached

Валентин Бартенев May 25, 2016 05:10AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 25, 2016 06:42AM

Re: Зависание nginx из-за memcached

Валентин Бартенев May 25, 2016 07:28AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 26, 2016 06:18AM

Re: Зависание nginx из-за memcached

denis May 25, 2016 08:30AM

Несколько доменов с SSL

kpoxa May 25, 2016 10:36AM

Re: Несколько доменов с SSL

russjura May 25, 2016 11:02AM

Re: Несколько доменов с SSL

kpoxa May 25, 2016 12:24PM

Re: Несколько доменов с SSL

Илья Шипицин May 25, 2016 12:58PM

Re: Зависание nginx из-за memcached

Vadim Osipov May 26, 2016 06:16AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 26, 2016 06:24AM

Re: Зависание nginx из-за memcached

Валентин Бартенев May 26, 2016 06:30AM

Re: Зависание nginx из-за memcached

Vadim Osipov May 26, 2016 08:11AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 235
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready