应用程序的灰度升级方法及装置转让专利
申请号 : CN201610899640.X
文献号 : CN107957888B
文献日 : 2022-03-18
发明人 : 李可欣
申请人 : 北京国双科技有限公司
摘要 :
权利要求 :
1.一种应用程序的灰度升级方法,其特征在于,包括:确定终端中属于待灰度升级的应用程序;
从预置设备指派表中获取与所述待灰度升级的应用程序对应的升级应用版本信息,所述预置设备指派表中存储有升级应用版本信息和待灰度升级的应用程序之间的对应关系、升级应用版本信息和后台服务器入口信息的对应关系,所述后台服务器是新部署的服务器并区别于待灰度升级应用程序对应的服务器;
获取所述升级应用版本信息对应的后台服务器入口信息;
将所述升级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接所述后台服务器对所述待灰度升级的应用程序进行灰度升级;
其中,所述预置设备指派表中还包括与所述升级应用版本信息对应的升级策略,所述将所述升级应用版本信息对应的后台服务器入口信息发送给所述终端之前,所述方法还包括:
判断所述升级应用版本信息对应的升级策略是否为强制升级;
若是,将所述升级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接所述后台服务器对所述待灰度升级的应用程序进行灰度升级;
若否,则将所述升级应用版本信息对应的后台服务器入口信息及可选升级的选项信息发送给所述终端,以使得所述终端连接所述后台服务器并根据接收到的选项信息对所述待灰度升级的应用程序进行灰度升级。
2.根据权利要求1所述的方法,其特征在于,所述确定属于待灰度升级的应用程序包括:
获取所述终端中应用程序的属性信息;
判断所述预置设备指派表中是否包含所述属性信息;
若包含,则确定所述应用程序为待灰度升级的应用程序。
3.根据权利要求2所述的方法,其特征在于,所述属性信息包括设备标识信息和应用标识信息,所述判断所述预置设备指派表是否包含所述属性信息包括:判断所述预置设备指派表中是否对应包含所述设备标识信息和所述应用标识信息,所述预置设备指派表中的属性信息包括设备标识信息和应用标识信息;
所述确定所述应用程序为待灰度升级的应用程序包括:若包含所述设备标识信息和所述应用标识信息,则确定所述应用程序为待灰度升级的应用程序。
4.根据权利要求3所述的方法,其特征在于,所述属性信息还包括应用版本信息,所述判断所述预置设备指派表中是否对应包含所述设备标识信息和所述应用标识信息之后,所述方法还包括:
若对应包含所述设备标识信息和所述应用标识信息,则判断所述预置设备指派表中是否包含所述应用版本信息,所述预置设备指派表中的属性信息还包括应用版本信息;
所述确定所述应用程序为待灰度升级的应用程序包括:若包含所述应用版本信息,则确定所述应用程序为待灰度升级的应用程序。
5.一种应用程序的灰度升级装置,其特征在于,包括:确定单元,用于确定终端中属于待灰度升级的应用程序;
获取单元,用于从预置设备指派表中获取与所述待灰度升级的应用程序对应的升级应用版本信息,所述预置设备指派表中存储有升级应用版本信息和待灰度升级的应用程序之间的对应关系、升级应用版本信息和后台服务器入口信息的对应关系,所述后台服务器是新部署的服务器并区别于待灰度升级应用程序对应的服务器;
所述获取单元,还用于获取所述升级应用版本信息对应的后台服务器入口信息;
其中,所述预置设备指派表中还包括与所述升级应用版本信息对应的升级策略;
判断单元,用于判断所述升级应用版本信息对应的升级策略是否为强制升级;
发送单元,用于将所述升级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接所述后台服务器对所述待灰度升级的应用程序进行灰度升级,进一步包括:若所述升级应用版本信息对应的升级策略为强制升级,将所述升级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接所述后台服务器并对所述待灰度升级的应用程序进行灰度升级;若所述升级应用版本信息对应的升级策略不是强制升级,则将所述升级应用版本信息对应的后台服务器入口信息及可选升级的选项信息发送给所述终端,以使得所述终端连接所述后台服务器并根据接收到的选项信息对所述待灰度升级的应用程序进行灰度升级。
6.根据权利要求5所述的装置,其特征在于,所述确定单元包括:获取模块,用于获取所述终端中应用程序的属性信息;
判断模块,用于判断所述预置设备指派表中是否包含所述属性信息;
确定模块,用于若所述预置设备指派表中包含所述属性信息,则确定所述应用程序为待灰度升级的应用程序。
7.根据权利要求6所述的装置,其特征在于,所述属性信息包括设备标识信息和应用标识信息,
所述判断模块,具体用于判断所述预置设备指派表中是否对应包含所述设备标识信息和所述应用标识信息,所述预置设备指派表中的属性信息包括设备标识信息和应用标识信息;
所述确定模块,具体用于若所述预置设备指派表中对应包含所述设备标识信息和所述应用标识信息,则确定所述应用程序为待灰度升级的应用程序。
8.根据权利要求7所述的装置,其特征在于,所述属性信息还包括应用版本信息,所述判断模块,还用于若所述预置设备指派表中对应包含所述设备标识信息和所述应用标识信息,则判断所述预置设备指派表中是否包含所应用版本信息,所述预置设备指派表中的属性信息还包括应用版本信息;
所述确定模块,用于若所述预置设备指派表中包含所述应用版本信息,则确定所述应用程序为待灰度升级的应用程序。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求4中任意一项所述的应用程序的灰度升级方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至权利要求4中任意一项所述的应用程序的灰度升级方法。
说明书 :
应用程序的灰度升级方法及装置
技术领域
背景技术
以正常使用更新后的应用程序或操作系统,所以需要在对所有用户进行升级之前对少数用
户进行灰度升级。灰度升级是一种升级时候的平滑切换。
需要中断应用后台服务器一段时间,因此现有的应用程序的灰度升级会影响用户的正常使
用,且应用程序的灰度升级效率低。
发明内容
关系;
序之间的对应关系;
的升级应用版本信息,并获取所述升级应用版本信息对应的后台服务器入口信息,最后将
所述升级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接
所述后台服务器对所述待灰度升级的应用程序进行灰度升级。与目前通过应用后台服务器
中重新部署的新版本应用服务进行灰度升级相比,本发明实施例当进行灰度升级应用程序
时,在不需要关闭已有版本后台服务器的情况下,独立部署一个新的后台服务器,然后通过
新的后台服务器进行灰度升级,即通过升级应用版本信息对应的后台服务器进行灰度升
级,从而通过本发明实施例解决了现有技术中应用程序灰度升级会影响用户的正常使用,
及应用程序的灰度升级效率低等问题。
附图说明
的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
具体实施方式
所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围
完整的传达给本领域的技术人员。
序,所述属性信息具体可以为应用程序的标识信息,应用版本信息,运行该应用程序的终端
设备标识信息、应用程序对应的用户名等信息,本发明实施例不做具体限定。
以设置成对特定终端设备中的应用程序进行升级、特定区域用户的应用程序进行升级、特
定用户的应用程序进行升级等,本发明实施例不做具体限定。例如,若灰度升级策略当中设
置的是对特定终端设备型号中的办公应用进行升级,当获取用户终端设备的型号为该灰度
升级策略中的终端设备型号时,则对该终端设备中的办公应用进行升级。再比如,服务器中
设置的灰度升级策略是对特定区域用户终端设备中的社交应用进行升级,则当获取的用户
账号对应的区域为灰度升级策略中设置的区域时,则对该用户中的社交应用进行升级。
实施例中,可以根据待灰度升级的应用程序的属性信息确定与待灰度升级的应用程序对应
的升级应用版本信息。具体的,本发明实施例可以通过预置设备指派表中存储的与待灰度
升级的应用程序的属性信息分别对应的升级应用版本信息设置不同的灰度升级策略,即可
以通过本发明实施例指定不同应用的灰度升级策略。
息,具体如下表1所示,则当获取待灰度升级应用程序的设备标识信息为Galaxy On7,应用
标识信息为微信,应用版本信息为1.0.1时,则将终端设备Galaxy On7中的微信从版本
1.0.1升级至1.0.2版本。
2 iPhone 6s KEEP 2.1 2.2
3 X3c50 QQ 3.1 3.2
口信息,并且多个版本的后台服务器可以同时启动,因此当对应用程序进行灰度升级时,可
以在不关闭已有版本后台服务器的情况下,独立部署一个新的后台服务器,然后将该后台
服务器入口信息和与其对应的升级应用版本信息对应设置在预置设备指派表中,若从预置
设备指派表中获取到与待灰度升级的应用程序的属性信息对应的升级应用版本信息,则根
据升级应用版本信息对应的后台服务器对终端中待灰度升级的应用程序进行灰度升级,从
而通过本发明实施例解决了现有技术中应用程序灰度升级会影响用户的正常使用,及应用
程序的灰度升级效率低等问题。
升级的应用程序与后台服务器进行数据交互,然后根据终端连接的后台服务器对待灰度升
级的应用程序进行灰度升级。
信息表中时,需要通过应用标识信息、应用版本字段关联预置设备指派表与应用信息表。也
就是应用信息表里出现的应用标识信息与对应版本才有可能出现在设备指派表中。其中,
该应用信息表中承载不同应用的所有版本信息,以及所有版本对应的配置信息,具体的应
用信息表中可以包括应用标识信息、应用版本、软件配置信息和软件版本描述等字段,本发
明实施例不做具体限定。
实现灰度降级。将已升级的某设备上的应用再重新降级为生产系统版本。该用法在发布调
试阶段非常方便,可以通过这种方式反复测试在新版本正式上线后现有版本的升级流程。
应用版本信息,并获取所述升级应用版本信息对应的后台服务器入口信息,最后将所述升
级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接所述后
台服务器对所述待灰度升级的应用程序进行灰度升级。与目前通过应用后台服务器中重新
部署的新版本应用服务进行灰度升级相比,本发明实施例当进行灰度升级应用程序时,在
不需要关闭已有版本后台服务器的情况下,独立部署一个新的后台服务器,然后通过新的
后台服务器进行灰度升级,即通过升级应用版本信息对应的后台服务器进行灰度升级,从
而通过本发明实施例解决了现有技术中应用程序灰度升级会影响用户的正常使用,及应用
程序的灰度升级效率低等问题。
对应的用户名等信息,本发明实施例不做具体限定。具体的,本发明实施例基于Http
(Hypertext transfer protocol,超文本传输协议)的webserver,进行应用程序与预置设
备指派表之间的数据交互。应用程序通过服务器返回的信息得知自己是否应该升级到某个
版本,以及是否为可选升级。返回信息中还有配置信息字段。配置信息的格式在本发明实施
例中并没有强制规定格式,为的是给各种应用留出自己灵活配置的空间。
础。在灰度发布时,可以使用该表中的一部分设备标识信息进行新版本的升级。在这一部分
用户的反馈数据中如果达到了预期水平,再进行后续的全网正式上线。这个方法对实际上
线的用户体验效果进行了抽样检测,进一步加强了应用上线效果预知能力。
否对应包含所述设备标识信息和所述应用标识信息之后,所述方法还包括:若所述预置设
备指派表中对应包含所述设备标识信息和所述应用标识信息,则判断所述预置设备指派表
中是否包含所述应用版本信息,所述预置设备指派表中的属性信息还包括应用版本信息。
程序。
用版本信息为将要进行灰度升级的应用版本信息。
以通过本发明实施例指定不同应用的灰度升级策略。
述终端的详细描述,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
前,所述方法还包括:判断所述升级应用版本信息对应的升级策略是否为强制升级;若是,
将所述升级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连
接所述后台服务器并对所述待灰度升级的应用程序进行灰度升级;若否,则将所述升级应
用版本信息对应的后台服务器入口信息及所述可选升级的选项信息发送给所述终端,以使
得所述终端连接所述后台服务器并根据接收到的选项信息对所述待灰度升级的应用程序
进行灰度升级。其中升级策略包括强制升级和可选升级两种,当升级应用版本信息对应的
升级策略为强制升级时,说明终端中当前应用程序的版本不升级就无法继续使用,因此必
须对待灰度升级的应用程序进行强制升级;当升级应用版本信息对应的升级策略为可选升
级时,说明终端中当前应用程序的版本不升级还可以继续使用,若用户选择对待灰度升级
的应用程序升级,则将所述升级应用版本信息对应的后台服务器入口信息发送给所述终
端,以使得所述终端连接所述后台服务器并对所述待灰度升级的应用程序进行灰度升级,
若用户选择不对待灰度升级的应用程序升级,则无需向终端发送应用版本信息对应的后台
服务器入口信息。
根据版本指派表中的数据对所有版本的应用程序进行升级,其中所述版本指派表中包括应
用标识信息、应用版本信息、升级应用版本信息和升级应用版本信息等字段。通过对版本指
派表进行添加,将若干旧版本的升级为新上线的版本号。这里可以灵活地对某些版本配置
非强制升级。一些非常旧的版本就可以配置成强制升级。在某个设备访问导航服务时,导航
服务在数据库中首先会查找设备指派表。设备表中没有当前设备时,就会继续查找版本指
派表。版本指派表一定会对当前应用的版本给出对应的配置信息,并告知应用已经是最新
版本。
标识信息,若包含所述设备标识信息和所述应用标识信息,则确定所述应用程序为待灰度
升级的应用程序,接着从预置设备指派表中获取与所述待灰度升级的应用程序对应的升级
应用版本信息,最后将所述升级应用版本信息对应的后台服务器入口信息发送给所述终
端,以使得所述终端连接所述后台服务器对所述待灰度升级的应用程序进行灰度升级。因
此,本发明实施例实现了对某个终端指定升级行为,以及终端的不同版本信息下发功能。基
于指定终端升级某版本的特性,实现了发布到公网后有预期地按照指定范围升级软件版
本。指定范围的粒度可以达到每个客户端。在指定范围内的软件升级后确保达到开发预期
的结果时,通过本发明的设置可以使全网范围的客户端升级到新版本。
程序之间的对应关系;
级。
施例中的装置能够对应实现前述方法实施例中的全部内容。
应用版本信息,并获取所述升级应用版本信息对应的后台服务器入口信息,最后将所述升
级应用版本信息对应的后台服务器入口信息发送给所述终端,以使得所述终端连接所述后
台服务器对所述待灰度升级的应用程序进行灰度升级。与目前通过应用后台服务器中重新
部署的新版本应用服务进行灰度升级相比,本发明实施例当进行灰度升级应用程序时,在
不需要关闭已有版本后台服务器的情况下,独立部署一个新的后台服务器,然后通过新的
后台服务器进行灰度升级,即通过升级应用版本信息对应的后台服务器进行灰度升级,从
而通过本发明实施例解决了现有技术中应用程序灰度升级会影响用户的正常使用,及应用
程序的灰度升级效率低等问题。
程序之间的对应关系;
级。
用标识信息;
设备指派表中的属性信息还包括应用版本信息;
所述后台服务器对所述待灰度升级的应用程序进行灰度升级;
给所述终端,以使得所述终端连接所述后台服务器并根据接收到的选项信息对所述待灰度
升级的应用程序进行灰度升级。
施例中的装置能够对应实现前述方法实施例中的全部内容。
标识信息,若包含所述设备标识信息和所述应用标识信息,则确定所述应用程序为待灰度
升级的应用程序,接着从预置设备指派表中获取与所述待灰度升级的应用程序对应的升级
应用版本信息,最后将所述升级应用版本信息对应的后台服务器入口信息发送给所述终
端,以使得所述终端连接所述后台服务器对所述待灰度升级的应用程序进行灰度升级。因
此,本发明实施例实现了对某个终端指定升级行为,以及终端的不同版本信息下发功能。基
于指定终端升级某版本的特性,实现了发布到公网后有预期地按照指定范围升级软件版
本。指定范围的粒度可以达到每个客户端。在指定范围内的软件升级后确保达到开发预期
的结果时,通过本发明的设置可以使全网范围的客户端升级到新版本。
上述程序单元来实现相应的功能。
用,及应用程序的灰度升级效率低等问题。
芯片。
派表中获取与所述待灰度升级的应用程序对应的升级应用版本信息,所述预置设备指派表
中存储有升级应用版本信息和待灰度升级的应用程序之间的对应关系;获取所述升级应用
版本信息对应的后台服务器入口信息;将所述升级应用版本信息对应的后台服务器入口信
息发送给所述终端,以使得所述终端连接所述后台服务器对所述待灰度升级的应用程序进
行灰度升级。
施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
的示例。
计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动
态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除
可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD‑ROM)、
数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备
或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算
机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
改进等,均应包含在本申请的权利要求范围之内。