Проблема при >1500 одновременных коннектов.

Alex Vorona voron at amhost.net
Tue Feb 10 17:36:19 MSK 2009


10.02.2009 14:28, Вадим wrote:
> Artemiev Igor пишет:
>> On Tue, Feb 10, 2009 at 10:27:00AM +0300, Igor Sysoev wrote:
>>> Симптомы другие: здесь - 100% загрузка sata'шных дисков.
>> Симптомы всё те же - резкое падение отдачи по сети. C диска читается 
>> на пределе, а по сети отдаётся на порядок меньше.
>>
> Встречал подобную ситуацию:
> 20 sata винтов (1 тб.) 8 ядер, 8 гб. RAM, Linux, Samba, Nginx
> Конфигурация отдает большие файлы и отдает неплохо. Выжимали 1.5 
> гигабита (500-1000 соединений) и можно было больше, да не требовалось.
> 
> Все работает хорошо, до тех пор пока утилизация жестких дисков не 
> достигает 100%. Как только появляется популярный файл, на который 
> нападают 100-200 активных клиентов, жесткий диск, на котором он лежит - 
> умирает. При этом отдача снижается почти на порядок (в реальном случае с 
> 1.3 гбит до 200 мегабит) хоть и остальные 19 жестких дисков не нагружены.
> 
> I/O с перегруженного диска медленно => блокировки воркеров => тормоза 
> других клиентов, которые работают со свободными жесткими дисками => 
> снижение отдачи трафика. При этом load average взлетает до 100 и выше.
> 
> По-моему ничего, кроме ускорения дисковой подсистемы сделать нельзя. 
> gmirror, mdraid (raid10), популярные файлы в tmpfs, SSD (в порядке 
> увеличения предпочтения) могут помочь.
> 
> Если у кого-то есть мысли буду рад выслушать.
> 
> 

Над каждым диском свой nginx. Снаружи балансер, знающий на какой из этих nginx'ов нужно 
проксировать/редиректить любой запрос.





More information about the nginx-ru mailing list