进程更新方法及装置制造方法及图纸

技术编号:32854296 阅读:10 留言:0更新日期:2022-03-30 19:22
本说明书实施例提供进程更新方法及装置,其中所述进程更新方法,应用于客户端,所述客户端包括:初始进程,第一目标进程,基于所述第一目标进程更新的第二目标进程;所述第一目标进程接收所述初始进程转发的至少一个用户请求,在确定满足更新条件的情况下,启动所述第二目标进程;所述第二目标进程在初始化完成的情况下,接收所述初始进程发送的所述至少一个用户请求,并对所述至少一个用户请求进行处理。理。理。

【技术实现步骤摘要】
进程更新方法及装置


[0001]本说明书实施例涉及计算机
,特别涉及一种进程更新方法。

技术介绍

[0002]随着网络技术的发展,后台服务器在整个网络环境中的作用越来越大,同时随着网络技术的发展,用户需求也在不断地发展,对后台服务器的要求也越来越高,这使得后台服务器需要不断进行升级以满足客户需求。在分布式系统中,客户端通常会内嵌在用户进程中运行,当客户端需要升级时,要由用户进程自己重新编译生成新的可执行程序,然后对线上的服务节点进行逐个升级,而在升级的过程中,由于需要重启客户端进程,则会产生较大的升级成本,同时也会影响用户的使用。

技术实现思路

