掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及计算机领域,具体而言,涉及一种版本发布方法、装置、电子设备和存储介质。

背景技术

第三方存管系统是行内超A类系统,对系统稳定性要求极高,版本投产需要非常谨慎,需要把风险降到最低,因此,非常有必要实施灰度发布。

当前版本变更发布主要存在缺点:

新版本投产后,若版本有缺陷或者潜在缺陷,将会影响大量用户,例如,用户无法正常交易。同时,新版本投产后,若版本有缺陷或者潜在缺陷,会增加系统风险。

发明内容

本申请实施例的目的在于提供一种版本发布方法、装置、电子设备和存储介质,用以降低新版本投产时的系统风险,和降低新版本投时,对用户的影响。

第一方面,本发明提供一种版本发布方法,所述方法包括:

当接收到针对目标应用的访问请求时,对所述访问请求进行解析,得到用户的属性信息;

基于所述用户的属性信息,判断所述用户是否为备选对象;

当所述用户为所述备选对象时,则将所述访问请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用的第二版本代码对所述访问请求进行处理并返回处理结果;

基于所述处理结果验证所述灰度集群是否成功响应所述访问请求;

当所述灰度集群成功响应所述访问请求时,则将所述目标应用的第二版本代码发布至生产环境稳定集群,以使所述生产环境稳定集群基于所述目标应用的第二版本代码进行更新。

在本申请第一方面中,当接收到针对目标应用的访问请求时,通过对所述访问请求进行解析,能够得到用户的属性信息,进而能够基于所述用户的属性信息,判断所述用户是否为备选对象,进而当所述用户为所述备选对象时,能够将所述访问请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用的第二版本代码对所述访问请求进行处理并返回处理结果,进而能够基于所述处理结果验证所述灰度集群是否成功响应所述访问请求,进而当所述灰度集群成功响应所述访问请求时,能够将所述目标应用的第二版本代码发布至生产环境稳定集群,以使所述生产环境稳定集群基于所述目标应用的第二版本代码进行更新。

与现有技术相比,本申请将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

在可选的实施方式中,所述基于所述用户的属性信息,判断所述用户是否为备选对象,包括:

获取用户白名单;

将所述用户的属性信息与所述用户白名单进行比对,若比对结果表征所述用户为所述用户白名单内的对象,则确定所述用户为所述备选对象。

在上述可选的实施方式中,通过获取用户白名单,进而能够将所述用户的属性信息与所述用户白名单进行比对,若比对结果表征所述用户为所述用户白名单内的对象,则确定所述用户为所述备选对象。

在可选的实施方式中,所述方法还包括:

当所述灰度集群应所述访问请求失败时,则将所述访问请求转发至所述生产环境稳定集群。

在上述可选的实施方式中,当所述灰度集群应所述访问请求失败时,能够将所述访问请求转发至所述生产环境稳定集群,从而重新正常响应访问请求。

在可选的实施方式中,所述方法还包括:

对所述访问请求进行解析,得到合作机构的属性信息;

基于所述合作机构的属性信息,判断所述用户是否为备选机构;

当所述用户为所述备选机构时,则将所述访问请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用的第二版本代码对所述访问请求进行处理并返回处理结果。

在上述可选的实施方式中,通过对所述访问请求进行解析,进而能够得到合作机构的属性信息,进而基于所述合作机构的属性信息,能够判断所述用户是否为备选机构,进而当所述用户为所述备选机构时,能够将所述访问请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用的第二版本代码对所述访问请求进行处理并返回处理结果。

第二方面,本发明提供一种版本发布装置,所述装置包括:

接收模块,用于接收到针对目标应用的访问请求;

第一报文解析模块,用于当接收到所述访问请求时,对所述访问请求进行解析,得到用户的属性信息;

第一判断模块,用于基于所述用户的属性信息,判断所述用户是否为备选对象;

第一转发模块,用于当所述用户为所述备选对象时,则将所述访问请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用的第二版本代码对所述访问请求进行处理并返回处理结果;

