@paurlift

Балансировщик нагрузки MySQl репликации на PHP?

Во всех мне известных фреймворках (Yii, Symfony, Zend) выбор slave сервера происходит рандомно.
Возможны ситуации когда на один slave приходит много тяжелых запросов, а на другие сервера нет никакой нагрузки.

Есть идея реализовать балансировщик нагрузки, который, например, будет опрашивать slave сервера с периодичностью раз в 10 сек и сохранять нагрузку на mysql сервера в базе.
Запросы на выборку (SELECT) отправлять не рандомно, а в зависимости от загруженности серверов.

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

Подскажите, пожалуйста, возможно все-таки есть какие-то реализации? Может кто-то писал что-то подобное и сможет подсказать алгоритм подобной реализации?
  • Вопрос задан
  • 570 просмотров
Пригласить эксперта
Ответы на вопрос 3
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
Ответ написан
Комментировать
vyachin
@vyachin
Ищу работу
Ответ написан
Комментировать
@paurlift Автор вопроса
Сейчас есть уже реализация master-slave репликации, проект с высокой нагрузкой и нет возможности добавлять proxy в существующую схему.
Используется Yii2, для него необходимо сделать компонент, который на программном уровне будет выбирать slave, а не делать это рандомно, так как есть сейчас.
Ответ написан
Ваш ответ на вопрос

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

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