Airavata WS-Messenger is a Web Services-based Messaging System for Service-Oriented Computing and is an implementation of WS-Notification and WS-Eventing specifications. The message format can be automatically converted between the two specifications. The subscription request type (Ws-Notification or WS-Eventing) for a listener determines the message format that the notification consumer will receive. If WS-Notification subscription request is received by the broker, it will send WS-Notification messages to the listener. Similarly, if WS-Eventing subscription is received by the broker, the broker will produce WS-Eventing messages for that listener. The publisher can publish messages in either format. The consumers will recieve messages in the format they subscribed irrespective of the format the message is published.
The following figure illustrates the high level overview of the WS-Messenger
The WS-Messenger has three major modules.
- Message Broker: The broker is a traditional notification broker responsible for recieving subscriptions and events published.
- Messenger: The messenger responsibility is to delivar messages to all the subscribers and message boxes.
- Message Box: provide a web service interface for subscribers behind the firewalls. This service stores notification messages until the subscribers pull messages where the firefall blocks a push. This module also assists in reliable delivary otherwise lost due to network and client glitchs.