验证模块,用于基于所述处理结果验证所述灰度集群是否成功响应所述访问请求;

版本发布模块,用于当所述灰度集群成功响应所述访问请求时,则将所述目标应用的第二版本代码发布至生产环境稳定集群,以使所述生产环境稳定集群基于所述目标应用的第二版本代码进行更新。

与现有技术相比,本申请的装置通过执行版本发布方法,能够将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

在可选的实施方式中,所述判断模块包括:

获取子模块,用于获取用户白名单;

确定子模块,用于将所述用户的属性信息与所述用户白名单进行比对,若比对结果表征所述用户为所述用户白名单内的对象,则确定所述用户为所述备选对象。

在上述可选的实施方式中,通过获取用户白名单,进而能够将所述用户的属性信息与所述用户白名单进行比对,若比对结果表征所述用户为所述用户白名单内的对象,则确定所述用户为所述备选对象。

在可选的实施方式中,所述装置还包括:

第二转发模块,用于当所述灰度集群应所述访问请求失败时,则将所述访问请求转发至所述生产环境稳定集群。

在上述可选的实施方式中,当所述灰度集群应所述访问请求失败时,能够将所述访问请求转发至所述生产环境稳定集群,从而重新正常响应访问请求。

在可选的实施方式中,所述装置还包括:

第二报文解析模块,用于对所述访问请求进行解析,得到合作机构的属性信息;

第二判断模块,用于基于所述合作机构的属性信息,判断所述用户是否为备选机构;

第三转发模块,用于当所述用户为所述备选机构时,则将所述访问请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用的第5二版本代码对所述访问请求进行处理并返回处理结果。

在上述可选的实施方式中,通过对所述访问请求进行解析,进而能够得到合作机构的属性信息,进而基于所述合作机构的属性信息,能够判断所述用户是否为备选机构,进而当所述用户为所述备选机构时,能够将所述访问

请求转发至灰度集群,以使所述灰度集群度基于预先部署的所述目标应用0的第二版本代码对所述访问请求进行处理并返回处理结果。

第三方面,本发明提供一种电子设备,包括:

处理器;以及

存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,执行如前述实施方式任一项所述的版本发布方法。

5与现有技术相比,本申请的电子设备通过执行版本发布方法,能够将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当

目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用0的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

第四方面,本发明提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行如前述实施方式任一项所述的版本发布方法。

与现有技术相比,本申请的存储介质通过执行版本发布方法,能够将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本申请实施例公开的一种版本发布方法的流程示意图;

图2是本申请实施例公开的一种版本发布装置的结构示意图;

图3是本申请实施例公开的一种电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

实施例一

请参阅图1,图1是本申请实施例公开的一种版本发布方法的流程示意图,如图1所示,本申请实施例的方法包括以下步骤:

101、当接收到针对目标应用的访问请求时,对访问请求进行解析,得到用户的属性信息;

102、基于用户的属性信息,判断用户是否为备选对象;

103、当用户为备选对象时,则将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果;

104、基于处理结果验证灰度集群是否成功响应访问请求;

105、当灰度集群成功响应访问请求时,则将目标应用的第二版本代码发布至生产环境稳定集群,以使生产环境稳定集群基于目标应用的第二版本代码进行更新。

在本申请实施例中,当接收到针对目标应用的访问请求时,通过对访问请求进行解析,能够得到用户的属性信息,进而能够基于用户的属性信息,判断用户是否为备选对象,进而当用户为备选对象时,能够将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果,进而能够基于处理结果验证灰度集群是否成功响应访问请求,进而当灰度集群成功响应访问请求时,能够将目标应用的第二版本代码发布至生产环境稳定集群,以使生产环境稳定集群基于目标应用的第二版本代码进行更新。

与现有技术相比,本申请实施例将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

在本申请实施例中,针对步骤101,目标应用是只为用户提供预设功能的应用程序,例如,目标应用可以是实现用户贷款的APP。

