Как настроить nginx и Ubuntu 11.04 для обработки приложения Rails с большим объемом трафика?

Моя настройка:

  • один экземпляр EC2 m1.large (4ECU, 2 ядра, 7,5 ГБ ОЗУ)
  • Рельсы
  • Ubuntu 11.04 Natty
  • nginx (v1.05) и Passenger (v3.011)
  • MySQL 5.1.57, работающий на экземпляре Amazon RDS

Я ожидаю, что мой сайт получит много трафика большими пакетами, и я хочу максимально увеличить шансы, что сервер сможет справиться с этим. Раньше меня сжигали такие вещи, как ошибка "Слишком много открытых файлов" и т. Д.

К сожалению, я полностью системный администратор, поэтому не знаю основных параметров конфигурации, необходимых для обработки большого количества трафика. Любые советы будут полезны!

1 ответ

Решение

Можете ли вы рассказать больше о вашем приложении. Как бэкэнд, какой трафик вы ожидаете и т. Д.

В общем, многое можно сделать. Я даю общее представление о том, что можно сделать. Этот следующий список ни в коем случае не является исчерпывающим.

1) Вы должны иметь четкое представление о том, как ваша система реагирует на нагрузку. Использование таких инструментов, как Jmeter, может показать время отклика под нагрузкой.

2) Вы уже используете EC2. Это должно помочь вам легко масштабироваться, если вы получаете "большие всплески". Использование автоматического масштабирования amazon и инструмента управления конфигурацией, такого как Puppet/Chef, может помочь вам масштабировать горизонтально.

3) Начиная с 1), вы можете настроить определенные виды настроек экземпляров, которые вам понадобятся в EC2 для достижения оптимальной производительности.

4) Tweaking Open Files., Укрепление ОС. И т. Д., Как предполагается, будут приняты меры.

Другие вопросы по тегам