[0003]有鉴于此,本说明书施例提供了一种进程更新方法。本说明书一个或者多个实施例同时涉及一种进程更新装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
[0004]根据本说明书实施例的第一方面,提供了一种进程更新方法,应用于客户端,所述客户端包括:初始进程,第一目标进程,基于所述第一目标进程更新的第二目标进程;
[0005]所述第一目标进程接收所述初始进程转发的至少一个用户请求,在确定满足更新条件的情况下,启动所述第二目标进程;
[0006]所述第二目标进程在初始化完成的情况下,接收所述初始进程发送的所述至少一个用户请求,并对所述至少一个用户请求进行处理。
[0007]根据本说明书实施例的第二方面,提供了一种进程更新装置,应用于客户端,所述客户端包括:初始进程,第一目标进程,基于所述第一目标进程更新的第二目标进程;
[0008]所述第一目标进程,被配置为接收所述初始进程转发的至少一个用户请求,在确定满足更新条件的情况下,启动所述第二目标进程;
[0009]所述第二目标进程,被配置为在初始化完成的情况下,接收所述初始进程发送的所述至少一个用户请求,并对所述至少一个用户请求进行处理。
[0010]根据本说明书实施例的第三方面,提供了一种计算设备,包括:
[0011]存储器和处理器;
[0012]所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,其中,所述处理器执行所述计算机可执行指令时实现所述进程更新方法的步骤。
[0013]根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意一项所述进程更新方法的步骤。
[0014]根据本说明书实施例的第五方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述进程更新方法的步骤。
[0015]本说明书一个实施例提供的进程更新方法,应用于客户端,所述客户端包括:初始
进程,第一目标进程,基于所述第一目标进程更新的第二目标进程;所述第一目标进程将接收所述初始进程转发的至少一个用户请求,在确定满足更新条件的情况下,启动所述第二目标进程;所述第二目标进程在初始化完成的情况下,接收所述初始进程发送的所述至少一个用户请求,并对所述至少一个用户请求进行处理。
[0016]具体的,在第一目标进程在接收到用户请求之后,确定满足更新条件时,将启动第二目标进程,在第二目标进程完成初始化之后,重新接收初始进程发送的至少一个用户请求,并完成对用户请求的处理,实现了对进程热升级处理,进而能够实现无需用户进程升级和重启,即无需用户操作或感知,由客户端进程自动完成热升级,不仅降低了进程升级成本,对用户进程中服务延迟影响较小,也不会影响用户使用。
附图说明
[0017]图1是本说明书一个实施例提供的一种进程更新方法应用于客户端的系统架构图;
[0018]图2是本说明书一个实施例提供的一种进程更新方法的流程图;
[0019]图3是本说明书一个实施例提供的一种进程更新方法的处理过程流程图;
[0020]图4是本说明书一个实施例提供的一种进程更新装置的结构示意图;
[0021]图5是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
[0022]在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
[0023]在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0024]应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
[0025]首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
[0026]热升级:在系统运行过程中,在不中断服务的情况下,无需用户操作或感知,即可对系统进行升级。
[0027]分布式系统的客户端通常会内嵌在用户进程中运行,当客户端需要升级时,要由用户进程自己重新编译生成新的可执行程序,然后对线上的服务节点进行逐个升级。在升级过程中,由于需要重启进程,还需要提前将待升级进程上的请求/流量迁移走,待升级完成后,再将请求/流量迁移回来。这一过程不仅会影响用户进程的运行,也会影响客户端升
级的成本。然而在有些项目中,用户进程的升级代价很大,此时修复客户端程序的问题就会成为一件很困难的事情。基于此,本说明书实施例提供的一种进程更新方法,实现对客户端进程的热升级处理,无需用户进程升级和重启,仅需启动一个新的客户端进程,代替需要被更新的旧的客户端进程,进而采用双进程的方式,不仅能避免等待客户端初始化的时间,也降低客户端升级的开销。
[0028]需要说明的是,用户进程中客户端需要升级时,将客户端程序拆成两个进程,一个是轻客户端,逻辑比较简单,只负责请求的转发(转发给重客户端);另一个是重客户端,包含了主要的客户端逻辑。轻客户端包含在用户进程中,重客户端作为一个独立进程可以独立进行升级。
[0029]因此,本说明书实施例提供的进程更新方法,主要在于对重客户端的升级,轻客户端由于逻辑简单,可以尽可能不进行升级,只升级重客户端,以减少对客户端的升级开销。
[0030]在本说明书中,提供了一种进程更新方法,本说明书同时涉及一种进程更新装置,一种计算设备,一种计算机可读存储介质本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种进程更新方法,应用于客户端,所述客户端包括:初始进程,第一目标进程,基于所述第一目标进程更新的第二目标进程;所述第一目标进程接收所述初始进程转发的至少一个用户请求,在确定满足更新条件的情况下,启动所述第二目标进程;所述第二目标进程在初始化完成的情况下,接收所述初始进程发送的所述至少一个用户请求,并对所述至少一个用户请求进行处理。2.根据权利要求1所述的进程更新方法,所述第二目标进程对所述至少一个用户请求进行处理,包括:所述第二目标进程接收所述初始进程基于所述至少一个用户请求中携带的用户句柄,确定与所述用户句柄具有关联关系的内部句柄,并基于所述内部句柄处理所述至少一个用户请求。3.根据权利要求2所述的进程更新方法,所述第二目标进程接收所述初始进程基于所述至少一个用户请求中携带的用户句柄,确定与所述用户句柄具有关联关系的内部句柄之后,还包括:所述第二目标进程基于所述与用户句柄具有关联关系的内部句柄,在本地中未能确定与所述内部句柄相同的句柄的情况下,基于重打开操作获得目标内部句柄,并基于所述目标内部句柄处理所述至少一个用户请求。4.根据权利要求3所述的进程更新方法,所述基于重打开操作获得目标内部句柄,并基于所述目标内部句柄处理所述至少一个用户请求,包括:所述第二目标进程向后端服务器发送携带有与用户句柄具有关联关系的内部句柄的重打开指令,接收所述后端服务器响应于所述重打开指令返回的目标内部句柄,并基于所述目标内部句柄处理所述至少一个用户请求。5.根据权利要求3或4所述的进程更新方法,所述基于所述目标内部句柄处理所述至少一个用户请求之后,还包括:所述第二目标进程接收后端服务器返回的句柄更新完成消息。6.根据权利要求5所述的进程更新方法,所述基于所述目标内部句柄处理所述至少一个用户请求之后,还包括:所述初始进程从所述第二目标进程获取所述目标内部句柄,并缓存所述至少一个用户请求中携带的用户句柄与所述目标内部句柄的关联关系。7.根据权利...

【专利技术属性】
技术研发人员:王梦杰
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1