在本申请实施例中,针对步骤101,访问请求可以是基于HTTP协议生成的HTTP报文。相应地,对访问请求进行解析的一种具体方式为:基于HTTP协议对访问请求进行解析,得到报文参数,进而从报文参数中读取用户的属性信息。进一步地,用户的属性信息可以包括用户名称、用户账号、用户ID。

在本申请实施例中,针对步骤102,备选对象表示可用于测试目标应用新版本代码的用户,其中,目标应用新版本代码是指目标应用的第二版代码。

在本申请实施例中,针对步骤103,一般而言,目标应用的第二版本代码包括了实现预设功能的指令,通过该指令,可对访问请求进程处理并得到处理结果,其中,处理结果可以是具体参数。

在本申请实施例中,针对步骤103,灰度集群是指提供测试验证功能的集群,其中,该灰度集群由两台或两台以上的服务器组成,相应地,在将访问请求转发至灰度集群的过程中,可基于预设的负载均衡策略将访问请求转发至灰度集群中的一台服务器。例如,将访问请求转发至最接节点的服务器。需要说明的是,关于预设的负载均衡策略,请参阅现有技术,本申请实施例对此不作赘述。

在本申请实施例中,针对步骤104,基于处理结果验证灰度集群是否成功响应访问请求的一种具体方式为,将处理得到的具体参数的数值与预设参数的数值进行比较,若处理得到的具体参数的数值与预设参数的数值相等,则确定灰度集群成功响应访问请求,而如果处理得到的具体参数的数值与预设参数的数值不相等,则确定灰度集群响应访问请求失败。

在本申请实施例中,针对步骤105,生产环境稳定集群由两台或两台以上的服务器组成,相应地,在处理访问请求的过程中,可基于预设的负载均衡策略将访问请求转发至生产环境稳定集群中的一台服务器。例如,将访问请求转发至最接节点的服务器。

在本申请实施例中,针对步骤105,生产环境稳定集群原部署有目标应用的第一版本代码,其中,目标应用的第二版本代码基于目标应用的第一版本代码得到,例如,通过更新目标应用的第一版本代码,得到目标应用的第二版本代码。

在可选的实施方式中,步骤:基于用户的属性信息,判断用户是否为备选对象,包括以下子步骤:

获取用户白名单;

将用户的属性信息与用户白名单进行比对,若比对结果表征用户为用户白名单内的对象,则确定用户为备选对象。

在上述可选的实施方式中,通过获取用户白名单,进而能够将用户的属性信息与用户白名单进行比对,若比对结果表征用户为用户白名单内的对象,则确定用户为备选对象。

在上述可选的实施方式中,用户白名单可以通过管理终端预先录入。

在可选的实施方式中,本申请实施例的方法还包括以下步骤:

当灰度集群应访问请求失败时,则将访问请求转发至生产环境稳定集群。

在上述可选的实施方式中,当灰度集群应访问请求失败时,能够将访问请求转发至生产环境稳定集群,从而重新正常响应访问请求。

在可选的实施方式中,本申请实施例的方法还包括以下步骤:

对访问请求进行解析,得到合作机构的属性信息;

基于合作机构的属性信息,判断用户是否为备选机构;

当用户为备选机构时,则将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果。

在上述可选的实施方式中,通过对访问请求进行解析,进而能够得到合作机构的属性信息,进而基于合作机构的属性信息,能够判断用户是否为备选机构,进而当用户为备选机构时,能够将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果。

具体地,在上述可选的实施方式中,合作机构可以是指券商,相应地,在一些场景中,如果需要指定某某券商平台引入的用户,能够使用目标应用的第二版本代码,则可将该券商平台的访问请求转发至灰度集群中。

具体地,在上述可选的实施方式中,可将合作机构的属性信息与合作机构白名单进行比对,若比对结果表征合作机构白名单包括合作机构,则确定当前合作机构为备选机构。

实施例二

请参阅图2,图2是本申请实施例公开的一种版本发布装置的结构示意图,如图2所示,本申请实施例的装置包括以下功能模块:

