Microservices: Considerations before implementation

 |  Login

Show simple item record

dc.contributor Aalto University en
dc.contributor Aalto-yliopisto fi
dc.contributor.advisor Bragge, Johanna
dc.contributor.author Könönen, Heini
dc.date.accessioned 2018-06-27T09:51:12Z
dc.date.available 2018-06-27T09:51:12Z
dc.date.issued 2018
dc.identifier.uri https://aaltodoc.aalto.fi/handle/123456789/32232
dc.description.abstract Microservices is a relatively recent pattern in software architecture, but it is in wide use already and is used to develop the flagship products of some of the world’s most popular services, such as Netflix and Spotify. The pattern is evolving organically from the development practices so there is relatively little formal academic research on it. This thesis explains the benefits and potential risks of moving from a monolithic software architecture to a microservices architecture, in a manner understandable to non-developers. In a nutshell, microservices architecture breaks up large, monolithic software projects into small, discrete and modular ‘services’. The services can be developed separately, sometimes by different teams, and can be deployed independently of each other. Some key benefits are the possibility of using specialized tech stacks for different services, smaller and easier to understand codebases, improved productivity and collaboration between development teams and more robust and flexible systems. Microservices based software is also better suited to cloud computing, which can reduce infrastructure costs. However, this does not mean that all software projects should be microservices. There are situations in which a monolithic pattern has advantages. First and foremost, applying microservices effectively needs a certain degree of expertise, and since the trend is recent, qualified developers can be hard to find. It is also arguably easier to manage a monolithic architecture with a small team, at least in the beginning. Secondly, microservices architecture is said to move the complexity from the code base to the infrastructure. Microservices can be needlessly complex and expensive if the project isn’t meant to scale for many users or is a prototype or proof-of-concept. en
dc.format.extent 23 + 6
dc.format.mimetype application/pdf en
dc.language.iso en en
dc.title Microservices: Considerations before implementation en
dc.type G1 Kandidaatintyö fi
dc.contributor.school Kauppakorkeakoulu fi
dc.contributor.school School of Business en
dc.contributor.department Tieto- ja palvelujohtamisen laitos fi
dc.subject.keyword microservices en
dc.subject.keyword SOA en
dc.subject.keyword monolithic en
dc.subject.keyword software architecture en
dc.subject.keyword modularity en
dc.identifier.urn URN:NBN:fi:aalto-201806273641
dc.type.ontasot Bachelor's thesis en
dc.type.ontasot Kandidaatintyö fi
dc.programme Tieto- ja palvelujohtaminen en

Files in this item

This item appears in the following Collection(s)

Show simple item record

Search archive

Advanced Search

article-iconSubmit a publication


My Account