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.
- 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 Scholar
- Charles Anderson . 2015. Docker. IEEE Software, Vol. 32, 3 (2015).Google Scholar
- Renvath Talari Atul Shukla . 2014. Architecting Reactive Applications on AWS. (2014).Google Scholar
- 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 Scholar
- Len Bass, Ingo Weber, and Liming Zhu . 2015. DevOps: A Software Architect's Perspective. Addison-Wesley Professional.Google Scholar
- Jonas Boner . 2016. Reactive microservices architecture. (2016).Google Scholar
- Jonas Bonér, Dave Farley, Roland Kuhn, and Martin Thompson . 2014. The reactive manifesto. (2014).Google Scholar
- 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 ScholarDigital Library
- Edward Curry . 2004. Message-oriented middleware. Middleware for communications (2004), 1--28.Google Scholar
- 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 ScholarCross Ref
- 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 Scholar
- Nicola Dragoni, Saverio Giallorenzo, Alberto Lafuente, et almbox. . 2016. Microservices: yesterday, today, and tomorrow. arXiv preprint arXiv:1606.04036 (2016).Google Scholar
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- 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 Scholar
- Maria Fazio, Antonio Celesti, Rajiv Ranjan, et almbox. . 2016. Open Issues in Scheduling Microservices in the Cloud. IEEE Cloud Computing (2016), 81--88.Google Scholar
- Martin Fowler and J Lewis . 2014. Microservices a definition of this new architectural term. URL: http://martinfowler.com/articles/microservices.html (2014).Google Scholar
- 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 ScholarCross Ref
- Arun Gupta . 2015. Microservice Design Patterns. http://blog.arungupta.me/microservice-design-patterns/. (2015).Google Scholar
- Felipe Gutierrez . 2017. Microservices. Spring Boot Messaging. Springer, 179--192.Google Scholar
- Emily H Halili . 2008. Apache JMeter: A practical beginner's guide to automated testing and performance measurement for your websites. Packt Publishing Ltd.Google Scholar
- 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 Scholar
- Les Hatton . 1997. Reexamining the fault density component size connection. IEEE software (1997), 89--97. Google ScholarDigital Library
- 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 Scholar
- 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 Scholar
- Dmitry Namiot and Manfred Sneps-Sneppe . 2014. On micro-services architecture. International Journal of Open Information Technologies (2014).Google Scholar
- Sam Newman . 2015. Building microservices. " O'Reilly Media, Inc.".Google Scholar
- Chris Richardson . [n. d.]. Introduction to microservices. URL: https://www.nginx.com/blog/introduction-to-microservices (. [n. d.]).Google Scholar
- Alan Sill . 2016. The Design and Architecture of Microservices. IEEE Cloud Computing (2016), 76--80.Google Scholar
- 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 Scholar
- Johannes Thönes . 2015. Microservices. IEEE Software (2015), 116--116. Google ScholarCross Ref
- Alvaro Videla and Jason JW Williams . 2012. RabbitMQ in action. Manning.Google Scholar
- 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 ScholarCross Ref
Index Terms
- Asynchronous Queue Based Approach for Building Reactive Microservices
Recommendations
The cyclic queue and the tandem queue
We consider a closed queueing network, consisting of two FCFS single server queues in series: a queue with general service times and a queue with exponential service times. A fixed number $$N$$ N of customers cycle through this network. We determine the joint ...
Comments