WS-ReliableMessaging
WS-ReliableMessaging описывает протокол, который позволяет SOAP сообщения надежно доставлять между распределенными приложениями при наличии сбоев программного компонента, системы или сети.
Первоначальная спецификация была написана BEA Systems , Microsoft , IBM и Tibco в марте 2003 года и впоследствии дорабатывалась в течение следующих двух лет. Версия за февраль 2005 г. была представлена Техническому комитету OASIS Web Services Reliable Exchange (WS-RX) в июне того же года. Полученная в результате версия WS-ReliableMessaging 1.1 была утверждена в качестве стандарта OASIS 14 июня 2007 г., а версия 1.2 — 2 февраля 2009 г.
До WS-ReliableMessaging OASIS разработала конкурирующий стандарт ( WS-Reliability ), который поддерживался коалицией поставщиков; а именно Fujitsu , Hitachi , NEC , Oracle Corporation , Progress Software и Sun Microsystems . Большинство этих поставщиков теперь также поддерживают спецификацию WS-ReliableMessaging.
Надежная модель обмена сообщениями
[ редактировать ]
Источник приложения (AS) желает надежно отправлять сообщения в пункт назначения приложения (AD) через ненадежную инфраструктуру. Для этого они используют надежный источник сообщений (RMS) и надежный пункт назначения сообщений (RMD). AS отправляет сообщение RMS. RMS использует протокол WS-ReliableMessaging (WS-RM) для передачи сообщения на RMD. RMD доставляет сообщение AD. Если RMS по какой-либо причине не может передать сообщение на RMD, он должен вызвать исключение или иным образом указать AS, что сообщение не было передано. AS и RMS могут быть реализованы в одном пространстве процессов или представлять собой отдельные компоненты. Аналогичным образом, AD и RMD могут существовать в одном пространстве процесса или быть отдельными компонентами.
Важно помнить, что спецификация WS-RM касается только содержимого и поведения сообщений в том виде, в котором они появляются «в сети». Как сообщения отправляются из AS в RMS, как они доставляются из RMD в AD, сохраняются ли сообщения на диске или в памяти и т. д.; ни одно из этих соображений не является частью спецификации WS-RM.
Протокол WS-RM определяет и поддерживает ряд гарантий доставки. Это:
- По крайней мереOnce
- Каждое сообщение будет доставлено в AD хотя бы один раз. Если сообщение не может быть доставлено, RMS и/или RMD должны выдать ошибку. Сообщения могут доставляться в AD более одного раза (т. е. AD может получать дублирующиеся сообщения).
- AtMostOnce
- Каждое сообщение будет доставлено в AD не более одного раза. Сообщения могут не доставляться в AD, но AD никогда не получит дубликатов сообщений.
- ExactlyOnce
- Каждое сообщение будет доставлено в AD ровно один раз. Если сообщение не может быть доставлено, RMS и/или RMD должны выдать ошибку. AD никогда не получит дубликатов сообщений.
- Чтобы
- Сообщения будут доставляться от RMD к AD в том порядке, в котором они отправляются от AS к RMS. Эта гарантия может быть объединена с любой из вышеперечисленных гарантий.
Сборная архитектура
[ редактировать ]WS-ReliableMessaging использует модель расширяемости SOAP и WSDL . WS-ReliableMessaging не определяет все функции, необходимые для полноценного решения для обмена сообщениями. WS-ReliableMessaging — это строительный блок, который используется вместе с другими спецификациями веб-служб и протоколами для конкретных приложений для создания комплексного решения для обмена сообщениями.
Критика
[ редактировать ]В этой статье делается попытка доказать, что надежность необходима не на уровне сообщений, а на уровне бизнеса.
История
[ редактировать ]- WS-ReliableMessaging 200303, автор: BEA, IBM, Microsoft и Tibco.
- WS-ReliableMessaging 200403. Архивировано 17 мая 2008 г. на Wayback Machine, автор: BEA, IBM, Microsoft и Tibco.
- WS-ReliableMessaging 200502, автор: BEA, IBM, Microsoft и Tibco. Эта версия спецификации была реализована рядом поставщиков и проектов с открытым исходным кодом. Иногда его называют «WS-ReliableMessaging 1.0» или «WS-RM 1.0».
- Эта спецификация и сопутствующая ей политика WS-RM 200502 были представлены Техническому комитету OASIS по надежному обмену веб-службами (WS-RX) для стандартизации в июне 2005 года.
- WS-ReliableMessaging 1.1 является продуктом вышеупомянутого WS-RX TC. Он сопровождается спецификациями WS-RM Policy 1.1 и WS-MakeConnection 1.0 .
- Все три спецификации были утверждены в качестве стандартов OASIS 14 июня 2007 г.
- WS-ReliableMessaging 1.2 В этой версии ссылки на предстандартные версии WS-Policy заменены ссылками на Рекомендации W3C WS-Policy ( WS-Policy 1.5 ) и исправлены некоторые незначительные ошибки. Он сопровождается спецификациями WS-RM Policy 1.2 и WS-MakeConnection 1.1 .
- Все три спецификации были утверждены в качестве стандартов OASIS 2 февраля 2009 г.
Реализации WS-ReliableMessaging
[ редактировать ]- Апач Сандеша2
- Апач CXF
- Веблогический сервер
- IBM Вебсфера
- СтеклоРыба
- gSOAP
- SAP NetWeaver
- Microsoft Windows Фонд связи