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

Independent deployment

A standard aspect of the professional software development world is version control. This is because developers are pretty much working on features and maintenance of legacy code in the same application, at the same time.

In the end, a landmark (tag) is created in the application and this landmark is sent to production; this process is called deployment. At that same point, some problems may arise.

Let's consider a situation; in our news portal, one developer is working on an important feature for recommendations while another developer is working on fixing bugs. Both commit to hitting the same target. At the time of deployment, there is a major problem. The bug in news was not fixed successfully, which prevented the new feature from going into production. Software can be thoroughly tested, and even though much attention is given to each task, the unforeseen can still happen.

When it comes to microservices, this kind of problem is reduced drastically. Rethink the same scenario.

On our news portal, one developer is working for a few weeks on an important feature for the Recommendations microservice and another developer is working on a bug in the news microservice. Both commit to hitting the same target, each in their respective microservice; however, we still encounter a problem during deployment. The bug in news was not fixed successfully, which prevents the new version of the news microservice from going into production, but the Recommendations microservice is perfect and the new feature goes into production without any problems.

This is perhaps one of the main positive points when it comes to independent deployment. Of course, the complexity of maintaining the operation of multiple machine instances generates more complexity, but if you think about it, in a world of cloud computing, the complexity of multiple instances would be the same even though the application was monolithic, as the need for scalability is always real.

Later in the book, we see some patterns of deployment; we just focus on reducing complexity and practicality to perform deploys continuously.

主站蜘蛛池模板: 贡嘎县| 信宜市| 大方县| 芮城县| 莱西市| 宁武县| 赫章县| 普定县| 枝江市| 太原市| 昌乐县| 隆子县| 莱阳市| 上思县| 淮滨县| 宁化县| 衡山县| 大石桥市| 安平县| 台安县| 鄂尔多斯市| 黄大仙区| 浦城县| 天镇县| 略阳县| 神池县| 福海县| 株洲县| 无锡市| 黑龙江省| 重庆市| 凌源市| 康平县| 泌阳县| 盐源县| 甘德县| 昭觉县| 双峰县| 台东县| 广宁县| 二连浩特市|