本发明涉及数据处理,特别涉及一种基于长连接的放量回切方法。
背景技术:
1、在新功能发布时,往往面临着功能稳定性、兼容性和用户对新功能的认可度等问题。传统的功能迭代通常采用一次性全量发布,一旦发生生产故障会造成影响范围大,修复和回退代价高等问题,为此,提出一种基于长连接的放量回切方法。
技术实现思路
1、有鉴于此,本发明实施例希望提供一种基于长连接的放量回切方法,以解决或缓解现有技术中存在的技术问题,至少提供一种有益的选择。
2、本发明实施例的技术方案是这样实现的:一种基于长连接的放量回切方法,包括以下步骤:
3、s1、定义grayreleaseservice类,设计模式为单例模式;
4、s2、将整个grayreleaseservice打包为一个npm包存放到白龙马私服上;
5、s3、在项目入口文件中引入grayreleaseservice sdk,并且需要通过使用grayreleaseservice.getinstance()获取实例,初始化一次,多次调用,入参为长连接消息监听的回调;
6、s4、调用init方法,注册长连接消息监听,用以接受放量消息变更提醒。
7、在一些实施例中,在所述s1具体步骤如下:
8、s11、入参用于放量数据回调;
9、s12、静态方法用于getinstance获取单例实例;
10、s13、将init初始化、getconfig获取云控放量配置和updateconfig更新云控放量配置。
11、在一些实施例中,在所述s4中,放量在需要放量的功能a页面,通过grayreleaseservice实例,传入放量标识获取放量状态,多个放量标识同时存在时,对相同放量标识缓存,减少放量接口请求次数。
12、在一些实施例中,在所述s4中,消息变更是产品通知需要对租户cp1的功能a进行放量,研发通过接口更新功能a对应的放量标识云控配置从而触发消息变更。
13、在一些实施例中,在所述s4中,前端接收到消息变更,命中租户cp1,判断功能a对应的放量标识是否打开决定是否展示功能a,完成实时放量,支持全量和单个租户放量。
14、在一些实施例中,在所述s1中,为了grayreleaseservice类的实现,它包含了灰度发布(gray release)的基本功能,其主要职责是管理灰度发布过程,包括设置候选版本、设置灰度发布的用户比例、实际执行灰度发布、监控以及必要时回滚。
15、本发明实施例由于采用以上技术方案,其具有以下优点:
16、一、本发明通过本申请的方法,相较于传统的新功能上线增加了渐进式放量以及快速回切,接入长连接解决了传统放量功能用户不刷新,放量逻辑不生效的痛点,放量功能近实时生效,放量维度可随意定制,支持大到一个功能模块,小到一个按钮级别的控制,灵活控制,支持动态调整放量和回切比例。
17、二、本发明通过本申请方法,实现是功能的逐步推广与故障回切,从少量到全量平滑过渡,提升产品稳定性和用户体验。
18、上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。
1.一种基于长连接的放量回切方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于长连接的放量回切方法,其特征在于:在所述s1具体步骤如下:
3.根据权利要求1所述的基于长连接的放量回切方法,其特征在于:在所述s4中,放量在需要放量的功能a页面,通过grayreleaseservice实例,传入放量标识获取放量状态,多个放量标识同时存在时,对相同放量标识缓存,减少放量接口请求次数。
4.根据权利要求1所述的基于长连接的放量回切方法,其特征在于:在所述s4中,消息变更是产品通知需要对租户cp1的功能a进行放量,研发通过接口更新功能a对应的放量标识云控配置从而触发消息变更。
5.根据权利要求1所述的基于长连接的放量回切方法,其特征在于:在所述s4中,前端接收到消息变更,命中租户cp1,判断功能a对应的放量标识是否打开决定是否展示功能a,完成实时放量,支持全量和单个租户放量。
6.根据权利要求1所述的基于长连接的放量回切方法,其特征在于:在所述s1中,为了grayreleaseservice类的实现,它包含了灰度发布(gray release)的基本功能,其主要职责是管理灰度发布过程,包括设置候选版本、设置灰度发布的用户比例、实际执行灰度发布、监控以及必要时回滚。