ABSTRACT
One reasonable categorization of coordination models is into data sharing or message passing, based on whether the information necessary to coordination is persistently stored and shared, or instead is only transiently available during communication. Generally speaking, approaches based on data sharing are more expressive and provide full decoupling in space and time. The alternative approach requires the simultaneous presence of the coordinated parties, but is typically more scalable. Prominent examples are, respectively, tuple spaces and publish-subscribe.
An open research question is whether it is possible to exploit in synergy the best of these two approaches, e.g. by implementing the more complex data sharing coordination on top of the more lightweight message passing one. In this paper, we seek an answer to this question in a pragmatic way: we analyze an implementation of the Lime tuple space middleware on top of REDS, an open source publish-subscribe system. Our implementation-driven style of investigation forces us to face details that do not surface when reasoning in the abstract about the nature and expressiveness of the models. We report about lessons we learned in this experience, and propose an extension to the publish-subscribe model that, albeit useful per se, constitutes a more effective foundation for data sharing coordination models.
- I. M. Arntzen and D. Johansen. A stateful and open publish-subscribe structure for online marketplalces. In Proc. of the 25th Int. Conf. on Distributed Computing Systems Wkshp.s, pages 431--437. IEEE Computer Society, 2005. Google ScholarDigital Library
- N. Busi and G. Zavattaro. Publish/subscribe vs. shared dataspace coordination infrastructures. In Proc. of 10th IEEE Int. Wkshp.s on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), pages 328--333. IEEE Press, 2001. Google ScholarDigital Library
- A. Carzaniga, D. S. Rosenblum, and A. L. Wolf. Design and evaluation of a wide-area event notification service. ACM Transactions on Computer Systems, 19(3):332--383, 2001. Google ScholarDigital Library
- K. M. Chandy and L. Lamport. Distributed snapshots: determining global states of distributed systems. ACM Transactions on Computer Systems, 3(1):63--75, 1985. Google ScholarDigital Library
- G. Cugola and G. P. Picco. REDS: a reconfigurable dispatching system. In Proc. of the 6th Int. Wkshp. on Software engineering and middleware (SEM), pages 9--16, New York, NY, USA, 2006. ACM Press. Google ScholarDigital Library
- A. J. Demers, J. Gehrke, M. Hong, M. Riedewald, and W. M. White. Towards expressive publish/subscribe systems. In Proc. of the 10th Int. Conf. on Extending Database Technology (EDBT), pages 627--644, 2006. Google ScholarDigital Library
- P. T. Eugster, P. A. Felber, R. Guerraoui, and A.-M. Kermarrec. The many faces of publish/subscribe. ACM Comput. Surv., 35(2):114--131, 2003. Google ScholarDigital Library
- E. Fidler, H.-A. Jacobsen, G. Li, and S. Mankovski. The PADRES distributed publish/subscribe system. In Int. Conf. on Feature Interactions in Telecommunications and Software Systems, pages 12--30, 2005.Google Scholar
- D. Gelernter. Generative communication in Linda. ACM Transactions on Programming Languages and Systems, 7(1):80--112, 1985. Google ScholarDigital Library
- D. Heimbigner. Adapting publish/subscribe middleware to achieve Gnutella-like functionality. In Proc. of the 2001 ACM Symp. on Applied computing (SAC), pages 176--181, New York, NY, USA, 2001. ACM Press. Google ScholarDigital Library
- G. Mühl, L. Fiege, and P. R. Pietzuch. Distributed Event-Based Systems. Springer, Aug. 2006. Google ScholarDigital Library
- A. L. Murphy, G. P. Picco, and G.-C. Roman. Lime: A coordination model and middleware supporting mobility of hosts and agents. ACM Transactions on Software Engineering and Methodology, 15(3):279--328, 2006. Google ScholarDigital Library
- G. A. Papadopoulos and F. Arbab. Coordination models and languages. Advances in Computers, 46:330--401, 1998.Google Scholar
- M. Spezialetti and P. Kearns. Efficient distributed snapshots. In Proc. of the 6th Int. Conf. on Distributed Computing Systems (ICDCS), pages 382--388, 1986.Google Scholar
Index Terms
- Data sharing vs. message passing: synergy or incompatibility?: an implementation-driven case study
Recommendations
Publish-Subscribe Grows Up: Support for Management, Visibility Control, and Heterogeneity
Message-oriented middleware is used to decouple the operation of cooperating applications. Existing approaches have concentrated mainly on scalability issues, but dynamic business processes and the integration of a wide range of data sources and ...
LIME: A coordination model and middleware supporting mobility of hosts and agents
LIME (Linda in a mobile environment) is a model and middleware supporting the development of applications that exhibit the physical mobility of hosts, logical mobility of agents, or both. LIME adopts a coordination perspective inspired by work on the ...
Programming wireless sensor networks with the TeenyLIME middleware
MIDDLEWARE2007: Proceedings of the 8th ACM/IFIP/USENIX international conference on MiddlewareWireless sensor networks (WSNs) are evolving to support sense-and-react applications, where actuators are physically interspersed with the sensors that trigger them. This solution maximizes localized interactions, improving resource utilization and ...
Comments