zmitrok62
@zmitrok62
Очень хороший человек

Как эффективно построить инфраструктуру для веб сервиса с периодическим «хайлодом»?

Хайлод указан в кавычках....
В общем есть новостной ресурс, развернут на одном мощном сервере. PgSQL, nginx, php-fpm и все стандартно как у всех.
Иногда прибегает около 5000 активных юзеров, и LA улетает в потолок из-за PHP. Про оптимизацию рассказывать не надо, что могли уже сделали или тратить время на это не хотим.
Хочется в момент большой посещаемости быстро вводить в строй дополнительные ресурсы. Либо это будет вертикальное масштабирование (сервак с php-fpm например), либо какие-то серверы с максимальным содержанием кеша.
Подскажите в какую сторону смотреть?
  • Вопрос задан
  • 501 просмотр
Решения вопроса 1
Wolfnsex
@Wolfnsex Куратор тега PHP
Если не хочешь быть первым - не вставай в очередь!
Вариант 1. Использовать Varnish, для ресурсов формата "новостник", по моему идеальное решение (в версии 5.0 в зачаточном состоянии появилась поддержка HTTPv2/SSL, судя по ChangeLog).

Вариант 2. Использовать Nginx + балансировку нагрузки.

Вариант 3. По быстрому склепать или арендовать облако, где бы ресурсы выделялись динамически, по наиболее оптимальным для Вас алгоритмам.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Во время HL, всем "не юзерам"/гостям/читателям (кому не нужно изменять данные на сервере) - отдавайте кэшированные страницы, юзерам - как обычно.
Ответ написан
Комментировать
@Antoha1787
Хорошими кешами можно оптимизировать нагрузку даже на магазинах и сервисах, а на новостнике вы, скорее всего, вообще до 90-99% пиковых нагрузок можете убрать.

Для этого подключите сайт к CDN от WSR, т.к. они кеширует динамический контент тоже.

Проще говоря - один пользователь запросит страницу с хостинга и она попадет в кеш их CDN, остальные получат ее уже заранее готовой без очередной генерации CMSкой. Соответственно нагрузка на сервер уже не идет.
Для редакторов; авторизованных, комментирующих и прочих "нестандартных" посетителей кеш страниц автоматически выключается, поэтому функционал не страдает.
При появлении статей или комментариев кеш сбрасывается, поэтому сам по себе тоже никак не мешает.

А если этого когда-нибудь перестанет хватать, то прямо на уровне CDN можете отбалансировать нагрузку, начав посылать запросы на несколько серверов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
20 апр. 2024, в 09:15
8000 руб./за проект
20 апр. 2024, в 08:39
100000 руб./за проект
20 апр. 2024, в 08:24
1500 руб./за проект