ПРОЕКТЫ 


  АРХИВ 


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]

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


  • To: apache-talk@xxxxxxxxxxxxx
  • Subject: [apache-talk] прошу помощи в performance tuning
  • From: Alex Petrov <petro83@xxxxx>
  • Date: Sun, 16 Jan 2005 21:46:32 +0300
  • Content-length: 1697

Привет.

Прошу помощи в 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?

AP



 




Copyright © Lexa Software, 1996-2009.