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

Canary deployment

Canary deployment is a deployment technique involving a gradual shift in production traffic from version A to version B, where version B is the latest version and version A is the previous version. AWS has recently introduced traffic shifting for Lambda functions aliases. An alias is a pointer to a specific version of the Lambda functions, which basically means that we can split the traffic of the functions between two different versions by specifying the percentage of incoming traffic that we want to direct to the new release. Lambda will automatically load balance requests between versions when aliases are invoked. So instead of replacing one function with another version, both versions can coexist and can be monitored as to how they perform. 

All of this sounds awesome, but doing all this it not that easy. Fortunately, AWS already has a service that will help us with this problem—CodeDeploy. To use canary deployment with the AWS CodeDeploy service, we need to create a variety of resources. We need to create a CodeDeploy application, a deployment group, and aliases for the functions. We also need to create new permissions and replace all the event sources to trigger the aliases instead of the latest functions. But this can be much easier if we use the canary deployment plugin with Serverless Framework. Let's learn how we can achieve this using an example.

The code that we will be working on in the following recipe is available at  :https://github.com/shzshi/my-canary-deployment.git .
主站蜘蛛池模板: 娄底市| 永善县| 陇南市| 海丰县| 平凉市| 盖州市| 浦东新区| 东乡县| 清远市| 襄樊市| 江陵县| 丰顺县| 新乡县| 修武县| 鲁甸县| 团风县| 越西县| 林州市| 含山县| 乌拉特前旗| 德安县| 镶黄旗| 奎屯市| 仁化县| 宁化县| 贵南县| 铜梁县| 马鞍山市| 嘉义县| 黄大仙区| 洛川县| 郎溪县| 嵩明县| 临江市| 马山县| 阜新| 永泰县| 梓潼县| 平泉县| 邳州市| 邹平县|