查看原文
其他

案例丨互联网应用灰度发布建设实践

金融电子化 金融电子化 2021-08-11


欢迎金融科技工作者积极投稿!

各抒己见!

投稿邮箱: 

newmedia@fcmag.com.cn

                                 ——金融电子化


文 / 昆山农商银行信息技术部总经理 刘冬剑



2019年6月,昆山农商行信息部历时5个月时间精心打造的灰度发布平台正式在企业网银上线,企业网银从此可以实现不停机地版本发布。在金融科技化的时代,灰度发布可以让应用更快地进行迭代,以更高的频率发布到市场,同时还能减轻运维人员的负担,并且给用户带来更好的体验。




为什么要使用灰度发布


传统金融正在向互联网金融进行转型和过渡,互联网应用的一大特点就是高频率的版本发布,这样才能使业务部门开发的新产品快速地投入市场,获取更多的用户。我行提供的金融服务已经覆盖了企业和个人的方方面面,新功能的发布、第三方接口的变更、问题的修复都会需要进行应用的升级。但是对于运维部门来说,应用变更总是伴随着风险和压力。以往我行每次互联网应用更新均需要在23:00停机后才能进行,经常在凌晨才能完成上线,每次上线投产后由于时间窗口较晚、验证时间较短,有些场景需要隔日验证,无法对所有场景进行覆盖,无法保证互联网应用的稳定性。同时对于业务部门和开发部门来说,新的产品和功能是否能被大部分用户接受,也存在一定的风险。


灰度发布,就是解决以上矛盾的一个最好方法。灰度发布也叫金丝雀发布,名字起源于以前矿工下矿井前,先会放一只金丝雀进去探测是否有有毒气体。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。灰度发布开始到结束期间的这一段时间,称为灰度期。


应用系统通过灰度发布可以实现以下目标。提高应用稳定性:即使新版本出现问题,也只会影响很小部分的用户,波及范围可以提前控制;提高产品质量:灰度发布等于是让用户来参与测试,通过真实流量来检验应用质量,同时可以根据这一小部分尝鲜用户的反馈及时对应用进行改进;应用更新更加有序和自动:以往的变更,需要经历停机、升级、投产、验证,人力资源投入较大,但如果以灰度发布的方式,逐渐更新,就可以实现不停机的应用更新,甚至可以在白天发布应用;应用版本迭代更快:产品不需要等到100%完美才进行发布,同时因为可以实现7~24不停机发版,大大地释放了运维人员的生产力,版本更新的频率可以更快。



灰度发布建设实践


实现灰度发布最重要的两个问题是灰度策略如何制定,以及灰度策略如何执行。灰度策略其实就是决定什么样的请求应该路由到我们的灰度版本上来,以什么为依据。通常有以下几种策略。根据用户灰度:例如账号、ID等,可以精准控制灰度用户,业界使用较多;根据客户端灰度:例如手机类型、浏览器类型等,实现简单,但用户样本比较片面;根据IP灰度:例如某一地区用户,或者某一运营商用户,实现简单,但具有较大随机性。


综合考虑后,我行最终采用根据用户进行灰度的策略,根据不同应用的特点设置用户白名单,基于用户白名单进行灰度发布。


灰度策略执行方面,我行目前针对互联网应用已经建设了部署平台,另外我行所有的互联网应用都通过F5负载均衡器进行交付。基于我行现状,经过项目组的讨论,决定采用部署平台和负载均衡配合的方式实现灰度发布。在负载均衡设备上预设好灰度标志,由部署平台通过F5的API控制负载均衡的灰度标志,当进入灰度状态时,负载均衡设会将白名单用户的交易请求分发至灰度版本应用服务器。



灰度标志


由部署平台调用负载均衡设备的API并存入负载均衡设备的表内,根据预定义,不同的灰度标志状态代表负载均衡设备执行不同的分流策略。


要实现以上方案的灰度发布,需要应用系统、负载均衡设备、部署平台共同改造,根据我行互联网应用类型的不同,分为两种模式。



客户端+资源包模式(手机银行类应用)


客户端+资源包模式灰度发布总体方案如图1所示。

图1  客户端+资源包模式灰度发布架构图


该过程主要分为以下几个步骤。


●生成白名单。


●部署平台执行灰度发布操作。


●部署平台更改负载均衡器灰度标志并更新业务系统白名单为可用。


●客户端发送版本查询交易,服务方根据白名单返回对应版本信息以及灰度特征码至请求方。


●负载均衡器根据客户端请求交易中的灰度特征码对交易进行路由。


●部署平台执行灰度同步操作。


●灰度版本如果出现异常,部署平台执行灰度撤销操作。



无客户端模式(个人网银、企业网银类应用)


无客户端模式灰度发布总体方案如图2所示。

图2  无客户端模式灰度发布架构图


无客户端模式与客户端模式步骤基本相同,区别只是在于第四步,无客户端模式会在用户进行登录交易时进行白名单匹配。



灰度发布的效果


随着互联网科技的不断发展,我行对网上业务越发增多、对网上银行项目越发关心、对网上客户体验越发重视。目前我行每天处理的网上业务已达2000万笔,“7×24小时网上银行服务”理念也应运而生,而实现这一目标并非易事。为了无限靠近这一理念,提高客户体验,信息部人员经历了无数个深夜发版、更新系统,这一切的“恶源”归咎于更新系统时会停机1分钟,这1分钟客户无法做网上交易,也因为这1分钟,付出了信息技术部员工成千上万分钟。


在提升客户体验和减轻员工艰辛的双重目标下,我行特色的灰度发布正式发布,它既满足7×24不停机,哪怕在更新应用时也不会影响客户使用;还满足两种版本共存,让部分人员先行体验抢先版,待抢先版使用无误后再去全面推广使用。大大的提高用户体验,杜绝了非黑即白世界,即生产上出现问题,抢修发版,再测,再发版这样反复操作直至正确的状态。


目前我行企业网银、个人网银、互联网核心、统一支付平台已正式使用灰度发布,达到不停机发布。应用更新频率从两周一次提高到了一周两次,平均每次升级使用的时间从两小时减少到了半小时,而且可以在白天就进行升级操作。相信在不久的将来,我行特色灰度发布将大大减轻员工压力、提高客户体验效果。





往期精选:

(点击查看精彩内容)


●案例 | 电子发票管理系统设计与实现 

● 案例丨新一代国产智能客服系统助力远程银行中心转型

● 案例 | 智能化实时营销平台建设之路

● 案例 | 搭建养老金融精准化服务体系

● 案例 | “银税互动”探索小微金融破局之道






关于仿冒我刊收费的声明





我刊自创刊以来,从未向投稿人收取过任何费用。任何以刊发文章为名向投稿人收取费用的行为,均属于对投稿人的欺诈行为。


我刊官网地址为 www.fcmag.com.cn。

我刊投稿邮箱为 fcmag@fcmag.com.cn。


对于仿冒我刊网站、网页的违法行为,我社将追究其侵权责任,以维护我社和投稿人的合法权益。仿冒网站、网页举报电话:010-88232443




《金融电子化》新媒体部:主任 / 邝源  编辑 / 潘婧 傅甜甜

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存