- Docker and Kubernetes for Java Developers
- Jaroslaw Krochmalski
- 186字
- 2021-07-02 18:44:55
An introduction to microservices
By definition, microservices, also known as the Microservice Architecture (MSA), is an architectural style and design pattern which says that an application should consist of a collection of loosely-coupled services. This architecture decomposes business domain models into smaller, consistent pieces implemented by services. In other words, each of the services will have its own responsibilities, independent of others, each one of them will provide a specific functionality.
These services should be isolated and autonomous. Yet, they of course need to communicate to provide some piece of business functionality. They usually communicate using REST exposures or by publishing and subscribing events in the publish/subscribe way.
The best way of explaining the reasoning behind the idea of microservices is to compare them with an old, traditional approach for building large applications, the monolithic design.
Take a look at the following diagram presenting the monolithic application and distributed application consisting of microservices:

As you can see on the previous diagram, the monolithic application differs totally from an application created using the microservices architecture. Let's compare the two approaches and point out their advantages and flaws.
- DBA攻堅指南:左手Oracle,右手MySQL
- 零基礎(chǔ)PHP學(xué)習筆記
- Mastering QGIS
- FreeSWITCH 1.6 Cookbook
- 匯編語言程序設(shè)計(第3版)
- SQL Server 2012數(shù)據(jù)庫管理與開發(fā)項目教程
- Android底層接口與驅(qū)動開發(fā)技術(shù)詳解
- 自制編程語言
- MATLAB for Machine Learning
- Android程序設(shè)計基礎(chǔ)
- Android應(yīng)用開發(fā)深入學(xué)習實錄
- 深度探索Go語言:對象模型與runtime的原理特性及應(yīng)用
- 深入實踐DDD:以DSL驅(qū)動復(fù)雜軟件開發(fā)
- AngularJS UI Development
- 網(wǎng)絡(luò)綜合布線與組網(wǎng)實戰(zhàn)指南