Выбор библиотеки связи для распределенного приложения - PullRequest
3 голосов
/ 03 января 2012

Я начал разрабатывать распределенное приложение, и у нас большая дилемма!Нам нужна коммуникационная библиотека, простая в использовании и обладающая следующими функциями:

  • надежная связь
  • группы / каналы
  • одноадресная рассылка
  • многоадресная рассылка
  • автообнаружение
  • безопасность
  • поддерживается несколькими языками программирования
  • поддерживается несколькими операционными системами
  • поддержка географического распределения является плюсом

Несколько слов об этом приложении

Основная идея этого распределенного проекта состоит в том, чтобы иметь внешний интерфейс, серверную часть (приложение обработки) и сотни агентов, которые будут собирать данные из некоторых центров обработки данных.Связь между агентами и бэкэндом должна быть максимально простой, у нас должна быть возможность отправить конфигурацию или получить данные в режиме реального времени от агентов.Требуется минимальная безопасность транспорта между агентами и бэкэндом.Также у нас должна быть возможность добавлять / удалять новые узлы в backend кластере live.Если количество узлов внутреннего кластера изменяется, агенты должны перераспределить свою нагрузку (вероятно, это должно быть сделано путем фильтрации через сервер).Обычно сообщения (между агентами и бэкэндом) не превышают 1500 байт, но время от времени мы должны иметь возможность отправлять большие пакеты (необходимо хорошее управление фрагментацией).

То, что мы нашли до сих пор:

  • jGroups
  • Спред
  • openpgm
  • zeromq
  • Hazelcast

Если у вас есть опыт разработки приложений кластеризации, пожалуйста, дайте мне знать, какая из вышеперечисленных платформ подходит для моего проекта?Также, если вы знаете другие бесплатные библиотеки, которые подходят для моего проекта и не перечислены выше, пожалуйста, дайте мне знать!

Ответы [ 3 ]

2 голосов
/ 12 января 2012

Я очень рекомендую ZeroMQ.Также взгляните на Heartbeat, уровень обмена сообщениями кластера в Linux-HA.http://linux -ha.org / вики / Heartbeat

1 голос
/ 12 января 2012

Эта запись является самой последней и полной оценкой, которую я видел по этой теме. Также проверьте ураган

0 голосов
/ 06 января 2012

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

Я обнаружил бесплатную библиотеку, которая, кажется, может быть вам полезна, она создана Google и называется Protocol Buffers . Он специально разработан для использования в среде, не зависящей от языка, платформы и в производстве протоколов связи.

Существует также множество сторонних реализаций RPC , которые работают с форматом протокольных буферов.

Надеюсь, это полезно.

...