Advertisement

Performance Analysis of Monolithic and Micro Service Architectures – Containers Technology

  • Alexis Saransig
  • Freddy Tapia
Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 865)

Abstract

Comparative analysis of the performance of hardware resources, between Monolithic Architecture and Micro services Architecture, using virtualization technology based on development and production environments. Today, the new trend is the development and/or deployment of applications in the Cloud, in this aspect, monolithic applications have flexibility, scalability, maintainability and performance limitations. On the other hand, the focus of Microservices adapts to new trends and solves these limitations. Meanwhile, virtualization with virtual machines is currently not efficient enough with hardware resources. With the appearance of containers, this problem is solved due to its functioning characteristics as independent processes and resources optimization. Now, two scenarios are presented, the first consisting of a Web application based on a Monolithic Architecture that is executed in a Kernel based Virtual Machine - KVM and the second scenario shows the same Web application, this time, based on a Micro services Architecture and running in containers. Each scenario is subjected to the same stress tests; the generated data are recorded in “log” files for further analysis. The hardware resources are the same for both scenarios. The comparison of these scenarios helps to identify the efficiency of the Application and the hardware resources, as well as the development and/or deployment of Applications. This can be improved with the use of Microservices and Containers. In addition, the reduction of costs that would imply the optimization in the resources. For greater reliability in the interpretation of the data, two analysis tools were used: JMeter and NewRelic. Finally, the two resulting cases from the analysis are shown, each case being considered due to the feasibility of the same depending on the needs and availability of resources.

Keywords

Monolithic Architecture Micro services Containers Performance 

References

  1. 1.
    Nielsen, C.D.: Investigate availability and maintainability within a microservice architecture (2015). http://cs.au.dk/fileadmin/site_files/cs/AA_pdf/ClausDNielsen_rapport.pdf
  2. 2.
    Sun, L., Li, Y., Memon, R.A.: An open IoT framework based on microservices architecture. China Commun. 14, 154–162 (2017)CrossRefGoogle Scholar
  3. 3.
    Kratzke, N.: About microservices, containers and their underestimated impact on network performance. In: ResearchGate, Lubeck, Germany (2015)Google Scholar
  4. 4.
    Fowler, M., Lewis, J.: Microservices. https://martinfowler.com/articles/microservices.html
  5. 5.
    Fussell, M.: Why a microservices approach to building applications? https://docs.microsoft.com/es-es/azure/service-fabric/service-fabric-overview-microservices
  6. 6.
    Newman, S.: Building Microservices: Designing Fine-Grained Systems. O’Reilly Media, Inc., Sebastopol (2015)Google Scholar
  7. 7.
    Felter, W., Ferreira, A., Rajamony, R., Rubio, J.: An updated performance comparison of virtual machines and linux containers. In: 2015 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp. 171–172. IEEE (2015)Google Scholar
  8. 8.
    Bartholomew, D.: Qemu: a multihost, multitarget emulator. Linux J. 2006, 3 (2006)Google Scholar
  9. 9.
    Prashant, D.: A survey of performance comparison between virtual machines and containers. 4, (2016)Google Scholar
  10. 10.
    Scott, J.: A practical guide to microservices and containers: mastering the cloud, data and digital transformation (2017)Google Scholar
  11. 11.
    Vaughan-Nichols, S.J.: New approach to virtualization is a lightweight. Computer 39, 12–14 (2006)CrossRefGoogle Scholar
  12. 12.
    Khazaei, H., Barna, C., Beigi-Mohammadi, N., Litoiu, M.: Efficiency analysis of provisioning microservices. In: 2016 IEEE International Conference on Cloud Computing Technology and Science (CloudCom), pp. 261–268 (2016)Google Scholar
  13. 13.
    Stubbs, J., Moreira, W., Dooley, R.: Distributed systems of microservices using docker and serfnode. In: 2015 7th International Workshop on Science Gateways, pp. 34–39 (2015)Google Scholar
  14. 14.
    Pahl, C.: Containerization and the PaaS Cloud. IEEE Cloud Comput. 2, 24–31 (2015)CrossRefGoogle Scholar
  15. 15.
    Gerlach, W., Tang, W., Keegan, K., Harrison, T., Wilke, A., Bischof, J., D’Souza, M., Devoid, S., Murphy-Olson, D., Desai, N., et al.: Skyport: container-based execution environment management for multi-cloud scientific workflows. In: Proceedings of the 5th International Workshop on Data-Intensive Computing in the Clouds, pp. 25–32. IEEE Press (2014)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Universidad Técnica del NorteIbarraEcuador
  2. 2.Universidad de las Fuerzas Armadas ESPESangolquíEcuador

Personalised recommendations