Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> масштабирование mysql, подскажите варианты решения 
:(
    Опции темы
ch3cker
Дата 26.6.2010, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 26.6.2010

Репутация: нет
Всего: нет



Есть движок рекламной сети, который работает на одном сервере и с одной базой MySQL. За сутки в сети совершается несколько миллионов показов в связи с этим огромная нагрузка на БД и отказы сервера.

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

Имеет ли смысл использовать mysql репликацию ? 

Проблема в том что на каждую операцию чтения (выборка подходящих баннеров из базы (сложный JOIN запрос) при этом одно из условий чтобы у рекламодателя хватало денег на показ баннера) приходится операция записи (пишется лог показа этого баннера а так же вычитаются деньги с баланса рекламодателя, это делается сразу чтобы исключить ситуацию когда рекламодатель уйдет в минус)

Можно логи показа баннера и работу с балансом оформить внутренними процедурами на стороне mysql-сервера, а под относительно статичные операции чтения выделить реплики с доступом всех скриптов только на чтение.

Тогда возникает следующая проблема:
как сделать чтобы на репликах не выбирались баннеры за которые пользователь уже не сможет расплатиться. Если на мастер сервере его баланс уменьшится то пока это изменение дойдет то реплики может быть еще один показ на который на самом деле денег уже нет ?

И как быть когда ресурсов мастер сервера не хватит для операций записи ?


Подскажите пожалуйста возможные варианты решения этой проблемы, и как вообще масштабируют проекты где много операций записи ?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0390 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.