Показать сообщение отдельно
Старый 24.07.2007, 14:20
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 14  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
Тут недавно решили эту проблему. Поскольку проблема популярная, решил отписаться.
Решение: Дефайним имя мастер-локал-конекшна (держателя коннекшна с сервером) и при создании инстанса класса делаем LC.connect(master_name). Если получаем тру - значит теперь мы - мастер. Если фолс - значит криейтим slave с рандомным именем. После чего выполняем ключевую фичу - slave.send(master_name, 'register_on_master', my_slave_name). И включаем этого слейва в список слушателей на мастере. После чего остается только периодически чекать мастера тем же способом, а на мастере - отрубать умерших клиентов, которые вовремя не отметились. Аккуратно и незатратно.
Всем привет -)
__________________
#define true false //счастливой отладки, друзья