APP下载

探讨通过MQ实现接口灰度发布的一种模式

2016-03-18

移动信息 2016年11期
关键词:校验灰度订单

马 龙



探讨通过MQ实现接口灰度发布的一种模式

马 龙

福建富士通信息软件有限公司,福建 福州 350003

灰度发布在互联网产品的应用越来越广泛,逐步演变成为一种信息系统平稳升级过渡的发布理念。传统的信息系统升级方式是做一次性的软件更新,这种跳跃式升级风险极大,在追求用户极致体验的思维下已不合时宜。针对电信运营商系统,通过对校验及时率指标的详细分析,详细说明如何在业务规则非常复杂的电信业务受理系统中,针对接口服务应用灰度发布技术进行平稳升级。

灰度发布;MQ技术;校验及时率

引言

以某电信运营商为例,目前4G业务的受理已实现全国集中,业务受理的界面全国统一集中,而业务规则的校验分省处理实现个性化,集中系统与省级系统之间通过两级接口交互实现规则校验。假设运营商对业务规则校验的5 s及时率要求99 %以上,虽然两级接口的交互走DCN内网,但由于电信行业的业务规则复杂繁多,校验及时率这个指标对信息系统而言是一个重大的挑战。

1 校验及时率指标

在进一步探讨接口灰度发布模式之前,需要对本文探讨的校验及时率指标做进一步的说明,营业受理的步骤是:

(1)客户查询;(2)信息采集;(3)订单提交;(4)协议打印;(5)订单确认;(6)受理完成。

首先,校验及时率是第3步,即订单提交时触发的,是对业务规则校验接口的考核,电信行业业务复杂,规则数量达到上百个且不可遗漏任何一个规则。

其次,业务受理在订单提交时下省做规则校验,一旦在第5步订单确认后,即对用户的档案进行变更后,即使对同一个用户,同样的受理信息再次进行规则校验,校验的结果全然不同。

再次,业务规则不断叠加是电信系统的一个特点,而由于校验及时率指标的存在,信息系统都存在持续优化规则校验接口性能的压力。

最后,由于校验接口决定业务是否可以继续办理,对营业而言极其敏感,持续优化的过程中,如何保证接口性能确实是提升的,业务规则逻辑是对的,升级必须是平稳的,就成为研发人员的一个重大挑战。

2 利用MQ实现接口灰度发布

灰度发布是一种理念,如何应用这种理念让软件系统升级方式更平稳,达到让产品最大限度稳定的目的,是本文探讨的重点。应用灰度发布的理念来提升校验及时率指标,先看两种模式对比:

图1

3 A/B版本共存实现灰度引流

A版本为提供给运营商的两级接口调用的生产当前版本,B版本为生产下一个版本。实现灰度引流,首先必须让两个版本必须是共存的,即A版本为生产提供即时服务,B版本是优化后的版本,用以验证优化效果,以供评估是否可以替换B版本。

评估的关键在于两个指标:指标一是B版本验证的结果必须与A版本一致,若不一致说明B版本存在逻辑错误,必须先行修正;指标二是取得A/B版本的具体耗时数据,对比提升度,以确定是否符合升级条件。

4 引入MQ实现灰度引流的优势

首先,原本只是针对A版本进行规则校验,而通过B版本再次规则校验增加了系统的处理逻辑,如何能否避免对A版本的校验性能不产生影响,是一个关键考虑要素。

其次,由于第5步进行订单确认之后,用户档案发生变化,因此一旦订单确认之后再做引流校验,两次校验的结果会截然不同,导致无参考意义,因此必须保证在订单确认之前完成校验过程,而第3步和第5步之前间隔的时间预计为三十秒。

如上两点的限制,MQ技术则能充分避开且充分发挥自身在这两点上的优势,在对A版本校验完毕后,通过MQ抛出校验消息给B版本,保证对A版本的校验性能影响最小化,同时由于MQ的高并发性,能最大限度保障在三十秒的时间内完成两次校验,从而非常完美地解决了这两个问题。

5 两个关键权衡点分析

应用MQ技术实现接口灰度发布,有两个关键点要考虑:(1)关键点一:MQ出现消息堵MQ可能会出现消息堵的情况,由于步骤3和步骤5之间相距时间甚短,一旦消息堵了,导致在步骤5之后B版本才收到校验消息事件,此时的校验结果与A版本不一致,此类数据必须剔除考虑,不记入指标判断。由于MQ的高性能,实际应用中此类数据为少数。(2)关键点二:数据库的性能影响。引入接口灰度发布技术后,对数据库的压力是增加的,原来只在A版本校验,现在同时通过B版本进行校验,单独针对校验及时率指标而言,数据库的压力是翻倍的,这点可以通过控制灰度引流流的节点数量来进行限制,否则无形中也会对A版本的校验性能有所影响。

6 结束语

本文针对校验及时率指标这种场景进行详细说明,对系统升级遇到的困扰进行分析,探讨如何将MQ技术与灰度发布理念相结合,应用于该情境下,从而探讨接口灰度发布的一种模式,该模式带来了极大的好处,使得校验及时率指标的优化结果可以在事前即可得知,从而极大提高用户体验的同时,降低对系统升级维护的压力。

在互联网思维下,特别是分布式架构系统的逐步盛行,对系统升级的平稳性要求将越来越高。灰度发布作为一种理念,必定会在软件系统的升级过程中,有越来越大的用武之地。

[1]子柳.淘宝技术这十年[M].北京:电子工业出版社,2013.

Discussion on the realization of a model of gray scale release through MQ

Malone

Fujitsu Information Software Co.,Ltd.,Fujian Fuzhou 350003

the application of gray scale distribution in Internet products is more and more widely,and gradually evolved into a new information system to upgrade the transition of the concept of a smooth transition. The traditional way to upgrade the information system is to do a one-time software updates,this kind of jump upgrade risk is great,in the pursuit of the ultimate user experience has been outdated thinking. According to the system of telecom operators,through a detailed analysis of the timely check index,detailed description of how the business rules are very complex telecom business acceptance system,aiming at the application interface service gray technologies are steadily upgrade.

gray release;MQ technology;check and timely rate

TN919.81

A

1009-6434(2016)11-0132-02

马龙(1983—),男,福建尤溪人, 汉族,职称为软件工程师,学历本科。研究方向为电信行业。

猜你喜欢

校验灰度订单
春节期间“订单蔬菜”走俏
订单农业打开广阔市场
采用改进导重法的拓扑结构灰度单元过滤技术
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
“最确切”的幸福观感——我们的致富订单
炉温均匀性校验在铸锻企业的应用
基于最大加权投影求解的彩色图像灰度化对比度保留算法
结合抓包实例分析校验和的计算
基于灰度线性建模的亚像素图像抖动量计算
大型电动机高阻抗差动保护稳定校验研究