Как работает кластер finagle kestrel

В нем говорится, что мы можем использовать finagle ServerSet с Zookeeper для создания кластера.

  1. Должен ли я использовать сервер сборки finagle для запуска кластера пустельги? Или кластер может быть построен только с клиентом finagle.
  2. Какой алгоритм распределения очереди в кластере?

1 ответ

Решение

1 Нам нужно использовать пустельгу в качестве библиотеки вместо запуска оригинальной пустельги. Код серверной базы на основе библиотеки finagle.

Мы можем использовать ServerSet на стороне клиента для ссылки на кластер kestrel, зарегистрированный в ZooKeeper.

https://github.com/robey/kestrel/blob/master/docs/guide.md

На стороне сервера kestrel, если задано необязательное поле zookeeper в KestrelConfig, kestrel попытается использовать данную конфигурацию для присоединения к логическому набору серверов kestrel. Хост ZooKeeper, порт и другие параметры подключения описаны здесь: ZooKeeperBuilder

Серверы Kestrel присоединяются к 0, 1 или 2 наборам серверов в зависимости от их текущего статуса.

2 Отправитель сообщения собирается отправить сообщение на один случайно выбранный сервер пустельги. Получатель сообщения будет прослушивать все серверы kestrel и получать уведомление, когда любой сервер kestrel получил сообщение. Таким образом, одна и та же очередь распределяется по всему серверу и без алгоритмов.

Другие вопросы по тегам