CN111414181A - 网络产品的服务升级方法、装置、服务器及存储介质 - Google Patents
网络产品的服务升级方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN111414181A CN111414181A CN202010196539.4A CN202010196539A CN111414181A CN 111414181 A CN111414181 A CN 111414181A CN 202010196539 A CN202010196539 A CN 202010196539A CN 111414181 A CN111414181 A CN 111414181A
- Authority
- CN
- China
- Prior art keywords
- service
- target
- server
- state
- upgrading
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000009434 installation Methods 0.000 claims abstract description 24
- 238000004891 communication Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 24
- 239000007787 solid Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供的一种网络产品的服务升级方法、装置、服务器及存储介质,其中方法包括:确定待升级网络产品所集成的每个目标服务对应的服务器,针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态,当所述目标服务器的调用状态为空闲状态时,运行已获取的所述待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级,在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器。相比于现有技术,本发明实施例无需人为查找以及关闭目标服务对应的进程,也能实现网络产品的服务升级,因此本发明实施例可以降低网络产品升级过程的风险。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种网络产品的服务升级方法、装置、服务器及存储介质。
背景技术
随着业务规模的不断扩大,单个服务器已经不能满足业务需求,示例性的,一个网络产品升级过程就是一项业务,而一个网络产品集成多个服务,多个服务共同协作实现一个功能。例如,一个APP(Application,应用程序),APP的注册功能,包括:填写用户名,校验用户名是否重复,发送验证码等等,发送验证码可以是一项服务,而网络产品升级过程常常需要对多个服务进行升级,需要更多的服务器满足业务需求,因此DUBBO(一种开源分布式服务框架)应运而生。
如图1所示,DUBBO主要包括:管理服务器、服务提供服务器,服务消费服务器,注册中心服务器,监控中心服务器以及服务器集群。开发人员利用管理服务器管理服务提供服务器,服务消费服务器,注册中心服务器,监控中心服务器以及服务器集群。每台服务提供服务器提供一个服务,每个服务可以对应多台服务器,多台服务器可以提供同一个服务,每台服务消费服务器可以调用多个服务。服务提供服务器在服务启动时,向注册中心注册自己提供的服务,服务器集群中的每台服务器负责启动,加载,运行服务提供服务器;服务消费服务器在启动时,向注册中心服务器订阅自己所需的服务。注册中心服务器返回地址列表给服务消费服务器,该地址列表包括服务提供者服务器注册的服务地址,如果地址列表有变更,注册中心将基于长连接推送变更后的地址列表给服务消费服务器;服务消费服务器基于负载均衡机制,从服务提供服务器的地址列表中,选一台服务提供服务器对应的服务器进行调用,监控中心负责监控服务消费服务器和服务提供服务器,在内存中累计调用服务器的次数和调用时间。
在升级网络产品时,开发人员需要通过DUBBO的管理平台人为禁用与该网络产品所集成的多个服务相关的服务提供服务器,然后通过地址列表访问该网络产品集成的多个服务的地址,从而找到服务对应的进程,关闭服务对应的进程,然后获取该网络产品的安装包,启动安装包更新该网络产品,在更新该网络产品后,开发人员通过DUBBO的管理平台人为启动升级后的该网络产品所集成的多个服务相关的服务提供服务器,由于一个网络产品集成的服务较多,与服务相关的服务提供服务器较多,人为升级网络产品的过程容易出错,容易禁用与该网络产品集成的多个服务不相关的服务提供服务器,因此导致现有的网络产品升级过程的风险较高。
发明内容
本发明实施例的目的在于提供一种网络产品的服务升级方法、装置、服务器及存储介质,以降低网络产品升级过程的风险。具体技术方案如下:
第一方面,本发明实施例提供的一种网络产品的服务升级方法,包括:
确定待升级网络产品所集成的每个目标服务对应的服务器;
针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态;
当目标服务器的调用状态为空闲状态时,运行已获取的待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级;
在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的服务消费服务器,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务。
可选的,针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态的步骤之后,本发明第一方面实施例提供的一种网络产品的服务升级方法还包括:
修改目标服务器对应的目标服务的版本号,得到修改后的目标服务器对应的目标服务的版本号,修改后的目标服务器对应的目标服务的版本号与待升级网络产品的升级安装包的版本号相同。
可选的,在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器的步骤之后,本发明第一方面实施例提供的一种网络产品的服务升级方法还包括:
当检测到服务消费服务器调用目标服务器对应的目标服务时,将调用请求分配给升级目标服务后的目标服务器。
可选的,重启目标服务器对应的服务提供服务器以及服务消费服务器的步骤之前,本发明第一方面实施例提供的一种网络产品的服务升级方法还包括:
当检测到有服务消费服务器调用目标服务器对应的目标服务的调用请求时,将调用请求分配至剩余服务器,剩余服务器为与目标服务器对应的目标服务相同的服务器中除目标服务器外的服务器。
可选的,目标服务器的调用状态通过以如下步骤得到:
获取服务调用日志,服务调用日志包括:服务消费服务器调用每个目标服务的次数,调用时间,服务提供服务器向注册中心注册每个目标服务的服务地址,注册时间以及每个目标服务的版本号;
从服务调用日志中读取目标服务器的调用状态,调用状态为:忙碌状态或者空闲状态。
可选的,在从服务调用日志中读取目标服务器的调用状态的步骤之后,本发明第一方面实施例提供的一种网络产品的服务升级方法还包括:
当目标服务器的调用状态为忙碌状态时,等待目标服务器处理完调用请求,直至目标服务器的调用状态为空闲状态。
可选的,在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的服务消费服务器,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务的步骤,包括:
在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器;
获得已升级的目标地址,已升级的目标地址为重启后的服务提供服务器向注册中心提供的升级后的目标服务的服务地址;
当检测到重启后的服务消费服务器发送调用目标服务器对应的目标服务的调用请求时,将该调用请求分配给升级服务后的目标服务器,以使重启后的服务消费服务器按照目标地址,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务,目标服务与目标地址一一对应,目标地址与服务提供服务器一一对应。
第二方面,本发明实施例提供的一种网络产品的服务升级装置,包括:
第一确定模块,用于确定待升级网络产品所集成的每个目标服务对应的服务器;
禁用模块,用于针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态;
升级模块,用于当目标服务器的调用状态为空闲状态时,运行已获取的待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级;
重启模块,用于在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的服务消费服务器,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务。
可选的,本发明第二方面实施例提供的一种网络产品的服务升级装置还包括:
修改模块,用于修改目标服务器对应的目标服务的版本号,得到修改后的目标服务器对应的目标服务的版本号,修改后的目标服务器对应的目标服务的版本号与待升级网络产品的升级安装包的版本号相同。
可选的,本发明第二方面实施例提供的一种网络产品的服务升级装置还包括:
第一分配模块,用于当检测到服务消费服务器调用目标服务器对应的目标服务时,将调用请求分配给升级目标服务后的目标服务器。
可选的,本发明第二方面实施例提供的一种网络产品的服务升级装置还包括:
第二分配模块,用于当检测到有服务消费服务器调用目标服务器对应的目标服务的调用请求时,将调用请求分配至剩余服务器,剩余服务器为与目标服务器对应的目标服务相同的服务器中除目标服务器外的服务器。
可选的,本发明第二方面实施例提供的一种网络产品的服务升级装置还包括:
获取模块,用于获取服务调用日志,服务调用日志包括:服务消费服务器调用每个目标服务的次数,调用时间,服务提供服务器向注册中心注册每个目标服务的服务地址,注册时间以及每个目标服务的版本号;
从服务调用日志中读取目标服务器的调用状态,调用状态为:忙碌状态或者空闲状态。
可选的,本发明第二方面实施例提供的一种网络产品的服务升级装置还包括:
等待模块,用于当目标服务器的调用状态为忙碌状态时,等待目标服务器处理完调用请求,直至目标服务器的调用状态为空闲状态。
可选的,重启模块具体用于:
在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器;
获得已升级的目标地址,已升级的目标地址为重启后的服务提供服务器向注册中心提供的升级后的目标服务的服务地址;
当检测到重启后的服务消费服务器发送调用目标服务器对应的目标服务的调用请求时,将该调用请求分配给升级服务后的目标服务器,以使重启后的服务消费服务器按照目标地址,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务,目标服务与目标地址一一对应,目标地址与服务提供服务器一一对应。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使:实现本发明实施例第一方面提供的一种网络产品的服务升级方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行本发明实施例第一方面提供的一种网络产品的服务升级方法步骤。
第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本发明实施例第一方面提供的一种网络产品的服务升级方法步骤。
本发明实施例提供的一种网络产品的服务升级方法、装置、服务器及存储介质,确定待升级网络产品所集成的每个目标服务对应的服务器,针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态,当所述目标服务器的调用状态为空闲状态时,运行已获取的所述待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级,在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的所述服务消费服务器,从升级目标服务后的所述目标服务器获取重启后的所述服务提供服务器提供的目标服务。相比于现有技术,本发明实施例无需人为禁用与该网络产品集成的多个服务相关的服务提供服务器,只需在针对同一目标服务对应的服务器中选择一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态,然后运行升级安装包,对目标服务器对应的目标服务进行升级,重启服务提供服务器和服务消费服务器,无需人为查找以及关闭目标服务对应的进程,也能实现网络产品的服务升级,因此本发明实施例可以降低网络产品升级过程的风险。
当然,实施本发明的任一网络产品或方法并不一定需要同时达到以上的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的DUBBO的结构示意图;
图2为本发明实施例提供的一种网络产品的服务升级方法的流程图;
图3为本发明实施例提供的获取目标服务器的调用状态的流程图;
图4为本发明实施例提供的实现S204步骤的流程图;
图5为本发明实施例提供的一种网络产品的服务升级装置的结构图示意图;
图6为本发明实施例提供的一种服务器的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图2所示,本发明实施例提供了一种网络产品的服务升级方法,包括:
S201,确定待升级网络产品所集成的每个目标服务对应的服务器。
可以理解,本发明实施例提供的一种网络产品的服务升级方法可以通过一个脚本程序实现,该脚本程序可以运行在服务消费服务器,服务提供服务器或者第三方服务器上,该第三方服务器可以与DUBBO中的设备进行通信。
示例性的,该脚本程序可以是shell脚本(Shell Script,外壳脚本)程序,也可以是其他脚本程序,凡是可以实现本发明实施例的脚本程序都属于本发明的保护范围,在此不作限定。
可以理解,一款网络产品会集成多个功能,每一个功能需要多个服务之间相互配合实现,一项服务可以在服务器集群中的多台服务器上运行,同时一项服务可以分成多个子服务,服务器集群中的每台服务器负责运行一个子服务,在对一款网络产品进行升级时,该网络产品集成的每个服务是目标服务,需要在服务器集群中确定该网络产品集成的每个目标服务对应的至少一台服务器。
示例性的,假设一个目标服务a,包含了三个子服务,分别是子服务a1、子服务a2、子服务a3;目标服务器1对应子服务a1,目标服务器2对应子服务a2,目标服务器3对应子服务a3,同时,目标服务a在3个目标服务器都可以运行。
S202,针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态。
可以理解,一个目标服务对应多台目标服务器,多台服务器都可以运行目标服务,在对一个目标服务进行升级时,只能将一台目标服务器对应的服务提供服务器的状态设置为禁用,剩余目标服务器继续执行调用请求。在一台服务器对应的目标服务升级完成后,继续对剩余的目标服务器中的一台目标服务器对应的目标服务进行升级,直至同一目标服务对应的目标服务器都完成目标服务的升级,如此消费服务器调用目标服务的调用请求不会中断。
本实施例可以通过在脚本程序中输入服务提供服务器注册目标服务的地址,自动查询服务提供服务器,然后对该服务提供服务器的状态设置为禁用状态。
S203,当目标服务器的调用状态为空闲状态时,运行已获取的待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级。
其中,目标服务器的调用状态为:忙碌状态或空闲状态。
可以理解,目标服务器对应的服务提供服务器的状态为禁用状态,服务提供服务器也不会再向注册中心注册目标服务。该目标服务器执行完所有的调用请求,目标服务器的调用状态为空闲状态时。升级安装包包含了待升级网络产品的各项目标服务升级后的版本,当使用升级安装包对目标服务器对应的目标服务进行升级时,旧版本的目标服务还可以正常被服务消费者调用。
可以理解,每台目标服务器对应的目标服务都与一台服务提供者服务器对应,服务提供者服务器负责向注册中心服务器注册自己提供的目标服务,只有将目标服务器对应的服务提供服务器的状态设置为禁用状态,服务提供服务器将停止注册目标服务的操作,此时才能对目标服务进行时升级。
S204,在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的服务消费服务器,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务。
可以理解,重启后的服务提供服务器发生了变化,未进行服务升级的服务提供服务器向注册中心服务器注册的服务地址在目标服务进行升级后,发生了变化,因此重启目标服务器对应的服务提供服务器后,服务提供者就会向注册中心服务器重新注册自己提供升级后的目标服务的服务地址,重启后的服务消费服务器就会调用重启后的服务提供服务器提供的目标服务。
相比于现有技术,本发明实施例无需人为禁用与该网络产品集成的多个服务相关的服务提供服务器,只需在针对同一目标服务对应的服务器中选择一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态,然后运行升级安装包,对目标服务器对应的目标服务进行升级,重启服务提供服务器和服务消费服务器,无需人为查找以及关闭目标服务对应的进程,也能实现网络产品的服务升级,因此本发明实施例可以降低网络产品升级过程的风险。
作为本发明实施例可选的一种实施方式,针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态的步骤之后,本发明实施例提供的一种网络产品的服务升级方法还包括:
修改目标服务器对应的目标服务的版本号,得到修改后的目标服务器对应的目标服务的版本号。
其中,修改后的目标服务器对应的目标服务的版本号与待升级网络产品的升级安装包的版本号相同。
示例性的,假设未升级前的目标服务的版本号为2.0,升级安装包的版本为3.0,升级后的目标服务的版本号为3.0。
可以理解,在没有对待升级的网络产品进行升级时,可以修改目标服务器对应的目标服务的版本号。如此目标服务器对应的目标服务存在两个版本号,旧的版本号以及修改后的版本号,使得升级后的目标服务和升级前的目标服务易于区分,当服务消费服务器调用一个目标服务时,如果该目标服务已经完成升级,可以调用升级后的该目标服务,实现同一个目标服务不同版本号之间互不影响,如果该目标服务正在升级,则可以调用未升级的该目标服务,降低调用目标服务出现混乱现象的概率。
作为本发明实施例可选的一种实施方式,在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器的步骤之后,本发明实施例提供的一种网络产品的服务升级方法还包括:
当检测到服务消费服务器调用目标服务时,将调用请求分配给升级目标服务后的目标服务器。
作为本发明实施例可选的一种实施方式,在重启目标服务器对应的服务提供服务器以及服务消费服务器的步骤之前,本发明实施例提供的一种网络产品的服务升级方法还包括:
当检测到有服务消费服务器调用目标服务器对应的目标服务的调用请求时,将调用请求分配至剩余服务器。
其中,剩余服务器为与目标服务器对应的目标服务相同的服务器中除目标服务器外的服务器。
可以理解,当目标服务器对应的目标服务正在升级,但升级还未完成,此时该目标服务器无法提供目标服务,如果检测到有调用请求,将该调用请求分配至剩余服务器,以使调用目标服务的调用请求可以被响应,如此可以降低升级服务对用户的影响,提升用户体验。
作为本发明实施例提供的一种可选的实施方式,如图3所示,上述步骤S203中目标服务器的调用状态可以通过如下步骤获得:
S301,获取服务调用日志。
其中,服务调用日志包括:服务消费服务器调用每个目标服务的次数,调用时间,服务提供服务器向注册中心注册每个目标服务的服务地址,注册时间以及每个目标服务的版本号。
可以理解,本实施例在对网络产品的服务进行升级前,监控服务器上会存储一个服务调用日志,用于记录网络产品集成的各个目标服务的信息,当服务消费服务器调用每个目标服务时,将服务消费服务器调用每个目标服务的次数,调用时间都记录在服务调用日志中,将服务提供服务器向注册中心注册每个服务的服务地址以及每个目标服务被注册时的版本号记录在服务调用日志中,同时将注册每个目标服务的系统时间作为注册时间也记录在服务调用日志中。
S302,从服务调用日志中读取每台目标服务器的调用状态。
可以理解,当服务消费服务器请求调用一个目标服务时,目标服务器从服务提供服务器获取该目标服务,对服务消费服务器的调用请求进行响应,直至响应结束,统计每个目标服务被目标服务器响应的平均时间,当读取服务调用日志时,以读取服务调用日志的系统时间为起始时间点,比较服务调用日志中服务消费服务器调用目标服务的调用时间与起始时间点的间隔是小于平均时间,如果是则认为目标服务器正在响应调用请求,此时目标服务器的调用状态为忙碌状态,如果否,则认为目标服务器已经响应完成调用请求,此时目标服务器的调用状态为空闲状态。
本实施方式从服务调用日志判断服务是否被调用以及服务在升级过程中是否正在调用,在服务被目标服务器处理后,对服务进行升级,降低升级过程中用户的影响,提高客户的体验。
作为本发明实施例可选的一种实施方式,在从服务调用日志中读取目标服务器的调用状态的步骤之后,本发明实施例提供的一种网络产品的服务升级方法还包括:
当目标服务器的调用状态为忙碌状态时,等待目标服务器处理完调用请求,直至目标服务器的调用状态为空闲状态。
如果一台目标服务器正在处理调用请求,则该目标服务器处于忙碌状态,等待该目标服务器处理完调用请求时,则该目标服务器就处于空闲状态,需要对调用状态处于空闲状态的目标服务器对应的目标服务进行升级,相比于所有目标服务器对应的目标服务同时进行升级的方式,本实施方式可以降低服务升级对用户的影响,提高用户体验。
作为本发明实施例提供的一种可选的实施方式,如图4所示,上述步骤S204可以通过如下步骤实现:
S2041,在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器。
S2042,获得已升级的目标地址。
其中,已升级的目标地址为重启后的服务提供服务器向注册中心提供的升级后的目标服务的服务地址。
S2043,当检测到重启后的服务消费服务器发送调用目标服务器对应的目标服务的调用请求时,将该调用请求分配给升级服务后的目标服务器,以使重启后的服务消费服务器按照目标地址,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务。
其中,目标服务与目标地址一一对应,目标地址与服务提供服务器一一对应。
示例性的,有3台服务提供服务器a,b以及c,服务提供服务器a,b以及c向注册中心服务器分别注册自己提供的目标服务,服务提供服务器a注册目标服务a1后,注册中心服务器分配的目标地址为:a/a1/2.0,服务提供服务器b注册目标服务后,注册中心服务器分配的目标地址为:b/b1/1.0,服务提供服务器c注册目标服务后,注册中心服务器分配的目标地址为:c/c1/0.0,每个目标地址对应一个目标服务,每台服务提供服务器提供一个目标服务。
可以理解,服务提供服务器在重启后会向注册中心服务器重新注册服务地址,重启后的服务消费服务器向目标服务器请求调用目标服务时,将该调用请求分配至升级服务后的目标服务器,目标服务器将提供目标服务升级后的服务提供服务器注册的目标地址,服务消费服务器只需按照该目标地址,就可以从服务提供服务器获取目标服务。
本实施方式通过将服务升级后接收的对目标服务的调用请求分配给升级目标服务后的目标服务器,使得消费服务器调用升级后的目标服务,无需查找未升级前的目标服务,提高调用目标服务的实时性。
如图5所示,本发明实施例提供了一种网络产品的服务升级装置,包括:
第一确定模块501,用于确定待升级网络产品所集成的每个目标服务对应的服务器。
禁用模块502,用于针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态。
升级模块503,用于当目标服务器的调用状态为空闲状态时,运行已获取的待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级。
重启模块504,用于在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的服务消费服务器,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务。
本发明实施例无需人为禁用与该网络产品集成的多个服务相关的服务提供服务器,只需在针对同一目标服务对应的服务器中选择一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态,然后运行升级安装包,对目标服务器对应的目标服务进行升级,重启服务提供服务器和服务消费服务器,无需人为查找以及关闭目标服务对应的进程,也能实现网络产品的服务升级,因此本发明实施例可以降低网络产品升级过程的风险。
作为本发明实施例可选的一种实施方式,本发明实施例提供的一种网络产品的服务升级装置还包括:
修改模块,用于修改目标服务器对应的目标服务的版本号,得到修改后的目标服务器对应的目标服务的版本号,修改后的目标服务器对应的目标服务的版本号与待升级网络产品的升级安装包的版本号相同。
作为本发明实施例可选的一种实施方式,本发明实施例提供的一种网络产品的服务升级装置还包括:
第一分配模块,用于当检测到服务消费服务器调用目标服务器对应的目标服务时,将调用请求分配给升级目标服务后的目标服务器。
作为本发明实施例可选的一种实施方式,本发明实施例提供的一种网络产品的服务升级装置还包括:
第二分配模块,用于当检测到有服务消费服务器调用目标服务器对应的目标服务的调用请求时,将调用请求分配至剩余服务器,剩余服务器为与目标服务器对应的目标服务相同的服务器中除目标服务器外的服务器。
作为本发明实施例可选的一种实施方式,本发明实施例提供的一种网络产品的服务升级装置还包括:
获取模块,用于获取服务调用日志,服务调用日志包括:服务消费服务器调用每个目标服务的次数,调用时间,服务提供服务器向注册中心注册每个目标服务的服务地址,注册时间以及每个目标服务的版本号。
从服务调用日志中读取每台目标服务器的调用状态。
作为本发明实施例可选的一种实施方式,本发明实施例提供的一种网络产品的服务升级装置还包括:
等待模块,用于当目标服务器的调用状态为忙碌状态时,等待目标服务器处理完调用请求,直至目标服务器的调用状态为空闲状态。
可选的,重启模块具体用于:
在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器。
获得已升级的目标地址,已升级的目标地址为重启后的服务提供服务器向注册中心提供的升级后的目标服务的服务地址。
当检测到重启后的服务消费服务器发送调用目标服务器对应的目标服务的调用请求时,将该调用请求分配给升级服务后的目标服务器,以使重启后的服务消费服务器按照目标地址,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务,目标服务与目标地址一一对应,目标地址与服务提供服务器一一对应。
本发明实施例还提供了一种服务器,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:
确定待升级网络产品所集成的每个目标服务对应的服务器;
针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态;
当目标服务器的调用状态为空闲状态时,运行已获取的待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级;
在升级完成后,重启目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的服务消费服务器,从升级目标服务后的目标服务器获取重启后的服务提供服务器提供的目标服务。
相比于现有技术,本发明实施例无需人为禁用与该网络产品集成的多个服务相关的服务提供服务器,只需在针对同一目标服务对应的服务器中选择一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态,然后运行升级安装包,对目标服务器对应的目标服务进行升级,重启服务提供服务器和服务消费服务器,无需人为查找以及关闭目标服务对应的进程,也能实现网络产品的服务升级,因此本发明实施例可以降低网络产品升级过程的风险。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述服务器与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或服务器其他可编程逻辑器件、分立门或服务器晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一一种网络产品的服务升级方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序网络产品,当其在计算机上运行时,使得计算机执行上述实施例中任一一种网络产品的服务升级方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或服务器其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序网络产品的形式实现。所述计算机程序网络产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或服务器其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或服务器从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或服务器是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或服务器半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如当前和第二等之类的关系术语仅仅用来将一个实体或服务器操作与另一个实体或操作区分开来,而不一定要求或服务器暗示这些实体或操作之间存在任何这种实际的关系或服务器顺序。而且,术语“包括”、“包含”或服务器其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或服务器设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或服务器是还包括为这种过程、方法、物品或服务器设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或服务器设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/服务器/计算机程序/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (16)
1.一种网络产品的服务升级方法,其特征在于,所述方法包括:
确定待升级网络产品所集成的每个目标服务对应的服务器;
针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态;
当所述目标服务器的调用状态为空闲状态时,运行已获取的所述待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级;
在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的所述服务消费服务器,从升级目标服务后的所述目标服务器获取重启后的所述服务提供服务器提供的目标服务。
2.根据权利要求1所述的方法,其特征在于,针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态的步骤之后,所述方法还包括:
修改所述目标服务器对应的目标服务的版本号,得到修改后的目标服务器对应的目标服务的版本号,所述修改后的目标服务器对应的目标服务的版本号与所述待升级网络产品的升级安装包的版本号相同。
3.根据权利要求1所述的方法,其特征在于,所述在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器的步骤之后,所述方法还包括:
当检测到所述服务消费服务器调用所述目标服务器对应的目标服务时,将所述调用请求分配给所述升级目标服务后的目标服务器。
4.根据权利要求1所述的方法,其特征在于,所述重启所述目标服务器对应的服务提供服务器以及服务消费服务器的步骤之前,所述方法还包括:
当检测到有服务消费服务器调用所述目标服务器对应的目标服务的调用请求时,将所述调用请求分配至剩余服务器,所述剩余服务器为与所述目标服务器对应的目标服务相同的服务器中除目标服务器外的服务器。
5.根据权利要求1所述的方法,其特征在于,所述目标服务器的调用状态通过以如下步骤得到:
获取服务调用日志,所述服务调用日志包括:所述服务消费服务器调用每个目标服务的次数,调用时间,所述服务提供服务器向注册中心注册每个目标服务的服务地址,注册时间以及每个目标服务的版本号;
从所述服务调用日志中读取所述目标服务器的调用状态,所述调用状态为:忙碌状态或者空闲状态。
6.根据权利要求5所述的方法,其特征在于,在从所述服务调用日志中读取所述目标服务器的调用状态的步骤之后,所述方法还包括:
当所述目标服务器的调用状态为忙碌状态时,等待所述目标服务器处理完调用请求,直至所述目标服务器的调用状态为空闲状态。
7.根据权利要求1所述的方法,其特征在于,所述在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的所述服务消费服务器,从升级目标服务后的所述目标服务器获取重启后的所述服务提供服务器提供的目标服务的步骤,包括:
在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器;
获得已升级的目标地址,所述已升级的目标地址为重启后的服务提供服务器向注册中心提供的升级后的目标服务的服务地址;
当检测到重启后的所述服务消费服务器发送调用所述目标服务器对应的目标服务的调用请求时,将该调用请求分配给升级服务后的所述目标服务器,以使重启后的所述服务消费服务器按照所述目标地址,从升级目标服务后的所述目标服务器获取重启后的所述服务提供服务器提供的目标服务,所述目标服务与目标地址一一对应,所述目标地址与服务提供服务器一一对应。
8.一种网络产品的服务升级装置,其特征在于,所述装置包括:
第一确定模块,用于确定待升级网络产品所集成的每个目标服务对应的服务器;
禁用模块,用于针对同一目标服务对应的服务器中的一台目标服务器,将该目标服务器对应的服务提供服务器的状态设置为禁用状态;
升级模块,用于当所述目标服务器的调用状态为空闲状态时,运行已获取的所述待升级网络产品的升级安装包,对该目标服务器对应的目标服务进行升级;
重启模块,用于在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器,以使重启后的所述服务消费服务器,从升级目标服务后的所述目标服务器获取重启后的所述服务提供服务器提供的目标服务。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
修改模块,用于修改所述目标服务器对应的目标服务的版本号,得到修改后的目标服务器对应的目标服务的版本号,所述修改后的目标服务器对应的目标服务的版本号与所述待升级网络产品的升级安装包的版本号相同。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一分配模块,用于当检测到所述服务消费服务器调用所述目标服务器对应的目标服务时,将所述调用请求分配给所述升级目标服务后的目标服务器。
11.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二分配模块,用于当检测到有服务消费服务器调用所述目标服务器对应的目标服务的调用请求时,将所述调用请求分配至剩余服务器,所述剩余服务器为与所述目标服务器对应的目标服务相同的服务器中除目标服务器外的服务器。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取服务调用日志,所述服务调用日志包括:所述服务消费服务器调用每个目标服务的次数,调用时间,所述服务提供服务器向注册中心注册每个目标服务的服务地址,注册时间以及每个目标服务的版本号;
从所述服务调用日志中读取所述目标服务器的调用状态,所述调用状态为:忙碌状态或者空闲状态。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
等待模块,用于当所述目标服务器的调用状态为忙碌状态时,等待所述目标服务器处理完调用请求,直至所述目标服务器的调用状态为空闲状态。
14.根据权利要求8所述的装置,其特征在于,所述重启模块具体用于:
在升级完成后,重启所述目标服务器对应的服务提供服务器以及服务消费服务器;
获得已升级的目标地址,所述已升级的目标地址为重启后的服务提供服务器向注册中心提供的升级后的目标服务的服务地址;
当检测到重启后的所述服务消费服务器发送调用所述目标服务器对应的目标服务的调用请求时,将该调用请求分配给升级服务后的所述目标服务器,以使重启后的所述服务消费服务器按照所述目标地址,从升级目标服务后的所述目标服务器获取重启后的所述服务提供服务器提供的目标服务,所述目标服务与目标地址一一对应,所述目标地址与服务提供服务器一一对应。
15.一种服务器,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010196539.4A CN111414181B (zh) | 2020-03-19 | 2020-03-19 | 网络产品的服务升级方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010196539.4A CN111414181B (zh) | 2020-03-19 | 2020-03-19 | 网络产品的服务升级方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111414181A true CN111414181A (zh) | 2020-07-14 |
CN111414181B CN111414181B (zh) | 2023-11-14 |
Family
ID=71491238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010196539.4A Active CN111414181B (zh) | 2020-03-19 | 2020-03-19 | 网络产品的服务升级方法、装置、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414181B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453468B1 (en) * | 1999-06-30 | 2002-09-17 | B-Hub, Inc. | Methods for improving reliability while upgrading software programs in a clustered computer system |
CN105450757A (zh) * | 2015-12-02 | 2016-03-30 | 联动优势电子商务有限公司 | 一种服务管理方法及系统 |
CN107491321A (zh) * | 2017-07-03 | 2017-12-19 | 北京奇安信科技有限公司 | 一种用于实现软件自动更新的处理方法及装置 |
CN108055248A (zh) * | 2017-11-30 | 2018-05-18 | 平安科技(深圳)有限公司 | 基于dubbo框架的远程调用方法、服务器及存储介质 |
CN109347652A (zh) * | 2018-08-31 | 2019-02-15 | 北京奇艺世纪科技有限公司 | 服务器集群的服务管理方法和装置 |
CN110162314A (zh) * | 2018-02-12 | 2019-08-23 | 华为技术有限公司 | 一种软件升级管理的方法、服务器、终端、装置及存储介质 |
CN110795120A (zh) * | 2019-09-24 | 2020-02-14 | 万翼科技有限公司 | 软件升级方法及相关装置 |
-
2020
- 2020-03-19 CN CN202010196539.4A patent/CN111414181B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453468B1 (en) * | 1999-06-30 | 2002-09-17 | B-Hub, Inc. | Methods for improving reliability while upgrading software programs in a clustered computer system |
CN105450757A (zh) * | 2015-12-02 | 2016-03-30 | 联动优势电子商务有限公司 | 一种服务管理方法及系统 |
CN107491321A (zh) * | 2017-07-03 | 2017-12-19 | 北京奇安信科技有限公司 | 一种用于实现软件自动更新的处理方法及装置 |
CN108055248A (zh) * | 2017-11-30 | 2018-05-18 | 平安科技(深圳)有限公司 | 基于dubbo框架的远程调用方法、服务器及存储介质 |
WO2019104975A1 (zh) * | 2017-11-30 | 2019-06-06 | 平安科技(深圳)有限公司 | 基于dubbo框架的远程调用方法、服务器及存储介质 |
CN110162314A (zh) * | 2018-02-12 | 2019-08-23 | 华为技术有限公司 | 一种软件升级管理的方法、服务器、终端、装置及存储介质 |
CN109347652A (zh) * | 2018-08-31 | 2019-02-15 | 北京奇艺世纪科技有限公司 | 服务器集群的服务管理方法和装置 |
CN110795120A (zh) * | 2019-09-24 | 2020-02-14 | 万翼科技有限公司 | 软件升级方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111414181B (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106909411B (zh) | 一种文件更新方法及装置 | |
CN111367545A (zh) | 终端升级方法、装置、服务器、终端设备及可读存储介质 | |
CN108874426B (zh) | 一种应用程序更新方法、装置及可读存储介质 | |
US20190174302A1 (en) | Data backup method, storage medium and electronic device | |
CN110365745B (zh) | 数据处理系统、方法、装置、服务器和计算机可读介质 | |
CN110781149A (zh) | 管理直播间信息的方法、装置、设备及存储介质 | |
CN111666516A (zh) | 页面加载方法、装置、电子设备及存储介质 | |
CN114629883B (zh) | 服务请求的处理方法、装置、电子设备及存储介质 | |
CN112437148B (zh) | 业务请求的处理方法、装置、业务服务器及系统 | |
US20220405635A1 (en) | Machine learning engine implementation method and apparatus, terminal device, and storage medium | |
CN113760308A (zh) | Dsp系统的构建方法、装置、电子设备及存储介质 | |
CN111414181B (zh) | 网络产品的服务升级方法、装置、服务器及存储介质 | |
CN114221865B (zh) | 物联网终端的业务功能实现方法、装置、设备及存储介质 | |
US20090037493A1 (en) | Method and device for updating an object with copyright attribute | |
CN114090268B (zh) | 容器管理方法及容器管理系统 | |
CN110730197A (zh) | 一种服务发现方法和系统 | |
CN114116064A (zh) | 配置文件处理方法、装置以及服务器 | |
CN114637969A (zh) | 目标对象的鉴权方法及装置 | |
CN109962815B (zh) | 一种发布配置的方法、装置、服务器及客户端设备 | |
CN109348053B (zh) | 电话号码标记处理方法、服务器、终端设备及计算机可读存储介质 | |
CN110113187B (zh) | 一种配置更新方法、装置、配置服务器及配置系统 | |
JP2004326287A (ja) | プログラム遠隔更新システム | |
KR20210034297A (ko) | 업데이트 알람 설정을 수행하는 통신 단말기 및 그 제어방법 | |
CN109995855B (zh) | 一种数据获取方法、装置及终端 | |
CN115409547B (zh) | 多广告平台的广告信息管理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |