Transforming Service Compositions into Cloud-Friendly Actor Networks

  • Dragan Ivanović
  • Manuel Carro
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8831)


While conversion of atomic and back-end services from centralized servers to cloud platforms has been largely successful, the composition layer, which gives the service-oriented architecture its flexibility and versatility, often remains a bottleneck. The latter can be re-engineered for horizontal and vertical scalability by moving away from coarser concurrency model that uses transactional databases for keeping and maintaining composition internal state, towards a finer-grained model of concurrency and distribution based on actors, state messaging, and non-blocking write-only state persistence. In this paper we present a scheme for automatically transforming the traditional (orchestration-style) service compositions into Cloud-friendly actor networks, which can benefit from high performance, location transparency, clustering, load balancing, and integration capabilities of modern actor systems, such as Akka. We show how such actor networks can be monitored and automatically made persistent while avoiding transactional state update bottlenecks, and that the same networks can be used for both executing compositions and their testing and simulation.


Service Composition Actor Systems Cloud Service Provision 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    van der Aalst, W.M.P., ter Hofstede, A.H.M.: YAWL: Yet Another Workflow Language. Information Systems 30(4), 245–275 (2005)CrossRefGoogle Scholar
  2. 2.
    Agha, G.: Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, Cambridge (1986)Google Scholar
  3. 3.
    Agha, G., Mason, I.A., Smith, S.F., Talcott, C.L.: A foundation for actor computation. Journal of Functional Programming 7(1), 1–72 (1997)zbMATHMathSciNetCrossRefGoogle Scholar
  4. 4.
    et al., M.D.D.: The reactive manifesto. Web (September 2013),
  5. 5.
    Apache Software Foundation: Apache ODE Documentation (2013),
  6. 6.
    Apt, K.R., De Boer, F.S., Olderog, E.R.: Verification of sequential and concurrent programs. Springer (2010)Google Scholar
  7. 7.
    Bailis, P., Ghodsi, A.: Eventual consistency today: Limitations, extensions, and beyond. Commun. ACM 56(5), 55–63 (2013), Scholar
  8. 8.
    Bonetta, D., Pautasso, C.: An architectural style for liquid web services. In: 2011 9th Working IEEE/IFIP Conference on Software Architecture (WICSA), pp. 232–241 (June 2011)Google Scholar
  9. 9.
    Cardelli, L., Gordon, A.D.: Mobile ambients. Theoretical Computer Science 240(1), 177–213 (2000)zbMATHMathSciNetCrossRefGoogle Scholar
  10. 10.
    Fournet, C., Gonthier, G.: The join calculus: A language for distributed mobile programming. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds.) APPSEM 2000. LNCS, vol. 2395, pp. 268–332. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  11. 11.
    Gupta, M.: Akka Essentials. Packt Publishing Ltd. (2012)Google Scholar
  12. 12.
    Hewitt, C.: A universal, modular actor formalism for artificial intelligence. In: IJCAI 1973. IJCAI (1973)Google Scholar
  13. 13.
    Hewitt, C.: Viewing control structures as patterns of passing messages. Artificial Intelligence 8(3), 323–364 (1977)CrossRefGoogle Scholar
  14. 14.
    Hoare, C.A.R.: An axiomatic basis for computer programming. Communications of the ACM 12(10) (1969)Google Scholar
  15. 15.
    Ibsen, C., Anstey, J.: Camel in Action, 1st edn. Manning Publications Co., Greenwich (2010)Google Scholar
  16. 16.
    Milner, R.: Communicating and mobile systems: The pi calculus. Cambridge University Press (1999)Google Scholar
  17. 17.
    Team, O.: Orchestra User Guide. Bull-SAS OW2 Consortium (October 2011),
  18. 18.
    Varela, C.A.: Programming Distributed Computing Systems: A Foundational Approach. MIT Press (2013)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Dragan Ivanović
    • 1
  • Manuel Carro
    • 1
    • 2
  1. 1.IMDEA Software InstituteSpain
  2. 2.School of Computer ScienceT. University of Madrid (UPM)Spain

Personalised recommendations