官术网_书友最值得收藏!

Scalability

Microservices should be designed to be independently scalable. If we need to increase how many requests we can handle or how many records we can hold, we should do it in isolation. We should avoid that, due to a coupling on the architecture; the only way to scale our application is scaling several components together or through the system as a whole.

Let's go back to the original SoA application example and handle a scenario where we need to scale our offers capability:

Example of scaling a coupled SoA application

Even if what we need to scale is our offer capability, due to the coupling of the system, we need to do it as whole. We will increase how many instances of the presentation and business layer we have, and we increase our database either with more instances or with a bigger database. Probably, we may need to also update some of those servers as the resources that they require will increase. In a microservices architecture, we could just scale the elements that are needed. Let's view how we could scale the same application using microservices:

Example of scaling a microservice application

We have just increased what was required for the offers' capability and to keep the rest of the architecture intact, we need to consider that in microservices, those servers are smaller and don't need as many resources due to their limited scope.


In a well-designed microservice architecture, we could effectively have more capacity with less infrastructure since it could be optimized for more accurate use and be scaled independently.

We will review more about this topic in the Cloud Native microservices section of this chapter.

主站蜘蛛池模板: 莒南县| 泗洪县| 镇安县| 中超| 德保县| 武川县| 抚宁县| 湖北省| 科尔| 西和县| 武穴市| 五原县| 天全县| 郑州市| 瓮安县| 彰化县| 高平市| 宁国市| 大同县| 库尔勒市| 公主岭市| 高州市| 中卫市| 芦溪县| 安义县| 宝应县| 大安市| 读书| 石首市| 曲阳县| 鹤庆县| 武穴市| 黑山县| 武安市| 子洲县| 昌宁县| 沂水县| 襄汾县| 晋江市| 麦盖提县| 闵行区|