Flexible Transactional Coordination in the Peer Model
- 4 Citations
- 429 Downloads
Abstract
The Peer Model is a model for the specification of coordination aspects found in concurrent and distributed systems. It provides modeling constructs for flows, time, remoting and exception handling. The main concepts of the ground model are peers, wirings, containers, entries and services. Its intent is to introduce specific modeling abstractions of concurrency and distribution to make designs more readable and suitable for larger problems. However, there still exist coordination aspects that are not straight forward to model with it. In this paper, therefore the Peer Model is extended by modeling constructs for nested, distributed transactions based on the Flex transaction model. This approach eases the advanced control of structured and distributed coordination scenarios that have to cope with complex, dependent and concurrent flows. The evaluation introduces a coordination challenge that requires adaptive and transactional distribution of resources, dependencies between concurrent activities, error handling and compensation. It demonstrates the improvements that can be achieved with the new modeling concepts.
Keywords
Coordination model Flexible transactions Concurrent and distributed systemsNotes
Acknowledgment
Many thanks to Stefan Craß, Geri Joskowicz, Martin Planer, Matthias Schwayer, Jörg Schoba, Peter Tilian, and the anonymous reviewers for their comments on this paper.
References
- 1.Astley, M., Sturman, D.C., Agha, G.A.: Customizable middleware for modular distributed software. Commun. ACM 44(5), 99–107 (2001)CrossRefGoogle Scholar
- 2.Kühn, E.: Reusable coordination components: reliable development of cooperative information systems. Int. J. Coop. Inf. Syst. 25(4), 1740001 (2016). World Scientific Publishing CompanyCrossRefGoogle Scholar
- 3.Malone, T.W., Crowston, K.: The interdisciplinary study of coordination. ACM Comput. Surv. (CSUR) 26(1), 87–119 (1994)CrossRefGoogle Scholar
- 4.Petri, C.A.: Kommunikation mit Automaten. Ph.D. thesis, Technische Hochschule Darmstadt (1962)Google Scholar
- 5.Agha, G.A.: ACTORS: A Model of Concurrent Computation in Distributed Systems. MIT Press, Cambridge (1990)Google Scholar
- 6.Arbab, F.: Reo: a channel-based coordination model for component composition. Math. Struct. Comput. Sci. 14(3), 329–366 (2004). Cambridge University PressCrossRefzbMATHMathSciNetGoogle Scholar
- 7.Börger, E.: Modeling distributed algorithms by abstract state machines compared to petri nets. In: Butler, M., Schewe, K.-D., Mashkoor, A., Biro, M. (eds.) ABZ 2016. LNCS, vol. 9675, pp. 3–34. Springer, Cham (2016). doi: 10.1007/978-3-319-33600-8_1 CrossRefGoogle Scholar
- 8.Kühn, E., Craß, S., Joskowicz, G., Marek, A., Scheller, T.: Peer-based programming model for coordination patterns. In: De Nicola, R., Julien, C. (eds.) COORDINATION 2013. LNCS, vol. 7890, pp. 121–135. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-38493-6_9 CrossRefGoogle Scholar
- 9.Bukhres, O., Elmagarmid, A.K., Kühn, E.: Implementation of the flex transaction model. IEEE Data Eng. Bull. 16(2), 28–32 (1993)Google Scholar
- 10.Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. (TOPLAS) 7(1), 80–112 (1985)CrossRefzbMATHGoogle Scholar
- 11.Kühn, E., Mordinyi, R., Keszthelyi, L., Schreiber, C.: Introducing the concept of customizable structured spaces for agent coordination in the production automation domain. In: 8th International Conference on Autonomous Agents and Multiagent Systems (AAMAS), IFAAMAS, pp. 625–632 (2009)Google Scholar
- 12.Craß, S., Kühn, E., Salzer, G.: Algebraic foundation of a data model for an extensible space-based collaboration crotocol. In: International Database Engineering and Applications Symposium (IDEAS), pp. 301–306. ACM (2009)Google Scholar
- 13.Elmagarmid, A.K.: Database Transaction Models for Advanced Applications. Morgan Kaufmann, San Francisco (1992)Google Scholar
- 14.Kühn, E.: Fault-tolerance for communicating multidatabase transactions. In: 27th Annual Hawaii International Conference on System Sciences (HICSS), pp. 323–332. IEEE (1994)Google Scholar
- 15.Garcia-Molina, H., Salem, K.: Sagas. SIGMOD Record 16(3), December 1987Google Scholar
- 16.Moss, E.B.: Nested Transactions: An Approach to Reliable Distributed Computing. Technical report, Cambridge, MA, USA (1981)Google Scholar
- 17.Kühn, E.: Virtual Shared Memory for Distributed Architecture. Nova Science Publishers, New York (2001)Google Scholar
- 18.Meng, S., Arbab, F.: A model for web service coordination in long-running transactions. In: Fifth IEEE International Symposium on Service Oriented System Engineering (SOSE), pp. 121–128 (2010)Google Scholar
- 19.Christensen, S., Hansen, N.D.: Coloured Petri nets extended with place capacities, test arcs and inhibitor arcs. In: Ajmone Marsan, M. (ed.) ICATPN 1993. LNCS, vol. 691, pp. 186–205. Springer, Heidelberg (1993). doi: 10.1007/3-540-56863-8_47 CrossRefGoogle Scholar
- 20.Field, J., Varela, C.A.: Transactors: A programming model for maintaining globally consistent distributed state in unreliable environments. In: 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pp. 195–208 (2005)Google Scholar