Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Exploiting virtual synchrony in distributed systems
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
A formal approach to recovery by compensating transactions
Proceedings of the sixteenth international conference on Very large databases
The process group approach to reliable distributed computing
Communications of the ACM
An integrating, transformation-oriented approach to concurrency control and undo in group editors
CSCW '96 Proceedings of the 1996 ACM conference on Computer supported cooperative work
Matching events in a content-based subscription system
Proceedings of the eighteenth annual ACM symposium on Principles of distributed computing
Using semantic knowledge for transaction processing in a distributed database
ACM Transactions on Database Systems (TODS)
Distributed computing research issues in grid computing
ACM SIGACT News
Assignment-Based Partitioning in a Condition Monitoring System
DISC '02 Proceedings of the 16th International Conference on Distributed Computing
Performance of publish/subscribe middleware in mobile wireless networks
WOSP '04 Proceedings of the 4th international workshop on Software and performance
Publish/subscribe in a mobile environment
Wireless Networks - Special issue: Pervasive computing and communications
Platform Overlays: enabling in-network stream processing in large-scale distributed applications
NOSSDAV '05 Proceedings of the international workshop on Network and operating systems support for digital audio and video
Retrofitting Autonomic Capabilities onto Legacy Systems
Cluster Computing
Soma: a compositional language for distributed systems
ACM SIGPLAN Notices
Advanced networking services for distributed multimedia streaming applications
Multimedia Tools and Applications
Event dissemination via group-aware stream filtering
Proceedings of the second international conference on Distributed event-based systems
Group-aware stream filtering for bandwidth-efficient data dissemination
International Journal of Parallel, Emergent and Distributed Systems - Best Papers from the WWASN2007 Workshop
Towards collaborative data reduction in stream-processing systems
International Journal of Communication Networks and Distributed Systems
Reconfigurable middleware for high availability sensor systems
Proceedings of the Third ACM International Conference on Distributed Event-Based Systems
Extending mobility to publish/subscribe systems using a pro-active caching approach
Mobile Information Systems
Extending mobility to publish/subscribe systems using a pro-active caching approach
Mobile Information Systems
Multicast with aggregated deliveries
Proceedings of the First International Workshop on Algorithms and Models for Distributed Event Processing
Guarantees for decentralized event correlation
Proceedings of the 8th Middleware Doctoral Symposium
FAIDECS: fair decentralized event correlation
Middleware'11 Proceedings of the 12th ACM/IFIP/USENIX international conference on Middleware
Language expressiveness and quality of service for publish/subscribe systems
Proceedings of the 9th Middleware Doctoral Symposium of the 13th ACM/IFIP/USENIX International Middleware Conference
FAIDECS: fair decentralized event correlation
Proceedings of the 12th International Middleware Conference
Hi-index | 0.00 |
Publish-subscribe messaging middleware typically offers limited and low-level options for quality of service, such as best-effort delivery versus reliable delivery, or ordered versus unordered. We propose a new, high-level approach to specifying quality of service, in which the consumer specifies an event stream interpretation function that maps an event stream into a state that represents the consumer's semantics of the stream. Under this approach, the system may deliver either the subscribed event stream, or any alternative stream whose image under the interpretation function yields the same state. Event stream interpretation gives consumers the ability to more accurately specify the tolerable distortions of perfect message delivery, and gives middleware implementations the flexibility to use more efficient protocols for message delivery and failure recovery while preserving application safety.We introduce an event stream interpretation language. We illustrate its utility by applying it to the problem of optimistic delivery of unlogged and out-of-order messages. We show how a publish-subscribe system can take an event stream interpretation program supplied by a subscriber and, using techniques derived from compiler technology, analyze it to determine which messages can be delivered optimistically, and which recovery messages must be delivered when an unlogged or out-of-order message is detected.