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

Microservices deployment

In Chapter 2, Anatomy of Microservice Decomposition Services, we created a distributed application based on the microservice architecture and architected the application as a set of services. We can now deploy each service as a set of service instances to improve throughput and availability. The microservice architecture makes the service deployable and scalable, meaning all service instances are isolated from each other.

The microservice architecture allows us to build and deploy a service quickly. It also allows us to limit the number of resources used, including CPU, memory, and I/O resources. A microservice application has tens of hundreds of services. You can independently increase or decrease resources of a deployment machine based on the usage of a service. Microservices also allow you to write a service in any language and framework, so you can provide the infrastructure for a service accordingly. You can monitor each service independently and deploy a service according to its behavior.

For example, imagine that you need to run a service with a certain number of instances based on the demand for the service in a business application. With a microservice application, you can easily achieve this by adding multiple VMs or containers for that particular service. You can also provide the appropriate CPU, memory, and I/O resources for each instance. The challenging aspect of a microservice application is that the service deployment must be fast, reliable, and cost-effective.

We have a few strategies that we can use to deploy the microservices of a distributed application; they are as follows:

  • Multiple instances of microservices per host
  • A single instance of a microservice per host: 
    • A single instance of a microservice per VM 
    • A single instance of a microservice per container 

These microservice deployment patterns were suggested by Chris Richardson on his blog, https://microservices.io/.

Let's now have a look at each strategy in detail.

主站蜘蛛池模板: 红原县| 衡东县| 鹤岗市| 永昌县| 紫金县| 娱乐| 广昌县| 得荣县| 克拉玛依市| 社旗县| 麻城市| 大足县| 静宁县| 石林| 随州市| 长宁县| 白玉县| 禄丰县| 万荣县| 滨海县| 新巴尔虎右旗| 沁阳市| 名山县| 晴隆县| 昭觉县| 垦利县| 北票市| 淳化县| 正安县| 襄城县| 萨迦县| 晋宁县| 绥棱县| 乌拉特前旗| 普陀区| 深州市| 琼海市| 航空| 利津县| 德庆县| 平南县|