Many distributed applications require a scalable event-driven communication
model that decouples suppliers from consumers and simultaneously supports
advanced quality of service (QoS) properties and event filtering mechanisms
. The CORBA Notification Service provides a publish/subscribe mechanism tha
t is designed to support scalable event-driven communication by routing eve
nts efficiently between many suppliers and consumers, enforcing various QoS
properties (such as reliability, priority, ordering, and timeliness), and
filtering events at multiple points in a distributed system.
This paper provides several contributions to research on scalable notificat
ion services. First, we present the CORBA Notification Service architecture
and illustrate how it addresses limitations with the earlier CORBA Event S
ervice. Second, we explain how we addressed key design challenges faced whe
n implementing the Notification Service in TAO, which is our high-performan
ce, real-time ORB. We discuss the optimizations used to improve the scalabi
lity of TAO's Notification Service. Finally, we present empirical results o
f the performance of our implementation.