Вчера у меня была огромная нагрузка на мои серверы, и, даже если я раньше работал над оптимизацией производительности (у меня была похожая проблема около 2 месяцев назад), мои серверы не могли справиться с нагрузкой (у меня есть служба, котораяоколо 50 созданий учетных записей в минуту).
Наконец, мои серверы обрабатывали нагрузку, потому что я изменил экземпляры: я нахожусь на Amazon EC2, и я использовал балансировщик нагрузки с 20 микроэлементами.Этого было недостаточно.Я наконец изменился на 10 больших экземпляров, и это было нормально.Но, вы знаете, большие экземпляры являются довольно дорогими, и я не могу позволить себе иметь так много больших экземпляров (сейчас, поскольку нагрузка меньше, у меня «работает» только 5 больших экземпляров, но это тоже слишком много).
Итак, я все еще работаю над оптимизацией и настройкой сервера, но я застрял на точке.
Пока что я использую Symfony с memcached.Он работает нормально, все, что должно быть кэшировано, кэшируется и т. Д.
Теперь я хочу добавить Varnish перед моим веб-сервером apache.
Я сделал это и настроил его- Я думаю - хорошо, и это работает сейчас.Проблема в том, что в кэш-памяти нет попаданий.
Из того, что я видел, проблема в том, что HTTP-заголовки, отправляемые Symfony, установлены неправильно.Например, для кэшированного запроса у меня есть следующие заголовки:
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Модуль правильно настроен для использования кэша и т. Д., Но я просто не могу найти, где я могу установить правильные заголовки HTTP,Я знаю, как установить заголовок кэша в Symfony для конкретного действия, но ясно, что я не хочу делать это при каждом действии (кстати, даже если я это сделал, я думаю, что это не правильный путь).
Поэтому я спрашиваю, как я могу использовать Varnish с Symfony 1.4. Из того, что я видел, есть две возможности:
- Я правильно установил заголовки HTTP, отправленные Symfony
- Я настраиваю Varnish для правильной обработки заголовков HTTP по умолчанию, отправляемых symfony
Знаете ли вы, как можно устранить одну из проблем?
Спасибо,
Примечание: я нахожусь на Лаке 3