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

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.

主站蜘蛛池模板: 大冶市| 宁晋县| 望城县| 大荔县| 南开区| 玉田县| 道真| 岳普湖县| 郸城县| 嘉鱼县| 屏边| 曲沃县| 蒙城县| 康平县| 府谷县| 临桂县| 余干县| 东乡县| 濮阳市| 田阳县| 英德市| 伊宁市| 格尔木市| 鄂尔多斯市| 石棉县| 山东省| 察雅县| 沙田区| 陕西省| 五寨县| 米林县| 萨迦县| 曲周县| 广宁县| 休宁县| 峨眉山市| 时尚| 兰西县| 呼伦贝尔市| 专栏| 调兵山市|