Advertisement

Flexible Transactional Coordination in the Peer Model

  • Eva KühnEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10522)

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 systems 

Notes

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. 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. 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. 3.
    Malone, T.W., Crowston, K.: The interdisciplinary study of coordination. ACM Comput. Surv. (CSUR) 26(1), 87–119 (1994)CrossRefGoogle Scholar
  4. 4.
    Petri, C.A.: Kommunikation mit Automaten. Ph.D. thesis, Technische Hochschule Darmstadt (1962)Google Scholar
  5. 5.
    Agha, G.A.: ACTORS: A Model of Concurrent Computation in Distributed Systems. MIT Press, Cambridge (1990)Google Scholar
  6. 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. 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. 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. 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. 10.
    Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. (TOPLAS) 7(1), 80–112 (1985)CrossRefzbMATHGoogle Scholar
  11. 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. 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. 13.
    Elmagarmid, A.K.: Database Transaction Models for Advanced Applications. Morgan Kaufmann, San Francisco (1992)Google Scholar
  14. 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. 15.
    Garcia-Molina, H., Salem, K.: Sagas. SIGMOD Record 16(3), December 1987Google Scholar
  16. 16.
    Moss, E.B.: Nested Transactions: An Approach to Reliable Distributed Computing. Technical report, Cambridge, MA, USA (1981)Google Scholar
  17. 17.
    Kühn, E.: Virtual Shared Memory for Distributed Architecture. Nova Science Publishers, New York (2001)Google Scholar
  18. 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. 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. 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

Copyright information

© IFIP International Federation for Information Processing 2017

Authors and Affiliations

  1. 1.Institute of Computer LanguagesTU WienViennaAustria

Personalised recommendations