In Middleware PhD Symposium, 2012.
The publish/subscribe paradigm is known for its loosely coupled interactions and event filtering capabilities. Traditional applications using pub/sub systems require large-scale deployment and high event throughput. Thus, pub/sub has always put the emphasis on scalability and performance, to the detriment of filtering expressiveness and quality of service. The matching language is usually limited to topic-based or content-based event filtering and does not allow complex stream-based subscriptions to be expressed. Messages are delivered on a best-effort basis without any ordering or reliability guarantees. Installing additional services and event processing systems at the endpoints can overcome the limitations of pub/sub systems. However, we argue that such solutions are inefficient and put a lot of strain on the pub/sub layer itself. Therefore, the focus of this thesis is to develop integrated solutions to extend pub/sub language expression and quality of service, and demonstrate that our approach results in better performance from a holistic perspective. We first describe multiple case studies for pub/sub and identify major features which need to be supported. We then extract those requirements from our use cases and develop general solutions within the pub/sub layer. Features we have supported so far includes total order and ranked data dissemination. Finally, we conduct experiments to compare the performance of our approach to baselines which rely on end-to-end services and perform holistic evaluations to assess the impact of our work.