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

  • Effective DevOps with AWS
  • Yogesh Raheja Giuseppe Borgese Nathaniel Felsen
  • 361字
  • 2021-07-23 16:27:24

Automating deployment

As you now, it is easier to write software in small chunks and deploy the new chunks as soon as possible, to make sure that they are working. To get there, companies practicing DevOps rely on continuous integration and continuous deployment pipelines. Whenever a new chunk of code is ready, the continuous integration pipeline kicks off. Through an automated testing system, the new code is run through all of the relevant, available tests. If the new code shows no obvious regression, it is considered valid and can be merged to the main code base. At that point, without further involvement from the developer, a new version of the service (or application) that includes those new changes will be created and handed off to a system called a continuous deployment system. The continuous deployment system will take the new builds and automatically deploy them to the different environments that are available. Depending on the complexity of the deployment pipeline, this might include a staging environment, an integration environment, and sometimes, a pre-production environment. Ultimately, if everything goes as planned (without any manual intervention), this new build will get deployed to production.

One aspect about practicing continuous integration and continuous deployment that often gets misunderstood is that new features don't have to be accessible to users as soon as they are developed. In this paradigm, developers heavily rely on feature flagging and dark launches. Essentially, whenever you develop new code and want to hide it from the end users, you set a flag in your service configuration to describe who gets access to the new feature, and how. At the engineering level, by dark launching a new feature this way, you can send production traffic to the service, but hide it from the UI, to see the impact it has on your database or on performance, for example. At the product level, you can decide to enable the new feature for only a small percentage of your users, to see if the new feature is working correctly and if the users who have access to the new feature are more engaged than the control group, for example.

主站蜘蛛池模板: 三门县| 秦安县| 视频| 大宁县| 常熟市| 眉山市| 佛学| 金湖县| 华坪县| 托克逊县| 临漳县| 万安县| 伊春市| 襄垣县| 庄浪县| 滨海县| 贵阳市| 泉州市| 礼泉县| 桃源县| 同仁县| 临西县| 肥乡县| 黄大仙区| 英德市| 临猗县| 东源县| 巴林右旗| 潢川县| 天津市| 绥芬河市| 灵台县| 广元市| 南开区| 盐源县| 麻城市| 柞水县| 吉木乃县| 忻州市| 砚山县| 柳林县|