Приложение получило печать, затем серверы стали собственностью. Я добавил еще 8 серверов, все еще слишком медленно

Наше новое приложение сегодня получило большое количество прессы и получало тысячи новых пользователей каждый час... но оно стало настолько медленным, что его невозможно использовать.

Мы используем Rails 3, обновленный до последних версий: Ubuntu, Unicorn, nginx, postgresql, memcache.

Я уже добавил 8 новых серверов, и это почти ничего не изменило. Я также попытался установить значение keepalive nginx равным 1. Кроме добавления большего количества серверов, я не знаю, что делать, чтобы улучшить время отклика. У меня есть 10 рабочих единорога, работающих на сервере. Кажется, проблема в том, что очередь запросов слишком длинна на каждом сервере. Я могу ошибаться по этому поводу, я не совсем уверен, что является причиной этого, я просто знаю, что вчера он работал отлично при 2% от текущей нагрузки.

Любая помощь с благодарностью

2 ответа

Когда приложение закрывается, обычно в краткосрочной перспективе нужно сделать только одно. Кидай деньги на проблему. Также известный как продолжать добавлять серверы.

В среднесрочной перспективе настройте и настройте параметры.

В долгосрочной перспективе исправьте весь этот дрянной код, который не нужно было исправлять раньше. Пришло время погасить этот технический долг.

Если ваше приложение уже правильно выполняет кэширование заголовков (т. Е. Динамические страницы, которые часто посещаются и редко обновляются, получают заданные заголовки кэширования), размещение Varnish перед веб-сервером может творить чудеса.

(На одном из моих сайтов мы получили увеличение производительности примерно в 10 раз, потому что 90% посетителей сайта доступны только для чтения, и они не возражают против просмотра 10-минутных кэшированных версий динамических страниц)

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