Задать вопрос

Как масштабировать систему для снижения нагрузки?

Всем привет!

У нас есть сервер, на нем крутится nginx + php-fpm + mysql.
Столкнулись с проблемой: вырос трафик, выросли нагрузки.
MySQL забивается от большого количества запросов, в следствии чего в медленные запросы начали попадать даже выборки по PRIMARY KEY.

Хотелось бы понять как возможно масштабировать систему, чтобы распределить нагрузку? Какие есть способы это сделать?
Заранее спасибо.
  • Вопрос задан
  • 4610 просмотров
Подписаться 14 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
script88
@script88
Ну как минимум можно развернуть еще 1 сервер приложений и 1 сервер mysql, в nginx upstreem подключаете app сервера (php-fpm), mysql настраиваете master-master тем самым нагрузка будет распределена между сервера.
На больших нагрузках советую использовать percona server вместо msyql,
П.С. по мимо серверной инфраструктуры надо заниматься оптимизацией и самого приложения.
Ответ написан
sledopit
@sledopit
Без картины реального распраделения нагрузки (мониторинга) это будет небольшим гаданием на кофейной гуще.

Скорее всего и nginx и mysql активно кушают диск и мешают друг другу.
Имхо, первым шагом было бы логично вынести mysql на отдельный физический диск или, если этого окажется недостаточно, даже отдельный физический сервер.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы