SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 10.09.2009 00:16:41

avonavi
Участник
Зарегистрирован: 06.09.2009
Сообщений: 5

Распределение нагрузки. Как узнать кто свободен

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

Неактивен

 

#2 10.09.2009 14:35:54

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: Распределение нагрузки. Как узнать кто свободен

Обычно хватает тривиального round robin между репликами, но можете, например, смотреть
la машинки или даже выполнять show processlist

Неактивен

 

#3 10.09.2009 15:48:48

avonavi
Участник
Зарегистрирован: 06.09.2009
Сообщений: 5

Re: Распределение нагрузки. Как узнать кто свободен

Вариант 1 скорее всего не будет оптимальным т.к. 1 запрос клиента порождает от 100 до 1500 запросов к БД, а на мастере идет еще и загрузка данных. Реплика также может быть загружена задачей анализа БД (болше суток напряженных раздумий), поэтому вешать в этот момент запросы на нее не логично...
Что такое "la машинки" не понял, прошу пояснить
show processlist тоже в данном случае, наверное, не покажет реальную картину

Хотелось бы использовать что-то на подобии ping-а, но к БД и по минимальному времени ответа определять менее занятый сервер

Неактивен

 

#4 10.09.2009 16:23:30

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: Распределение нагрузки. Как узнать кто свободен

aquatica:~$ uptime
16:31:07 up  3:22,  4 users,  load average: 0.17, 0.24, 0.26
                                                               ^^^^

Вот эта чиселка — LA

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson