Information Technology Reference
In-Depth Information
Producer
Subscriber
publish
subscribe
Producer
Subscriber
publish
subscribe
Event Service
notify
publish
Producer
Subscriber
notify
publish
Producer
Subscriber
Storage
Figure 2.18.
Publish/subscribe overview.
ers publish events and subscribers subscribe to those events and are subsequently
asynchronously notified when an event occurs. Publish/subscribe systems there-
fore implement an event-driven style of communication [78].
This interaction style is illustrated in Figure 2.18, where publishers pub-
lish messages to a central event service. Subscribers register their interest in
messages that may be placed in the event service by publishers and are notified
asynchronously if this occurs.
As well as time and space decoupling, described in Section 2.6, publish/-
subscribe also provides synchronisation decoupling between publishers and sub-
scribers. Eugster et al. [34] describe synchronisation decoupling as the ability for
publishers to produce events without blocking and subscribers to receive those
events asynchronously through a callback mechanism.
Subscribers are usually only interested in particular events, not all events and
this has led to a number of subscription schemes. According to Eugster et al. [34],
the most widely used schemes are topic-based and content-based subscription.
The topic based subscription model is based on the notion of topics or subjects
and is implemented by many enterprise messaging solutions including IBM's MQ
Series [51] and Tibco's Rendezvous message bus [78]. The JMS API [47]provides
a topic abstraction mechanism and in version 1.1 of the standard, the interface
between message queues and topics has converged so the API for both types of
interaction styles are the same. Topic based publish/subscribe programming is,
using the JMS API, the same as message queue programming.
Content-based (also known as property-based [87]) publish/subscribe provides
a scheme where events are subscribed to, based on a filter mechanism. This is im-
Search WWH ::




Custom Search