A Probe into the Technological Enablers of Microservice Architectures

  • Christina Terese JosephEmail author
  • K. Chandrasekaran
Part of the Studies in Computational Intelligence book series (SCI, volume 771)


Microservice architectures (MSA), composed of loosely coupled and autonomous units called microservices, are gaining wide adoption in the software field. With characteristics that are loyal to the requirements of the Cloud environment, such as inherent support for continuous integration/continuous deployment (CI/CD), MSA are actively embraced by the Cloud computing community. Containers employing lightweight virtualization have also been increasingly adopted in the Cloud environment. The containers wrap applications along with their dependencies into self-contained units, which can be deployed independently. These features make it the unanimously accepted technology to enable seamless execution of microservices in the Cloud. With this outlook, this chapter undertakes a study on how containers may be used to support the execution of microservices. The study also includes other technologies that, in collaboration with container technologies, provide the support required for running microservices in the Cloud. An interesting concern for applications running on containers is resource management. Nevertheless, this is a significant aspect for supporting microservices as well. Such issues have been identified and research works addressing all or some of these issues, have been considered. The various relevant studies have been classified into different categories and the future directions have been identified, which can be used by researchers aiming to enhance the technological support for microservices in Cloud.


  1. 1.
    Richards, M. 2015. Microservices vs. service-oriented architecture. O’Reilly Media.Google Scholar
  2. 2.
    Richardson, C. 2016. Microservices- from design to deployment. NGINX, Inc.Google Scholar
  3. 3.
    Newman, S. 2015. Building microservices: designing fine-grained systems. O’Reilly Media, Inc.Google Scholar
  4. 4.
    Amaral, M., J. Polo, D. Carrera, I. Mohomed, M. Unuvar, and M. Steinder. 2015. Performance evaluation of microservices architectures using containers. In IEEE 14th International Symposium on Network Computing and Applications (NCA), 27–34. IEEE.Google Scholar
  5. 5.
    Kang, H., M. Le, and S. Tao. 2016. Container and microservice driven design for cloud infrastructure devops. In IEEE International Conference on Cloud Engineering (IC2E), 202–211. IEEE.Google Scholar
  6. 6.
    Peinl, R., F. Holzschuher, and F. Pfitzer. 2016. Docker cluster management for the cloud-survey results and own solution. Journal of Grid Computing 14 (2): 265–282.CrossRefGoogle Scholar
  7. 7.
    Stubbs, J., W. Moreira, and R. Dooley. 2015. Distributed systems of microservices using docker and serfnode. In 7th International Workshop on Science Gateways (IWSG), 34–39. IEEE.Google Scholar
  8. 8.
  9. 9.
    Rkt, C. 2017.
  10. 10.
    Containers, L. 2017.
  11. 11.
  12. 12.
  13. 13.
  14. 14.
  15. 15.
    Yu, H.E., and W. Huang. 2015. Building a virtual hpc cluster with auto scaling by the docker. arXiv:1509.08231.
  16. 16.
  17. 17.
    CoreOS/etcd: (Oct 2017),
  18. 18.
  19. 19.
    Netflix: Netflix ribbon. 2017.
  20. 20.
  21. 21.
  22. 22.
    Olliffe, G. 2017. Microservices: Building services with the guts on the outside. Microservices: Building Services with the Guts on the Outside.
  23. 23.
    Havet, A., V. Schiavoni, P. Felber, M. Colmant, R. Rouvoy, and C. Fetzer. 2017. Genpack: A generational scheduler for cloud data centers. In IEEE International Conference on Cloud Engineering (IC2E), 95–104. IEEE.Google Scholar
  24. 24.
    Sun, Y., J. White, B. Li, M. Walker, and H. Turner. 2017. Automated qos-oriented cloud resource optimization using containers. Automated Software Engineering 24 (1): 101–137.CrossRefGoogle Scholar
  25. 25.
    Nardelli, M., C. Hochreiner, and S. Schulte. 2017. Elastic provisioning of virtual machines for container deployment. In Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, 5–10. ACM.Google Scholar
  26. 26.
    Awada, U., and A. Barker. 2017. Improving resource efficiency of container-instance clusters on clouds. In Proceedings of the 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, 929–934. IEEE Press.Google Scholar
  27. 27.
    Sangpetch, A., O. Sangpetch, N. Juangmarisakul, and S. Warodom. 2017. Thoth: Automatic resource management with machine learning for container-based cloud platform. In CLOSER 2017 - Proceedings of the 7th International Conference on Cloud Computing And Services Science, April 24–26, 75–83. Portugal: Porto.Google Scholar
  28. 28.
    Nadgowda, S., S. Suneja, N. Bila, and C. Isci. 2017. Voyager: Complete container state migration. In IEEE 37th International Conference on Distributed Computing Systems (ICDCS), 2137–2142. IEEE.Google Scholar
  29. 29.
    Toffetti, G., S. Brunner, M. Blöchlinger, J. Spillner, and T.M. Bohnert. 2017. Self-managing cloud-native applications: Design, implementation, and experience. Future Generation Computer Systems 72: 165–179.CrossRefGoogle Scholar
  30. 30.
    de Alfonso, C., A. Calatrava, and G. Moltó. 2017. Container-based virtual elastic clusters. Journal of Systems and Software 127: 1–11.CrossRefGoogle Scholar
  31. 31.
    Kratzke, N. 2017. Smuggling multi-cloud support into cloud-native applications using elastic container platforms. In 7th International Conference on Cloud Computing and Services Science (CLOSER 2017), 29–42.Google Scholar
  32. 32.
    Nardelli, M. 2017. Elastic allocation of docker containers in cloud environments. In ZEUS, 59–66.Google Scholar

Copyright information

© Springer Nature Singapore Pte Ltd. 2019

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringNational Institute of TechnologyKarnatakaIndia

Personalised recommendations