Abstract
Publish/subscribe is used increasingly often as a communication mechanism in loosely-coupled distributed applications. Research and product development have focused mostly on efficiency issues and neglected methodological support to build concrete middleware implementations so far. In this paper, we present the novel design of the Rebeca publish/subscribe middleware that is based on the experience gained with previous versions. As basic design concept, we focus on a modular pipeline architecture that is built around a minimal, but extendable publish/subscribe core. With respect to modularity, we employ the concept of features that are well-defined aspects of a software system’s functionality, encapsulated in pluggable modules, and, thereby, facilitate a separation of concerns. We address the composition of features and show how this is realized in Rebeca’s pipeline architecture with independently working plugins that can influence passing messages in three dedicated stages.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bornhövd, C., Cilia, M., Liebig, C., Buchmann, A.: An infrastructure for meta-auctions. In: Proceedings of the 2nd International Workshop on Advanced Issues of E-Commerce and Web-Based Information Systems, pp. 21–30. IEEE Computer Society, Los Alamitos (2000)
Cugola, G., Picco, G.P.: Reds: A reconfigurable dispatching system. In: Proceedings of the 6th International Workshop on Software Engineering and Middleware (SEM 2006), pp. 9–16. ACM Press, New York (2006)
Fidler, E., Jacobsen, H.A., Li, G., Mankovski, S.: The padres distributed publish/subscribe system. In: Proceedings of the 8th International Conference on Feature Interactions in Telecommunications and Software Systems (ICFI 2005), pp. 12–30. IOS Press, The Netherlands (2005)
Fiege, L.: Visibility in Event-Based Systems. Ph.d. thesis, Technische Universität Darmstadt, Darmstadt, Germany (April 2005)
Fiege, L., Cilia, M., Mühl, G., Buchmann, A.: Publish/subscribe grows up: Support for management, visibility control, and heterogeneity. IEEE Internet Computing 10(1), 48–55 (2006)
Fiege, L., Mezini, M., Mühl, G., Buchmann, A.P.: Engineering event-based systems with scopes. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 309–333. Springer, Heidelberg (2002)
Friedman-Hill, E.: Jess in Action: Rule-Based Systems in Java. Manning Publications, Greenwich (June 2003)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Boston (1995)
Intanagonwiwat, C., Govindan, R., Estrin, D.: Directed diffusion: a scalable and robust communication paradigm for sensor networks. In: Proceedings of the 6th Annual International Conference on Mobile Computing and Networking (MobiCom 2000), pp. 56–67. ACM Press, New York (2000)
Jaeger, M.A., Mühl, G., Werner, M., Parzyjegla, H.: Reconfiguring self-stabilizing publish/subscribe systems. In: State, R., van der Meer, S., O’Sullivan, D., Pfeifer, T. (eds.) DSOM 2006. LNCS, vol. 4269, pp. 233–238. Springer, Heidelberg (2006)
Jaeger, M.A., Parzyjegla, H., Mühl, G., Herrmann, K.: Self-organizing broker topologies for publish/subscribe systems. In: SAC 2007, pp. 543–550. ACM Press, New York (2007)
Li, G., Muthusamy, V., Jacobsen, H.A.: A distributed service-oriented architecture for business process execution. ACM Transactions on the Web 4(1), 1–33 (2010)
Love, R.: Get on the d-bus. Linux Journal 2005(130), 3 (2005)
Luckham, D.C.: The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems. Addison-Wesley Longman Publishing Co., Boston (2001)
Mühl, G., Fiege, L., Gärtner, F.C., Buchmann, A.P.: Evaluating advanced routing algorithms for content-based publish/subscribe systems. In: Proceedings of the 10th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems (MASCOTS 2002), pp. 167–176. IEEE Computer Society, Los Alamitos (2002)
Mühl, G., Fiege, L., Pietzuch, P.R.: Distributed Event-Based Systems. Springer, Heidelberg (2006)
Mühl, G., Ulbrich, A., Herrmann, K., Weis, T.: Disseminating information to mobile clients using publish-subscribe. IEEE Internet Computing 8(3), 46–53 (2004)
Mark Jelasity, A.M., Jesi, G.P., Voulgaris, S.: PeerSim: A peer-to-peer simulator, http://peersim.sourceforge.net/
Object Management Group (OMG): Data distribution service for real-time systems (DDS), version 1.2 (January 2007)
Organization for the Advancement of Structured Information Standards (OASIS): Web services notification (WSN), version 1.3. Billerica, MA, USA (October 2006)
Parzyjegla, H., Jaeger, M.A., Mühl, G., Weis, T.: Model-driven development and adaptation of autonomous control applications. IEEE Distributed Systems Online 9(11), 1–9 (2008)
Parzyjegla, H., Mühl, G., Jaeger, M.A.: Reconfiguring publish/subscribe overlay topologies. In: Proceedings of the 26th IEEE International Conference on Distributed Computing Systems Workshops (ICDCSW 2006), p. 29. IEEE Computer Society, Los Alamitos (2006)
Pietzuch, P., Eyers, D., Kounev, S., Shand, B.: Towards a common api for publish/subscribe. In: Proceedings of the Inaugural Conference on Distributed Event-Based Systems, pp. 152–157. ACM, New York (2007)
Richling, J.: Komponierbarkeit eingebetteter Echtzeitsysteme. Ph.D. thesis, Humboldt-Universität zu Berlin, Berlin, Germany (February 2006)
Schönherr, J.H., Parzyjegla, H., Mühl, G.: Clustered publish/subscribe in wireless actuator and sensor networks. In: Proceedings of the 6th International Workshop on Middleware for Pervasive and Ad-hoc Computing (MPAC 2008), pp. 60–65. ACM Press, New York (2008)
Schröter, A., Graff, D., Mühl, G., Richling, J., Parzyjegla, H.: Self-optimizing hybrid routing in publish/subscribe systems. In: Gonzalez, A., Pfeifer, T. (eds.) DSOM 2009. LNCS, vol. 5841, pp. 111–122. Springer, Heidelberg (2009)
Schröter, A., Mühl, G., Kounev, S., Parzyjegla, H., Richling, J.: Stochastic performance analysis and capacity planning of publish/subscribe systems. In: Proceedings of the 4th ACM International Conference on Distributed Event-Based Systems (DEBS 2010), ACM Press, New York (2010)
Sun Microsystems, Inc.: Java management extensions (JMX) specification, version 1.4. Santa Clara, CA, USA (November 2006)
Ulbrich, A., Mühl, G., Weis, T., Geihs, K.: Programming abstractions for content-based publish/subscribe in object-oriented languages. In: Meersman, R., Tari, Z. (eds.) OTM 2004. LNCS, vol. 3291, pp. 1538–1557. Springer, Heidelberg (2004)
World Wide Web Consortium (W3C): Web services eventing (WS-Eventing) (March 2010), http://www.w3.org/TR/ws-eventing/
Zeidler, A., Fiege, L.: Mobility support with REBECA. In: Proceedings of the 23rd International Conference on Distributed Computing Systems Workshops (ICDCSW 2003), pp. 354–361. IEEE Computer Society, Los Alamitos (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Parzyjegla, H., Graff, D., Schröter, A., Richling, J., Mühl, G. (2010). Design and Implementation of the Rebeca Publish/Subscribe Middleware. In: Sachs, K., Petrov, I., Guerrero, P. (eds) From Active Data Management to Event-Based Systems and More. Lecture Notes in Computer Science, vol 6462. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17226-7_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-17226-7_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-17225-0
Online ISBN: 978-3-642-17226-7
eBook Packages: Computer ScienceComputer Science (R0)