skip to main content
10.1145/3126858.3126873acmotherconferencesArticle/Chapter ViewAbstractPublication PageswebmediaConference Proceedingsconference-collections
research-article

Asynchronous Queue Based Approach for Building Reactive Microservices

Published:17 October 2017Publication History

ABSTRACT

To achieve scalability and flexibility in larger applications a new approach arises, named by Microservices (MS). However MS architectures are at their inception and are even more a concept than a fully mature design pattern. One of the hardest topics in this approach is how to properly migrate or develop a single microservice, in terms of scope, efficiency and dependability. In this sense, this work proposes a new architectural model based on high-level architecture pattern of reactive programming to the internal structure of a new microservice. The new model of microservices are internally coordinated by asynchronous queues, which allowed to preserve compatibility with most monolithic components and provide an encapsulation process to enable its continuity. A comparative study between the standard approach and the proposed architecture was carried out to measure the eventual performance improvement of the new strategy.

References

  1. Nuha Alshuqayran, Nour Ali, and Roger Evans . 2016. A Systematic Mapping Study in Microservice Architecture Service-Oriented Computing and Applications (SOCA). IEEE, 44--51.Google ScholarGoogle Scholar
  2. Charles Anderson . 2015. Docker. IEEE Software, Vol. 32, 3 (2015).Google ScholarGoogle Scholar
  3. Renvath Talari Atul Shukla . 2014. Architecting Reactive Applications on AWS. (2014).Google ScholarGoogle Scholar
  4. Armin Balalaie, Abbas Heydarnoori, and Pooyan Jamshidi . 2015. Microservices migration patterns. Technical Report. TR-SUTCE-ASE-2015-01, Automated Software Engineering Group, Sharif University of Technology, Tehran, Iran.Google ScholarGoogle Scholar
  5. Len Bass, Ingo Weber, and Liming Zhu . 2015. DevOps: A Software Architect's Perspective. Addison-Wesley Professional.Google ScholarGoogle Scholar
  6. Jonas Boner . 2016. Reactive microservices architecture. (2016).Google ScholarGoogle Scholar
  7. Jonas Bonér, Dave Farley, Roland Kuhn, and Martin Thompson . 2014. The reactive manifesto. (2014).Google ScholarGoogle Scholar
  8. B Terry Compton and Carol Withrow . 1990. Prediction and control of ada software defects. Journal of Systems and Software Vol. 12, 3 (1990), 199--207.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Edward Curry . 2004. Message-oriented middleware. Middleware for communications (2004), 1--28.Google ScholarGoogle Scholar
  10. Florian Daniel and Barbara Pernici . 2006. Insights into web service orchestration and choreography. International Journal of E-Business Research (IJEBR), Vol. 2, 1 (2006), 58--77. Google ScholarGoogle ScholarCross RefCross Ref
  11. Florian Daniel and Barbara Pernici . 2007. Web service orchestration and choreography: Enabling business processes on the web. E-Business Models, Services, and Communications-Advances in E-Business Research Series Vol. 2 (2007), 251--274.Google ScholarGoogle Scholar
  12. Nicola Dragoni, Saverio Giallorenzo, Alberto Lafuente, et almbox. . 2016. Microservices: yesterday, today, and tomorrow. arXiv preprint arXiv:1606.04036 (2016).Google ScholarGoogle Scholar
  13. Khaled El Emam, Sa"ıda Benlarbi, Nishith Goel, et almbox. . 2002. The optimal class size for object-oriented software. IEEE Transactions on software engineering Vol. 28, 5 (2002), 494--509. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Christian Esposito, Aniello Castiglione, and Kim-Kwang Raymond Choo . 2016. Challenges in Delivering Software in the Cloud as Microservices. IEEE Cloud Computing, Vol. 3, 5 (2016), 10--14. Google ScholarGoogle ScholarCross RefCross Ref
  15. Eduardo Falcao, Tiago Maritan, Alexandre Duarte, and Joao Pessoa . [n. d.]. Deaf Accessibility as a Service: uma Arquitetura Elástica e Tolerante a Falhas para o Sistema de Traducc ao VLIBRAS. (. [n. d.]).Google ScholarGoogle Scholar
  16. Maria Fazio, Antonio Celesti, Rajiv Ranjan, et almbox. . 2016. Open Issues in Scheduling Microservices in the Cloud. IEEE Cloud Computing (2016), 81--88.Google ScholarGoogle Scholar
  17. Martin Fowler and J Lewis . 2014. Microservices a definition of this new architectural term. URL: http://martinfowler.com/articles/microservices.html (2014).Google ScholarGoogle Scholar
  18. Jean-Philippe Gouigoux and Dalila Tamzalit . 2017. From Monolith to Microservices: Lessons Learned on an Industrial Migration to a Web Oriented Architecture. In Software Architecture Workshops (ICSAW), 2017 IEEE International Conference on. IEEE, 62--65.Google ScholarGoogle ScholarCross RefCross Ref
  19. Arun Gupta . 2015. Microservice Design Patterns. http://blog.arungupta.me/microservice-design-patterns/. (2015).Google ScholarGoogle Scholar
  20. Felipe Gutierrez . 2017. Microservices. Spring Boot Messaging. Springer, 179--192.Google ScholarGoogle Scholar
  21. Emily H Halili . 2008. Apache JMeter: A practical beginner's guide to automated testing and performance measurement for your websites. Packt Publishing Ltd.Google ScholarGoogle Scholar
  22. Sara Hassan and Rami Bahsoon . 2016. Microservices and Their Design Trade-Offs: A Self-Adaptive Roadmap Services Computing (SCC), 2016 IEEE International Conference on. IEEE, 813--818.Google ScholarGoogle Scholar
  23. Les Hatton . 1997. Reexamining the fault density component size connection. IEEE software (1997), 89--97. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Gabor Kecskemeti, Attila Csaba Marosi, and Attila Kertesz . 2016. The ENTICE approach to decompose monolithic services into microservices High Performance Computing & Simulation (HPCS), 2016 International Conference on. IEEE, 591--596.Google ScholarGoogle Scholar
  25. Alessandra Levcovitz, Ricardo Terra, and Marco Tulio Valente . 2016. Towards a Technique for Extracting Microservices from Monolithic Enterprise Systems. arXiv preprint arXiv:1605.03175 (2016).Google ScholarGoogle Scholar
  26. Dmitry Namiot and Manfred Sneps-Sneppe . 2014. On micro-services architecture. International Journal of Open Information Technologies (2014).Google ScholarGoogle Scholar
  27. Sam Newman . 2015. Building microservices. " O'Reilly Media, Inc.".Google ScholarGoogle Scholar
  28. Chris Richardson . [n. d.]. Introduction to microservices. URL: https://www.nginx.com/blog/introduction-to-microservices (. [n. d.]).Google ScholarGoogle Scholar
  29. Alan Sill . 2016. The Design and Architecture of Microservices. IEEE Cloud Computing (2016), 76--80.Google ScholarGoogle Scholar
  30. Joe Stubbs, Walter Moreira, and Rion Dooley . 2015. Distributed systems of microservices using Docker and Serfnode Science Gateways (IWSG), 2015 7th International Workshop on. IEEE, 34--39.Google ScholarGoogle Scholar
  31. Johannes Thönes . 2015. Microservices. IEEE Software (2015), 116--116. Google ScholarGoogle ScholarCross RefCross Ref
  32. Alvaro Videla and Jason JW Williams . 2012. RabbitMQ in action. Manning.Google ScholarGoogle Scholar
  33. Mario Villamizar, Oscar Garcés, et almbox. . 2015. Evaluating the monolithic and the microservice architecture pattern to deploy web applications in the cloud. In Computing Colombian Conference (10CCC), 2015 10th. IEEE, 583--590.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Asynchronous Queue Based Approach for Building Reactive Microservices

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Other conferences
        WebMedia '17: Proceedings of the 23rd Brazillian Symposium on Multimedia and the Web
        October 2017
        522 pages
        ISBN:9781450350969
        DOI:10.1145/3126858

        Copyright © 2017 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 17 October 2017

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        WebMedia '17 Paper Acceptance Rate38of138submissions,28%Overall Acceptance Rate270of873submissions,31%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader