Re: Нагрузочное тестирование и cpu affinity

Igor Sysoev igor at sysoev.ru
Thu Aug 30 13:27:35 UTC 2012


On Aug 30, 2012, at 17:05 , DSmirnov wrote:

> Доброго времени суток!
> 
> Тестирую новую сборку nginx 1.2.3 на нагрузку. Боевые IPVS кластера сервера
> на другой версии.
> Даю нагрузку с балансировщиков на тестовый сервер с 1.2.3.
> Наблюдаю следующую картину:
> 
> Сервер нагружен так:
> ESTABLISHED or CLOSE-WAIT Cur: 193.19 kcps
> Packets per second: 69.29 kpkt/sec
> Bits per second: 108.46 Mbits/sec in, 119.26 Mbits/sec out
> 
> Что вызывает вопросы:
> 
> 1. Если я четко указываю ( в машине 2 ксеона по 6 ядер ) worker_cpu_affinity
> 000001 000010 000100 001000 010000 000111 000011 000101 001001 000110 010010
> 010001; и worker_processes  12; - сразу нагрузка падает только на первые 6
> ядер, остальные стоят незагруженные, а если я выключаю cpu_affinity -
> нагрузка распределяется на все ядра, НО нелинейно (!) первые нагружены
> больше, чем последние геометрически - вот сейчас нагруз первых - 55-60,
> последних 30-40 ...
> 
> 2. Вылезает в dmesg: TCP: too many of orphaned sockets и Out of socket
> memory, хотя активной памяти занято 4396Мб, а зарезирвировано 22230Мб, при
> этом:
> [root at vm2 ~]# cat /proc/net/sockstat 
> sockets: used 190237
> TCP: inuse 254068 orphan 64009 tw 76621 alloc 254073 mem 170885
> UDP: inuse 4 mem 1
> UDPLITE: inuse 0
> RAW: inuse 0
> FRAG: inuse 0 memory 0
> 
> Если у кого-то есть наметки по решению данных вопросов, буду очень
> благодарен за ответы в ветке.
> Неравномерное использование процессоров и нехватка памяти на сокеты для меня
> очень критична .... да и с орфанами непонятно.

Попробуйте поставить

events {
    ...
    accept_mutex  off;
}


--
Igor Sysoev



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