ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] прошу помо щи в performance tuning




Kpoxa KpoIIIkin пишет:
Alex Petrov пишет:


Привет.

Прошу помощи в performance tuning.

Есть сервер с архивом больших файлов, которые раздаются по http с помощью nginx. Среднее количество сессий - 1000-1200. Уникальных хостов - около 300. Общий output - 50-60Mbps.

Чего хочется: поднять output до максимума, то есть до ~100Mbps.

Мы уверены, что текущие 50-60 не предел, потому что, во-первых, эта цифра не зависит от времени суток, во-вторых, если рядом поставить еще один такой же сервер в round-robin, он тоже нагружается до 60Mbps практически мгновенно.

Проблема в том, что у нас кончились серверы :) Нужно как-то доутилизировать оставшиеся 40 мегабит на существующих серверах для увеличения общего output.

Система - linux debian 3.1, kernel 2.6.8, P4 1.8Ghz, 1G RAM, 2x250 SATA.

Что уже было сделано:

1. Диски (SATA) переведены в software raid0;
2. Увеличены output buffers, включены bic tcp, sack;
3. В nginx используется epoll() и sendfile().

Судя по top и vmstat, система проводит 80% времени в ожидании завершения чтения с дисков, но нет идей, что еще можно сделать в смысле оптимизации дисковой подсистемы.

Что бы вы сделали в этой ситуации? Посоветуйте чего-нибудь, пожалуйста.

Идея, которая вызывает сейчас наибольшую надежду - ограничить количество одновременных сессий, чтобы вандалы не открывали по 50 мелких сегментов одного файла, что, по ощущениям, сильно грузит диски. Кстати, при старте nginx output скачком вырастает до 100Mbps, чтобы потом плавно опуститься до обычных значений.

Идеи, которые мы еще проверим:

1. Перейдем на монолитный kernel;
2. Поменяем software raid на hardware raid;
3. Добавим памяти в серверы.

Кстати, может быть посоветуете raid-контроллер для SATA, который работает под 2.6.x?



3ware, по моему опыту это один из самых удачный вариантов для IDE или SATA дисков, разумеется SCSI это быстрее, и быстрее намного.

НИ В КОЕМ СЛУЧАЕ НЕ 3WARE!!! Мы на их SATA RAID очень сильно накололись. :( 3 их платы отказались работать на двух материнках Supermicro (на одной работали только в режиме PCI33, на другой вообще не подключиль что мы ни делали). При этом аналогичные Adaptec SATA RAID завелись с полпинка (цена их практически такая-же как и у 3ware). Сейчас я 3ware занес в свой личный "черный список" и вам советую.



 




Copyright © Lexa Software, 1996-2009.