Корпоративная система обмена сообщениями
Эта статья нуждается в дополнительных цитатах для проверки . ( сентябрь 2010 г. ) |
Корпоративная система обмена сообщениями ( EMS ) или краткое описание системы обмена сообщениями [1] представляет собой набор опубликованных общекорпоративных стандартов, которые позволяют организациям отправлять семантически точные сообщения между компьютерными системами. Системы EMS продвигают слабосвязанные архитектуры, которые позволяют изменениям форматов сообщений оказывать минимальное влияние на подписчиков сообщений. Системы EMS упрощаются за счет использования структурированных сообщений (например, с использованием XML или JSON ) и соответствующих протоколов, таких как DDS , MSMQ , AMQP или SOAP с веб-сервисами .
EMS обычно принимает во внимание следующие соображения:
- Безопасность : сообщения должны быть зашифрованы, если они передаются через общедоступные интерфейсы. Сообщения должны быть аутентифицированы или иметь цифровую подпись, если получатель хочет быть уверен, что сообщения не были подделаны при передаче.
- Маршрутизация . Сообщения должны эффективно маршрутизироваться от отправителя к получателю. Промежуточным узлам может потребоваться маршрутизация сообщений, если тело сообщения зашифровано.
- Метаданные : Тело документа содержит информацию, которую необходимо однозначно интерпретировать. Реестры метаданных следует использовать для создания точных определений для каждого элемента данных.
- Подписка : Системы должны иметь возможность подписаться на все сообщения, соответствующие определенному шаблону. Сообщения с определенным содержанием могут маршрутизироваться по-разному. Например, некоторые сообщения могут иметь разные политики приоритета или безопасности.
- Политика : корпоративные системы обмена сообщениями должны учитывать централизованную политику сообщений, например, какие классы или роли пользователей могут получать доступ к различным полям любого сообщения.
EMS также известна как промежуточное программное обеспечение, ориентированное на сообщения (MOM). [2]
Разделение заголовка и тела сообщения
[ редактировать ]Проект EMS обычно разбивается на две части:
- Дизайн заголовка сообщения . Заголовки сообщений содержат информацию, необходимую для маршрутизации сообщений. Заголовки сообщений обычно кодируются открытым текстом, чтобы промежуточные узлы получали всю необходимую информацию, необходимую для маршрутизации и определения приоритета сообщения. Заголовки сообщений аналогичны информации, напечатанной на внешней стороне письма (кому, от, приоритет сообщения и т. д.).
- Семантика тела сообщения . Семантика тела сообщения включает точное определение всех элементов данных в теле сообщения. сообщения Семантика может быть улучшена за счет использования точного словаря данных, документирующего метаданные .
Сравнения
[ редактировать ]Сходства между системами обмена сообщениями (с точки зрения возможностей и архитектуры) были отражены независимым от платформы способом в виде шаблонов корпоративной интеграции (также известных как шаблоны обмена сообщениями) . [3]
Хотя EMS по своей концепции похожа на корпоративную сервисную шину (ESB), EMS делает упор на разработку протоколов обмена сообщениями (например, с использованием DDS, MSMQ или AMQP), а не на реализацию сервисов с использованием конкретной технологии, такой как веб-сервисы , DDS. API для C/C++ и Java, .NET или службы сообщений Java (JMS).
Обратите внимание, что корпоративную систему обмена сообщениями не следует путать с системой электронной почты , используемой для доставки удобочитаемых текстовых сообщений отдельным людям.
Примером конкретного интерфейса прикладного программирования (API), реализующего корпоративную систему обмена сообщениями, является служба сообщений Java . Хотя это API, он воплощает в себе многие из тех же проблем, которые возникают при настройке полноценной EMS.
Заявления политики также могут быть извлечены с централизованного сервера политики. Эти заявления политики могут быть выражены на языке разметки управления доступом XML (XACML).
См. также
[ редактировать ]- Шаблоны корпоративной интеграции
- Программирование, управляемое событиями
- SOA, управляемая событиями
- Промежуточное программное обеспечение, ориентированное на сообщения
- Сервис-ориентированная архитектура
Ссылки
[ редактировать ]- ^ Г. Хохпе. Б. Вульф, «Модели корпоративной интеграции», Эддисон Уэсли, 2004 г.
- ^ Карри, Эдвард. 2004. «Промежуточное программное обеспечение, ориентированное на сообщения». [ постоянная мертвая ссылка ] . В книге «Промежуточное программное обеспечение для коммуникаций» под ред. Кусай Х. Махмуд, 1–28. Чичестер, Англия: Джон Уайли и сыновья. два : 10.1002/0470862084.ch1 . ISBN 978-0-470-86206-3 ]
- ^ Олаф Циммерманн; Чезаре Паутассо; Грегор Хохпе; Бобби Вульф (2016). «Десятилетие шаблонов корпоративной интеграции: разговор с авторами» . Программное обеспечение IEEE . 33 (1): 13–19. дои : 10.1109/MS.2016.11 .