接收模块201,用于接收到针对目标应用的访问请求;

第一报文解析模块202,用于当接收到访问请求时,对访问请求进行解析,得到用户的属性信息;

第一判断模块203,用于基于用户的属性信息,判断用户是否为备选对象;

第一转发模块204,用于当用户为备选对象时,则将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果;

验证模块205,用于基于处理结果验证灰度集群是否成功响应访问请求;

版本发布模块206,用于当灰度集群成功响应访问请求时,则将目标应用的第二版本代码发布至生产环境稳定集群,以使生产环境稳定集群基于目标应用的第二版本代码进行更新。

与现有技术相比,本申请实施例的装置通过执行版本发布方法,能够将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应

用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的5其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境

稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

在可选的实施方式中,本申请实施例的判断模块包括以下子模块:

获取子模块,用于获取用户白名单;

确定子模块,用于将用户的属性信息与用户白名单进行比对,若比对结0果表征用户为用户白名单内的对象,则确定用户为备选对象。

在上述可选的实施方式中,通过获取用户白名单,进而能够将用户的属性信息与用户白名单进行比对,若比对结果表征用户为用户白名单内的对象,则确定用户为备选对象。

在可选的实施方式中,本申请实施例的装置还包括以下功能模块:5第二转发模块,用于当灰度集群应访问请求失败时,则将访问请求转发

至生产环境稳定集群。

在上述可选的实施方式中,当灰度集群应访问请求失败时,能够将访问请求转发至生产环境稳定集群,从而重新正常响应访问请求。

在可选的实施方式中,本申请实施例的装置还包括以下功能模块:0第二报文解析模块,用于对访问请求进行解析,得到合作机构的属性信息;

第二判断模块,用于基于合作机构的属性信息,判断用户是否为备选机构;

第三转发模块,用于当用户为备选机构时,则将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果。

在上述可选的实施方式中,通过对访问请求进行解析,进而能够得到合作机构的属性信息,进而基于合作机构的属性信息,能够判断用户是否为备选机构,进而当用户为备选机构时,能够将访问请求转发至灰度集群,以使灰度集群度基于预先部署的目标应用的第二版本代码对访问请求进行处理并返回处理结果。

需要说明的是,关于本申请实施例的装置的其他详细说明,请参阅本申请实施例一的相关说明,本申请实施例对此不作赘述。

实施例三

请参阅图3,图3是本申请实施例公开的一种电子设备的结构示意图,如图3所示,本申请实施例的电子设备包括:

处理器301;以及

存储器302,配置用于存储机器可读指令,指令在由处理器301执行时,执行如前述实施方式任一项的版本发布方法。

与现有技术相比,本申请实施例的电子设备通过执行版本发布方法,能够将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

实施例四

本申请实施例提供一种存储介质,存储介质存储有计算机程序,计算机程序被处理器执行如前述实施方式任一项的版本发布方法。

与现有技术相比,本申请实施例的存储介质通过执行版本发布方法,能够将所有用户中的部分用户发起的访问请求,即备选对象发起的访问请求转发至灰度集群度,进而能够仅在目标应用的第二版本代码对访问请求成功响应时,才将目标应用的第二版本代码发布至生产环境稳定集群,这样一来,当目标应用的第二版本代码存在缺陷,即灰度集群度响应失败时,由目标应用的第二版本代码未发布至生产环境稳定集群,因此不会对所有用户中的其他用户产生影响。同时,由于目标应用的第二版本代码未发布至生产环境稳定集群,可避免目标应用的第二版本代码中缺陷增加系统风险。

在本申请实施例所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 多版本数据存储管理方法及装置、电子设备、存储介质
  • 程序版本更新方法及装置、存储介质及电子设备
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备控制方法及装置、电子设备及存储介质
  • 数据分布存储方法、装置、存储介质及电子设备
  • 报表版本发布优化方法、装置、电子设备及存储介质
  • 前端版本发布的方法及装置、存储介质及电子设备
技术分类

06120115752660