Microservice architecture is an architectural style suitable for large software projects. The main goals of microservices are flexible on-demand scalability and short release cycles. Microservice architecture decomposes applications into multiple independent components (called microservices), each running in its own process. This sets microservice applications apart from monoliths, which run in a single process. This paper describes the characteristics of both architectures and explores under which circumstances a shift from a monolith towards the more costly microservice architecture is justified.
Furthermore, the paper describes (non-)technical challenges that arise in that shift.

Published in: International Conference on Information Society (i-Society 2017)

  • Date of Conference: 17-19 July 2017
  • DOI: 10.2053/iSociety.2017.0011
  • ISBN: 978-1-908320-80-3
  • Conference Location: Dublin, Ireland