Могут ли несколько серверов gearman использовать одну и ту же очередь libdrizzle?
Могут ли несколько серверов gearman совместно использовать одну и ту же очередь gearman через libdrizzle?
Мне интересно, исключит ли это сервер Gearman в качестве единой точки отказа - если у меня несколько веб-узлов, каждый из которых взаимодействует с одним и тем же сервером Gearman, сайт умирает, если GearM становится недоступным. Однако если на каждом из веб-узлов работает собственный сервер Gearman (и задания, созданные этим узлом, ставятся в очередь на сервере GearM, работающем на том же узле), то единственная точка отказа перемещается в базу данных. (В любом случае, в нашей архитектуре это единственная точка отказа).
1 ответ
Нет. Очередь используется только в качестве резервной копии в случае сбоя очереди в памяти (если Gearman умрет, задания все равно будут сохранены в базе данных). Постоянная очередь читается только при запуске, а не во время обработки задания.
Это не означает, что вы не можете иметь два сервера Gearman и добавлять оба сервера к своим клиентам и работникам (чтобы работники регистрировались на обоих серверах) и таким образом иметь избыточность. Я не могу сказать, что у меня недавно был сервер Gearman, но в любом случае вы получите дополнительный уровень отказоустойчивости.