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 2017 Publication 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.
[2]
Charles Anderson . 2015. Docker. IEEE Software, Vol. 32, 3 (2015).
[3]
Renvath Talari Atul Shukla . 2014. Architecting Reactive Applications on AWS. (2014).
[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.
[5]
Len Bass, Ingo Weber, and Liming Zhu . 2015. DevOps: A Software Architect's Perspective. Addison-Wesley Professional.
[6]
Jonas Boner . 2016. Reactive microservices architecture. (2016).
[7]
Jonas Bonér, Dave Farley, Roland Kuhn, and Martin Thompson . 2014. The reactive manifesto. (2014).
[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.
[9]
Edward Curry . 2004. Message-oriented middleware. Middleware for communications (2004), 1--28.
[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.
[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.
[12]
Nicola Dragoni, Saverio Giallorenzo, Alberto Lafuente, et almbox. . 2016. Microservices: yesterday, today, and tomorrow. arXiv preprint arXiv:1606.04036 (2016).
[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.
[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.
[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.]).
[16]
Maria Fazio, Antonio Celesti, Rajiv Ranjan, et almbox. . 2016. Open Issues in Scheduling Microservices in the Cloud. IEEE Cloud Computing (2016), 81--88.
[17]
Martin Fowler and J Lewis . 2014. Microservices a definition of this new architectural term. URL: http://martinfowler.com/articles/microservices.html (2014).
[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.
[19]
Arun Gupta . 2015. Microservice Design Patterns. http://blog.arungupta.me/microservice-design-patterns/. (2015).
[20]
Felipe Gutierrez . 2017. Microservices. Spring Boot Messaging. Springer, 179--192.
[21]
Emily H Halili . 2008. Apache JMeter: A practical beginner's guide to automated testing and performance measurement for your websites. Packt Publishing Ltd.
[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.
[23]
Les Hatton . 1997. Reexamining the fault density component size connection. IEEE software (1997), 89--97.
[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.
[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).
[26]
Dmitry Namiot and Manfred Sneps-Sneppe . 2014. On micro-services architecture. International Journal of Open Information Technologies (2014).
[27]
Sam Newman . 2015. Building microservices. " O'Reilly Media, Inc.".
[28]
Chris Richardson . [n. d.]. Introduction to microservices. URL: https://www.nginx.com/blog/introduction-to-microservices (. [n. d.]).
[29]
Alan Sill . 2016. The Design and Architecture of Microservices. IEEE Cloud Computing (2016), 76--80.
[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.
[31]
Johannes Thönes . 2015. Microservices. IEEE Software (2015), 116--116.
[32]
Alvaro Videla and Jason JW Williams . 2012. RabbitMQ in action. Manning.
[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.

Cited By

View all
  • (2022)Reference Architectures for HealthReference Architectures for Critical Domains10.1007/978-3-031-16957-1_4(41-71)Online publication date: 7-Sep-2022
  • (2021)On Representing Resilience Requirements of Microservice Architecture SystemsInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402150026131:06(863-888)Online publication date: 21-Jun-2021
  • (2020)Microservice transition and its granularity problem: A systematic mapping studySoftware: Practice and Experience10.1002/spe.286950:9(1651-1681)Online publication date: 25-Jun-2020

Recommendations

Comments

Information & Contributors

Information

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
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].

Sponsors

  • SBC: Brazilian Computer Society
  • CNPq: Conselho Nacional de Desenvolvimento Cientifico e Tecn
  • CGIBR: Comite Gestor da Internet no Brazil
  • CAPES: Brazilian Higher Education Funding Council

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 October 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. asynchronous queues
  2. micro services
  3. reactive approach
  4. refactoring

Qualifiers

  • Research-article

Conference

Webmedia '17
Sponsor:
  • SBC
  • CNPq
  • CGIBR
  • CAPES
Webmedia '17: Brazilian Symposium on Multimedia and the Web
October 17 - 20, 2017
RS, Gramado, Brazil

Acceptance Rates

WebMedia '17 Paper Acceptance Rate 38 of 138 submissions, 28%;
Overall Acceptance Rate 270 of 873 submissions, 31%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)8
  • Downloads (Last 6 weeks)1
Reflects downloads up to 17 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Reference Architectures for HealthReference Architectures for Critical Domains10.1007/978-3-031-16957-1_4(41-71)Online publication date: 7-Sep-2022
  • (2021)On Representing Resilience Requirements of Microservice Architecture SystemsInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402150026131:06(863-888)Online publication date: 21-Jun-2021
  • (2020)Microservice transition and its granularity problem: A systematic mapping studySoftware: Practice and Experience10.1002/spe.286950:9(1651-1681)Online publication date: 25-Jun-2020

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media