2010-07-08 14 views
12

Мне нужна была обратная связь относительно правильности моих оценок и проблем.DDS vs AMQP vs ZeroMQ

Я недавно собрал три службы распространения данных, AMQP и ZeroMQ для создания уровня передачи данных в центре обработки данных. Все три выглядят многообещающими, но в некоторых случаях я сталкивался с некоторыми проблемами блокировки.

Чтобы дать контекст, мои требования:

  1. Scale Шифрование до 500+ физических узлов, 1000+ издателей и подписчиков.
  2. Поддержка долговременной доставки сообщений, чтобы заботиться о сбоях подписчиков.
  3. Совокупная пропускная способность должна быть к северу от 1 миллиона сообщений/сек

Проблемы с AMQP:

  1. Архитектура Брокер кажется узким местом и центральной точки отказа всей установки развертывания. Я могу усложнить мое развертывание, поставив федерацию и кластер, чтобы повысить производительность и доступность ожидающих сообщений, но они по-прежнему не являются отказоустойчивыми.
  2. Производительность для прочных очередей кажется очень меньше. Мое приложение-образец может обрабатывать только сообщения 6-7K/core/queue/application.

Проблемы с ZeroMQ:

  1. Документационный, кажется, немного недоставало глубины.
  2. Поведение системы для ожидающих сообщений, похоже, вызывает проблемы в модели связи PUB/SUB. Пожалуйста, обратитесь к: How zeromq handles slow consumers with PUB/SUB mode

OpenSplice ДДСУ: я не нашел ничего недостающего в протоколе ДДСА для принятия в промышленности, за исключением. Хотелось бы узнать из первых рук обзор этого продукта с точки зрения стабильности, производительности или ограничений.

+0

Я подробно рассмотрю ваш вопрос позже, но теперь хочу предложить добавить тег «data-distribution-service» вместо «dds». Последний, похоже, был захвачен графическим программированием. –

+0

Спасибо Хольгер, обновили теги. – Kisalay

+2

Чтобы сделать связанное обсуждение ZeroMQ более утонченным: для PUB/SUB действительно существует предопределяемое ограничение для каждого абонента на размер очереди сообщений, по которому удаляются сообщения. Но есть также опция ZMQ_SWAP, с помощью которой вы можете включить обмен файлами на дисках. Quoting [1] «Тем не менее, есть выход. ØMQ предоставляет что-то, называемое >> swap <<, это файл на диске, который содержит сообщения, которые мы не можем хранить в очереди» [1] http: // zguide.zeromq.org/chapter:all – ron

ответ

12

Я удивлен, что вы обеспокоены принятием OpenSplice DDS. OpenSplice DDS сегодня развертывается в нескольких миссионерских и бизнес-критически важных системах, таких как Naval Combat Management Systems, Military Vehicles, Air Traffic Control and Management, Metro и High-Frequency Auto-Trading. Просто чтобы дать вам еще немного информации, которая должна дать вам успокоить вас w.r.t. внедрение технологии, стандарт OMG DDS (стандарт, реализованный OpenSplice DDS), был рекомендован EUROCAE для обмена планами летных данных по всем европейским центрам.

Дайте мне знать, если у вас возникнут дополнительные вопросы по поводу принятия или технологии.

-AC

+2

Да, и я смотрел код OpenSplice, и это ужасно. Кроме того, API - это большой беспорядок, и это сложный способ настройки. OpenSplice был написан людьми, которые ничего не понимают в принципах разработки программного обеспечения. И это может быть принято многими компаниями, потому что оно работает, но, конечно, не стоит идти, если вы хотите развиваться в будущее. – fonZ

1

Посмотрите на this странице. Сегодня многие отрасли и компании используют DDS.

 Смежные вопросы

  • Нет связанных вопросов^_^