德州网站建设公司,视频营销发布平台包括,线上销售有哪些渠道,广州省建设监理协会网站原文网址#xff1a;不停服更新应用的方案#xff1a;蓝绿发布、滚动发布、灰度发布_IT利刃出鞘的博客-CSDN博客
简介
本文介绍不停服更新应用的方案#xff1a;蓝绿发布、滚动发布、灰度发布。
升级服务器的应用时#xff0c;要停止掉老版本服务#xff0c;将程序上传…原文网址不停服更新应用的方案蓝绿发布、滚动发布、灰度发布_IT利刃出鞘的博客-CSDN博客
简介
本文介绍不停服更新应用的方案蓝绿发布、滚动发布、灰度发布。
升级服务器的应用时要停止掉老版本服务将程序上传到服务器再启动新版本。但是这种方式存在问题服务是中断的用户无法使用用户体验巨差。
方案1蓝绿发布
概念
同时运行两个版本的应用。如下图所示不停止老版本直接部署一套新版本等新版本运行起来后再将流量切换到新版本上。
缺点
蓝绿部署要求在升级过程中同时运行两套程序对硬件的要求就是日常所需的二倍比如日常运行时需要10台服务器支撑业务若使用蓝绿部署你就需要购置二十台服务器。 方案2滚动发布
含义
在升级过程中并不是一下子启动所有新版本而是先启动一台新版本再停止一台老版本然后再启动一台新版本再停止一台老版本直到升级完成。
优点
占用资源少。如果日常需要10台服务器那么升级过程中也就只需要11台就行了。
缺点
升级过程中是旧版本和新版本一起运行如果发现了问题比较难以确定是新版本还是老版本造成的问题。
为了解决这个问题我们需要为滚动升级提供流量控制能力。 方案3灰度发布
含义
灰度发布也叫金丝雀发布起源是矿井工人发现金丝雀对瓦斯气体很敏感矿工会在下井之前先放一只金丝雀到井中如果金丝雀不叫了就代表瓦斯浓度高。
灰度发布时先启动一个新版本应用但是并不直接将流量切过来而是测试人员对新版本进行线上测试启动的这个新版本应用就是我们的金丝雀。如果没有问题那么可以将少量的用户流量导入到新版本上然后再对新版本做运行状态观察收集各种运行时数据如果此时对新旧版本做各种数据对比就是所谓的A/B测试。
当确认新版本运行良好后再逐步将更多的流量导入到新版本上在此期间还可以不断地调整新旧两个版本的运行的服务器副本数量以使得新版本能够承受越来越大的流量压力。直到将100%的流量都切换到新版本上最后关闭剩下的老版本服务完成灰度发布。
如果在灰度发布过程中灰度期发现了新版本有问题就应该立即将流量切回老版本上这样就会将负面影响控制在最小范围内。
优点
占用资源少。如果日常需要10台服务器那么升级过程中也就只需要11台就行了。
缺点
需要根据用户来将流量请求到新服务上需要一定的代码量。