University of Toronto, 2015.
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. Recently, modern pub/sub applications such as online games, social networks, and sensor networks, have specifications which extend beyond the basic semantics provided by standard systems. Installing additional services and event processing systems at the endpoints can overcome these limitations. However, this thesis argue that such solutions are inefficient and put an avoidable strain on the pub/sub layer itself. Therefore, the focus of this thesis is to develop integrated solutions to extend pub/sub language expressiveness and quality of service, as well as demonstrate that this approach results in better performance from a holistic perspective. The different pub/sub extensions described are ranked data dissemination, fair subscription filtering, and total order. Each section first describes the application use cases which justify the support for the developed feature in pub/sub. Those requirements are then extracted from our use cases and develop a general solution within the pub/sub layer. A theoretical analysis is also conducted to demonstrate the correctness of every approach. Finally, experiments are employed to compare the performance of our solution to baselines which rely on end-to-end services and perform holistic evaluations to assess the impact of our work.
Readers who enjoyed the above work, may also like the following: