应用发布方法及其系统、电子设备、存储介质技术方案

技术编号:27771703 阅读:23 留言:0更新日期:2021-03-23 12:49
本公开提供一种应用发布方法及其系统、电子设备、存储介质,其中,所述应用包括至少一个服务,所述服务包括至少两个分组。该方法包括:接收应用发布指令;根据所述应用发布指令确定所述应用中的目标服务的至少两个分组中的第一组;确定所述第一组的目标发布节点,并将所述目标发布节点标记为待发布状态;接收来自用户的应用请求;确定与所述应用请求对应的节点的状态;响应于与所述应用请求对应的节点处于所述待发布状态,将所述应用请求转发到处于非发布状态的节点。

【技术实现步骤摘要】
应用发布方法及其系统、电子设备、存储介质
本公开涉及数据处理
,尤其涉及一种应用发布方法及其系统、电子设备、存储介质。
技术介绍
传统的应用新版本发布,需要夜间停机进行发布。互联网云端应用的特点是7×24小时可用、频繁快速的版本发布,这就要求在不能影响业务的前提下对新版本应用进行发布。
技术实现思路
有鉴于此,本公开的目的在于提出一种应用发布方法及其系统、电子设备、存储介质。基于上述目的,本公开的第一方面,提供了一种应用发布方法,其中,所述应用包括至少一个服务,所述服务包括至少两个分组,所述方法包括:接收应用发布指令;根据所述应用发布指令确定所述应用中的目标服务的至少两个分组中的第一组;确定所述第一组的目标发布节点,并将所述目标发布节点标记为待发布状态;接收来自用户的应用请求;确定与所述应用请求对应的节点的状态;响应于与所述应用请求对应的节点处于所述待发布状态,将所述应用请求转发到处于非发布状态的节点。本公开的第二方面,提供了一种应用发布系统,其中,所述应用包括至少一个服务,所述服务包括至少两个分组,所述系统包括:应用发布接口,被配置为:接收应用发布指令,并根据所述应用发布指令确定所述应用中的目标服务的至少两个分组中的第一组,将所述第一组的目标发布节点标记为待发布状态,并将所述目标发布节点的状态信息转发到数据库;数据库,与所述应用发布接口电耦接,并被配置为:存储所述目标发布节点的状态信息;多个节点,分别与所述数据库电耦接,并被配置为:根据所述数据库中的所述目标发布节点的状态信息确定自身是否为所述目标发布节点,响应于自身为所述目标发布节点,则进入所述待发布状态;请求分发单元,分别与所述数据库和节点电耦接,并被配置为:接收来自用户的应用请求,从所述数据库中调取与所述应用请求对应的所述节点的状态信息,响应于与所述应用请求对应的所述节点处于所述待发布状态,将所述应用请求转发到非发布状态的节点。本公开的第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现第一方面所述的方法。本公开的第四方面,提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行第一方面所述方法。从上面所述可以看出,本公开实施例提供的应用发布方法及其系统、电子设备、存储介质,可以在不影响用户在系统上的任何交易的前提下对应用进行发布,可以提高系统的可用性和体验,并且减少系统人员夜间上线,提高工作效率。附图说明为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1A示出了本公开实施例提供的示例性系统的结构示意图;图1B示出了根据本公开实施例的数据库存储的数据结构模型的示意图;图2示出了本公开实施例提供的示例性方法的结构示意图;图3示出了本公开实施例提供的示例性电子设备的硬件结构示意图。具体实施方式为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。需要说明的是,除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。由于传统的应用新版本发布,需要夜间停机进行发布。鉴于此,本公开提出了一种在不影响用户使用的前提下,云端应用新版本发布的一种应用发布方法及其系统、电子设备、存储介质。该应用发布方法,包括:接收应用发布指令;根据所述应用发布指令确定所述应用中的目标服务的第一组;确定所述第一组的目标发布节点,并将所述目标发布节点标记为待发布状态;接收来自用户的应用请求;确定与所述应用请求对应的节点的状态;响应于与所述应用请求对应的节点处于所述待发布状态,将所述应用请求转发到处于非发布状态的节点。本公开实施例提供的应用发布方法及其系统、电子设备、存储介质,通过将待发布应用中的服务分为至少两组,使得可以进行分组发布,每组中的单个副本均可以实现服务的运行,因此这种发布方式不会影响该服务的整体运行,同时,在每组服务的发布过程中,对应的目标发布节点均被标记为与发布相关的状态,使得当需要进行用户的应用请求分发时,若应用请求对应的节点已被标记为与发布相关的状态,则不向该节点转发应用请求,而是向应用请求对应的其他非发布状态的节点进行请求分发,从而也不影响用户对该服务的使用。本公开实施例提供的应用发布方法及其系统、电子设备、存储介质,可以在不影响用户在系统上的任何交易的前提下对云端应用新版本进行发布,可以提高系统的可用性和体验,并且减少系统人员夜间上线,提高工作效率。图1A示出了本公开实施例提供的示例性系统的结构示意图。如图1A所示,所述应用发布系统100包括应用发布接口102、数据库104、请求分发单元108和多个节点(例如,节点106a、106b和106c),用于完成应用的发布,包括更新版本的应用的发布、新应用的发布等。一个应用可以包括多个服务,例如,某购物APP,其中可以包括会员服务、购物服务等。一个服务可以由多个副本组成,每个副本均可以独立运行以完成对应的服务。进一步地,服务又可以被分为至少两个分组,例如,服务可以被分为第一组和第二组,并可以先对第一组进行发布,在第一组完成发布之后,再发布第二组,其中,第一组可以包括至少一个副本,第二组也可以包括至少一个副本。在一些实施例中,服务可以包括四个副本,第一组可以包括两个副本,第二组可以包括两个副本。如图1A所示,应用发布接口102可以接收应用发布指令110并根据应用发布指令110确定待发布的应用中的目标服务的第一组。应用发布指令110可以是系统管理员启动的。在一些实施例中,可以根据服务分组信息114(ServiceGroupFile)来确定待发布的应用中的目标服务及其中的第一组。该服务分组信息114中可以包括每个服务的分组信息以及应用中的各服务之间的依赖关系。每个服务的分组方式不限,可以是按照副本的编号顺序来进行分组,也可以是按照副本的产生时间顺序来进行分组,具体分组方式的选择可以根据需要设定。根据该依赖关系,本文档来自技高网...

【技术保护点】
1.一种应用发布方法,其中,所述应用包括至少一个服务,所述服务包括至少两个分组,所述方法包括:/n接收应用发布指令;/n根据所述应用发布指令确定所述应用中的目标服务的至少两个分组中的第一组;/n确定所述第一组的目标发布节点,并将所述目标发布节点标记为待发布状态;/n接收来自用户的应用请求;/n确定与所述应用请求对应的节点的状态;/n响应于与所述应用请求对应的节点处于所述待发布状态,将所述应用请求转发到处于非发布状态的节点。/n

【技术特征摘要】
1.一种应用发布方法,其中,所述应用包括至少一个服务,所述服务包括至少两个分组,所述方法包括:
接收应用发布指令;
根据所述应用发布指令确定所述应用中的目标服务的至少两个分组中的第一组;
确定所述第一组的目标发布节点,并将所述目标发布节点标记为待发布状态;
接收来自用户的应用请求;
确定与所述应用请求对应的节点的状态;
响应于与所述应用请求对应的节点处于所述待发布状态,将所述应用请求转发到处于非发布状态的节点。


2.根据权利要求1所述的方法,还包括:
确定所述目标发布节点是否处于准备发布状态,其中,所述准备发布状态是在所述目标发布节点的正在处理的请求数量降至零时进入的;
响应于所述目标发布节点已进入准备发布状态,将所述目标发布节点标记为发布状态,并对所述第一组进行发布。


3.根据权利要求2所述的方法,还包括:
响应于所述第一组发布完成,将所述目标发布节点标记为应用启动状态。


4.根据权利要求3所述的方法,其中,所述第一组对应的所述目标发布节点的数量为多个,所述方法还包括:
确定所述第一组对应的多个所述目标发布节点是否进入应用启动状态;
响应于所述第一组对应的多个所述目标发布节点进入应用启动状态,将所述第一组对应的多个所述目标发布节点标记为完成发布状态;
根据所述应用发布指令确定所述应用中的目标服务的第二组;
确定所述第二组的目标发布节点,并将所述第二组的目标发布节点标记为待发布状态。


5.根据权利要求4所述的方法,还包括:
响应于与所述应用请求对应的节点处于所述完成发布状态,将所述应用请求转发到处于完成发布状态的节点。


6.一种应用发布系统,其中,所述应用包括至少一个服务,所述服务包括至少两个分组,所述系统包括:
应用发布接口,被配置为:接收应用发布指令,并根据所述应用发布指令确定所述应用中的目标服务的至少两个分组中的第一组,将所述第一组的目标发布节点标记为待发布状态,并将所述目标发布节点的状态信息转发到数据库;
数据库,与所述应用发布接口电耦接,并被配置为:存储所述目标发布节点的状态信息;
多个节点,分别与所述数据库电耦接,并被配置为:根据所述数据库中的所述目标发布节点的状态信息确定自身是否为所述目标发布节点,响应于自身为所述目标发布节点,则进入所述待发布状态;
请求分发单元,分别与所述数据库和节点电耦接,并被配置为:接收来自用户的应用请求,从所述数据库中调取与所述应用请求对应的所述节点的状态信息,响应于与所述应用请求对应的所述节点处于所述待发布状态,将所述应用请求转发到非发布状态的...

【专利技术属性】
技术研发人员:张占耀
申请(专利权)人:京东方科技集团股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1