【技术实现步骤摘要】
无侵入式通用代码级灰度路由系统及方法
本专利技术涉及灰度路由领域,尤指一种通用的、代码级别的无侵入式通用代码级灰度路由系统及方法。
技术介绍
目前各个应用涉及业务功能上线的灰度,不同应用或不同功能涉及灰度粒度不同,有些根据机构,有些根据客户号,同时在实现灰度时需要各模块根据不同灰度粒度和范围,用不同程序来区别,程序有侵入性的修改。传统灰度方法分为代码级和系统节点级,系统节点级的灰度一般在网关层进行路由,需要多个节点同时部署运行,运维成本高,需同时维护多套代码,同时灰度期间会有资源浪费,每一个节点都需要申请资源;代码级的灰度运维成本则低很多,只需要维护一套代码就能实现灰度。而代码级灰度方法目前现状大部分是采用if、else的方式,在业务发展中已暴露出如下问题:代码耦合。随着系统功能的逐步完善与系统架构的转型,代码越来越厚重,旧代码不敢删除,怕影响现有功能,新代码则一直在新增if、else的分支中运行,循环往复,代码耦合越来越紧密,对代码维护与重构带来了很大的阻碍。代码侵入。当灰度策略变化时,需要 ...
【技术保护点】
1.一种无侵入式通用代码级灰度路由系统,其特征在于,所述系统包含参数装置、切面装置和路由装置;/n所述参数装置用于根据预设配置规则将灰度要素、路由策略和灰度状态关联于参数表中;/n所述切面装置用于识别各业务功能,当所述业务功能需要路由时于所述参数表中获得所述业务功能的入参数据和参数编号;根据所述入参数据和所述参数编号向所述路由装置发起路由策略申请;以及,根据反馈获得的路由策略和所述入参数据对所述业务功能执行灰度处理;/n所述路由装置用于将接收到的所述参数编号与所述参数表中的灰度要素进行匹配获得多个匹配项,将所述匹配项与预存的多个灰度策略比对,获得比对相符的灰度策略;根据所述 ...
【技术特征摘要】
1.一种无侵入式通用代码级灰度路由系统,其特征在于,所述系统包含参数装置、切面装置和路由装置;
所述参数装置用于根据预设配置规则将灰度要素、路由策略和灰度状态关联于参数表中;
所述切面装置用于识别各业务功能,当所述业务功能需要路由时于所述参数表中获得所述业务功能的入参数据和参数编号;根据所述入参数据和所述参数编号向所述路由装置发起路由策略申请;以及,根据反馈获得的路由策略和所述入参数据对所述业务功能执行灰度处理;
所述路由装置用于将接收到的所述参数编号与所述参数表中的灰度要素进行匹配获得多个匹配项,将所述匹配项与预存的多个灰度策略比对,获得比对相符的灰度策略;根据所述灰度策略获得对应的路由策略,将所述路由策略反馈至所述切面装置。
2.根据权利要求1所述的无侵入式通用代码级灰度路由系统,其特征在于,所述参数装置包含参数配置模组、参数装载模组和参数编辑模组;
所述参数配置模组用于根据预设配置规则将灰度要素、路由策略和灰度状态关联于参数表中;
所述参数装载模组用于加载所述参数配置模组中存储的参数表,将所述参数表提供至所述切面装置和所述路由装置调用;
所述参数编辑模组用于当新增或路由策略与灰度状态发生变化时,修改所述参数配置模组中的所述参数表。
3.根据权利要求1所述的无侵入式通用代码级灰度路由系统,其特征在于,所述切面装置包含切面配置模组和决策执行模组;
所述切面配置模组用于获取系统中涉及灰度的业务功能信息,通过预定标识标识所述业务功能信息对应的业务功能;
所述决策执行模组用于识别各业务功能,当所述业务功能需要路由时于所述参数表中获得所述业务功能的入参数据和参数编号;根据所述入参数据和所述参数编号向所述路由装置发起路由策略申请;以及,根据反馈获得的路由策略和所述入参数据对所述业务功能执行灰度处理。
4.根据权利要求1所述的无侵入式通用代码级灰度路由系统,其特征在于,所述路由装置包含路由策略配置模组、路由策略复用模组和路由决策模组;
所述路由策略配置模组用于预存多个灰度策略与路由策略的关联关系;
所述路由策略复用模组用于遍历所述灰度策略与所述业务功能的对应关系,当多个不同所述业务功能使用相同的灰度策略时,根据所述灰度策略生成灰度策略模板,以所述灰度策略模板作为对应的多个不同所述业务功能的灰度策略;
所述路由决策模组用于将接收...
【专利技术属性】
技术研发人员:李芳,张建荣,蒋忆成,姚鑫,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。