CN110837424A - 服务实例确定方法、装置、存储介质及电子设备 - Google Patents
服务实例确定方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN110837424A CN110837424A CN201910980135.1A CN201910980135A CN110837424A CN 110837424 A CN110837424 A CN 110837424A CN 201910980135 A CN201910980135 A CN 201910980135A CN 110837424 A CN110837424 A CN 110837424A
- Authority
- CN
- China
- Prior art keywords
- service
- service instance
- list
- client
- instance
- 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.)
- Pending
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/549—Remote execution
Abstract
本公开涉及一种服务实例确定方法、装置、存储介质及电子设备,所述方法包括:在接收到来自客户端的服务调用请求时,获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则;根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,以形成候选服务实例列表;将所述候选服务实例列表发送至负载均衡器,以由所述负载均衡器从所述候选服务实例列表中确定用于响应所述服务调用请求的目标服务实例。由此,可以基于路由规则对目标服务的服务实例进行过滤。
Description
技术领域
本公开涉及信息网络技术领域,具体地,涉及一种服务实例确定方法、装置、存储介质及电子设备。
背景技术
微服务已经成为当下流行的服务架构。在微服务架构下,同一个服务对应有多个服务实例。在接收到客户端的服务调用请求时,需要从多个服务实例选取一个服务实例对该服务调用请求进行响应。现有技术中,客户端提交服务调用请求至负载均衡器,以由该负载均衡器按照指定的算法(例如随机、轮询等)来选取对应的服务实例。然而,负载均衡器在进行选择时,是将所有服务实例均视为可用的服务实例进行选择,然而在实际使用场景中,该服务对应的所有服务实例并不是全部可用的。
发明内容
本公开的目的是提供准确地、可配置地服务实例确定方法、装置、存储介质及电子设备。
为了实现上述目的,根据本公开的第一方面,提供一种服务实例确定方法,所述方法包括:
在接收到来自客户端的服务调用请求时,获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,其中,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则;
根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,以形成候选服务实例列表;
将所述候选服务实例列表发送至负载均衡器,以由所述负载均衡器从所述候选服务实例列表中确定用于响应所述服务调用请求的目标服务实例。
可选地,所述根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,包括:
根据发送所述服务调用请求的所述客户端的特征信息,从所述路由规则列表中确定与该客户端对应的目标路由规则;
根据所述目标路由规则,从所述服务实例列表中确定与所述目标路由规则中包含的所述服务实例特征信息相匹配的服务实例,作为所述候选服务实例。
可选地,所述获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,包括:
从服务实例注册中心获取与所述目标服务对应的服务实例,以形成所述服务实例列表,其中,各个服务对应的服务实例预先在所述服务实例注册中心进行注册;
从路由配置中心获取与所述目标服务对应的路由规则,以形成所述路由规则列表,其中,所述路由配置中心中预先存储有针对每一服务,客户端特征信息与服务实例特征信息之间的路由规则。
可选地,所述客户端特征信息包括以下中的至少一者:
客户端的IP地址、客户端的元数据、客户端中发起服务调用请求的应用的标识信息、客户端中发起服务调用请求的应用的版本号;
所述服务实例特征信息包括以下中的至少一者:
服务实例的IP地址、服务实例的服务端口号、服务实例的元数据、服务实例对应的应用的标识信息、服务实例对应的服务的标识信息、服务实例的版本号。
根据本公开的第二方面,提供一种服务实例确定装置,所述装置包括:
获取模块,用于在接收到来自客户端的服务调用请求时,获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,其中,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则;
确定模块,用于根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,以形成候选服务实例列表;
发送模块,用于将所述候选服务实例列表发送至负载均衡器,以由所述负载均衡器从所述候选服务实例列表中确定用于响应所述服务调用请求的目标服务实例。
可选地,所述确定模块包括:
第一确定子模块,用于根据发送所述服务调用请求的所述客户端的特征信息,从所述路由规则列表中确定与该客户端对应的目标路由规则;
第二确定子模块,用于根据所述目标路由规则,从所述服务实例列表中确定与所述目标路由规则中包含的所述服务实例特征信息相匹配的服务实例,作为所述候选服务实例。
可选地,所述获取模块包括:
第一获取子模块,用于从服务实例注册中心获取与所述目标服务对应的服务实例,以形成所述服务实例列表,其中,各个服务对应的服务实例预先在所述服务实例注册中心进行注册;
第二获取子模块,用于从路由配置中心获取与所述目标服务对应的路由规则,以形成所述路由规则列表,其中,所述路由配置中心中预先存储有针对每一服务,客户端特征信息与服务实例特征信息之间的路由规则。
可选地,所述客户端特征信息包括以下中的至少一者:
客户端的IP地址、客户端的元数据、客户端中发起服务调用请求的应用的标识信息、客户端中发起服务调用请求的应用的版本号;
所述服务实例特征信息包括以下中的至少一者:
服务实例的IP地址、服务实例的服务端口号、服务实例的元数据、服务实例对应的应用的标识信息、服务实例对应的服务的标识信息、服务实例的版本号。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面任一所述方法的步骤。
根据本公开的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第一方面任一所述方法的步骤。
在上述技术方案中,在接收到服务调用请求时,确定目标服务对应的服务实例列表和路由规则列表,进而可以根据路由规则列表中的路由规则对目标服务的服务实例进行过滤,从而可以避免现有技术中将服务调用请求路由至不可用的服务实例的现象。同时,通过与目标服务对应的路由规则确定候选服务实例,从而可以基于路由规则对目标服务的服务实例进行过滤,以确定满足该服务调用请求的候选服务实例,使得在进行服务调用时,可以有选择性的确定可调用的服务实例,实现服务实例确定的可配置化,有效提高服务调用的效率,提升用户使用体验。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据本公开的一种实施方式提供的服务实例确定方法的流程图;
图2是服务实例部署的场景示意图;
图3是根据本公开的一种实施方式提供的服务实例确定装置的框图;
图4是根据一示例性实施例示出的一种电子设备的框图;
图5是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
如背景技术中所述,现有技术中,在负载均衡器选择目标服务实例时,是将所有服务实例均视为可用的服务实例进行选择,然而在实际使用场景中,该服务对应的所有服务实例并不是全部可用的。例如,该服务的某个服务实例出现故障,导致该服务实例不可用,但在负载均衡器选择目标服务实例时,仍会将该服务实例视为可用的服务实例列入选择。
并且,申请人在实际使用还发现存在以下场景,如,同一个服务的多个服务实例可能会部署在多个机房中,而在服务调用时希望调用与客户端处于相同机房中的服务。又如,在服务升级时,新旧版本的服务实例同时在线,希望客户端访问新版本的服务实例,以对该服务实例进行测试。而现有技术中的方案在上述场景中也难以应用,在进行服务实例选择时,不能够根据用户的实际使用需求选择合适的服务实例。
基于此,本申请提供一种服务实例确定方法。图1所示,为根据本公开的一种实施方式提供的服务实例确定方法的流程图。如图1所示,所述方法包括:
在S11中,在接收到来自客户端的服务调用请求时,获取与服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,其中,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则,即,用于实现将服务调用请求从该客户端路由至该目标服务的服务实例的规则。
其中,所述客户端为目标服务的调用者,其可以是某个应用,也可以是某个服务,本公开中如无特殊说明,将服务的调用者统称为客户端。服务调用请求中可以包含其要调用的服务的标识信息,如服务名称,从而可以根据该标识信息确定服务调用请求要调用的目标服务。
在S12中,根据服务实例列表和路由规则列表,从服务实例列表中确定候选服务实例,以形成候选服务实例列表。
其中,所述候选服务实例即为所述服务实例列表中满足该路由规则列表中的路由规则的服务实例。即,可以通过路由规则列表对目标服务的各个服务实例进行过滤。其中,路由规则可以根据实际使用场景进行设置。作为示例,若目标服务的服务实例A出现故障,则可以设置一与该目标服务对应的路由规则,该路由规则用于禁止将调用目标服务的服务调用请求路由至服务实例A。因此,在根据服务实例列表和路由规则列表,从服务实例列表中确定候选服务实例时,确定出的候选服务实例列表中则不会包含该故障的服务实例A。
在S13中,将候选服务实例列表发送至负载均衡器,以由负载均衡器从候选服务实例列表中确定用于响应服务调用请求的目标服务实例。
其中,负载均衡器从候选服务实例列表中确定响应服务调用请求的目标服务实例可以通过随机或轮询的方式进行确定,该确定方式为现有技术,在此不再赘述。
在上述技术方案中,在接收到服务调用请求时,确定目标服务对应的服务实例列表和路由规则列表,进而可以根据路由规则列表中的路由规则对目标服务的服务实例进行过滤,从而可以避免现有技术中将服务调用请求路由至不可用的服务实例的现象。同时,通过与目标服务对应的路由规则确定候选服务实例,从而可以基于路由规则对目标服务的服务实例进行过滤,以确定满足该服务调用请求的候选服务实例,使得在进行服务调用时,可以有选择性的确定可调用的服务实例,实现服务实例确定的可配置化,有效提高服务调用的效率,提升用户使用体验。
可选地,所述客户端特征信息包括以下中的至少一者:
客户端的IP地址、客户端的元数据、客户端中发起服务调用请求的应用的标识信息、客户端中发起服务调用请求的应用的版本号。
所述服务实例特征信息包括以下中的至少一者:
服务实例的IP地址、服务实例的服务端口号、服务实例的元数据、服务实例对应的应用的标识信息、服务实例对应的服务的标识信息、服务实例的版本号。
其中,路由规则的客户端特征信息和服务实例特征信息均可以通过键值对的方式进行设置。如key=value或key!=value,其中,“=”表示等于,“!=”表示不等于,key用于表示客户端特征信息或服务实例特征信息的属性,value用于表示属性值,可以以通配符*表示任意属性值。
作为示例,获取到的路由规则列表中包含如下路由规则:
1.Application=test1->version=2.0;
2.Application=test2->version=1.0;
其中,在上述路由规则中,客户端特征信息为客户端中发起服务调用请求的应用的标识信息,如,Application用于表示应用的名称,Application=test1则表示客户端中发起服务调用请求的应用的名称为test1;服务实例特征信息可以为服务实例的版本号,如,version=2.0则表示服务实例的版本号为2.0。则上述路由规则1则表示:发起服务调用请求的应用的名称为test1的客户端访问该目标服务时,选择版本号为2.0的服务实例。
通过上述技术方案,可以对路由规则进行多样化的配置,以适应不同的服务调用场景,从而进一步贴合用户的使用需求,为对服务实例的确定进行定向化选择提供支持。
可选地,在S12中,根据服务实例列表和路由规则列表,从服务实例列表中确定候选服务实例的一种示例性实现方式如下,包括:
根据发送所述服务调用请求的所述客户端的特征信息,从所述路由规则列表中确定与该客户端对应的目标路由规则;
根据所述目标路由规则,从所述服务实例列表中确定与所述目标路由规则中包含的所述服务实例特征信息相匹配的服务实例,作为所述候选服务实例。
在该实施例中,可以首先确定发送服务调用请求的所述客户端的特征信息,示例地,确定出的所述客户端的特征信息为发起服务调用请求的应用的名称为test1。之后,可以将路由规则列表中的各个路由规则与该应用名称test1进行匹配。其中,路由规则1中对应的应用的名称为test1,则将该路由规则1确定为与该客户端对应的目标路由规则。路由规则2中对应的应用的名称为test2,与发送服务调用请求的客户端的特征信息不同,则可以直接忽略该路由规则2。
在确定出目标路由规则后,根据该目标路由规则,从服务实例列表中确定与所述目标路由规则中包含的服务实例特征信息相匹配的服务实例,即,从服务实例列表中确定版本号为2.0的服务实例作为候选服务实例。同时,可以将确定出的候选服务实例添加到候选服务实例列表。
可选地,若确定出的目标路由规则为多个,则可以针对每个目标路由规则,从服务实例列表中确定与该目标路由规则中包含的服务实例特征信息相匹配的服务实例。
通过上述技术方案,可以根据客户端特征信息确定目标路由规则,进而根据目标路由规则对目标服务对应的多个服务实例进行过滤,获得与该目标服务和客户端特征信息对应的候选服务实例,进而保证获得的候选服务实例为满足用户使用需求的服务实例,从而有效拓宽服务实例确定方法的适用范围。
可选地,在S11中,获取与服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,包括:
从服务实例注册中心获取与目标服务对应的服务实例,以形成服务实例列表,其中,各个服务对应的服务实例预先在所述服务实例注册中心进行注册。因此,在接收到服务调用请求,可以通过访问服务实例注册中心以获取实时的、最新的服务实例列表。
从路由配置中心获取与目标服务对应的路由规则,以形成路由规则列表,其中,所述路由配置中心中预先存储有针对每一服务,客户端特征信息与服务实例特征信息之间的路由规则。
可选地,若使用场景发生变化需要修改路由规则,则用户可以通过路由配置中心修改路由规则。示例地,用户可以通过路由配置中心新增一与目标服务对应的路由规则,则该新增的路由规则可以保存在路由配置中心。在接收到针对该目标服务的服务调用请求,从路由配置中心获取与目标服务对应的路由规则时,获取的路由规则中则会包括该新增的路由规则。因此,通过从路由配置中心获取路由规则,可以在不重启服务的情况下实现路由规则的修改及实时更新,即可以在服务运行期对与该服务对应的路由规则动态修改。
因此,在上述技术方案中,通过从服务实例注册中心获取与目标服务对应的服务实例,从路由配置中心获取与目标服务对应的路由规则,可以实现服务实例和路由规则的实时同步,实现服务实例和路由规则的实时修改和实时更新,保证该获得的服务实例和路由规则的实时性和准确性,进而保证服务实例确定的准确性。同时,通过上述技术方案,可以实现在服务运行期动态修改服务对应的路由规则,从而避免服务重启造成的时延,也可以进一步提升服务调用的效率。
以下,结合另一实施例,对本公开提供的服务实例的确定方法进行示例性说明。
示例地,存在两个服务,服务名称分别为order和user。其中,服务order调用服务user,服务order与服务user的服务实例部署如图2所示,即,服务order的服务实例order1(ip地址为192.168.1.100)和order2(ip地址为192.168.1.101)部署在机房1中,服务order的服务实例order3(ip地址为192.168.2.100)和order4(ip地址为192.168.2.101)部署在机房2中;服务user的服务实例user1(ip地址为192.168.1.102)和user2(ip地址为192.168.1.103)部署在机房1中,服务user的服务实例user3(ip地址为192.168.2.102)和user4(ip地址为192.168.2.103)部署在机房2中。
若服务order的服务实例order1调用服务user时,首先确定出与服务user对应的服务实例列表为:
user1 192.168.1.102;
user2 192.168.1.103;
user3 192.168.2.102;
user4 192.168.2.103;
确定出与服务user对应的路由规则列表如下:
3.ip=192.168.1.*->ip=192.168.1.*;
4.ip=192.168.2.*->ip=192.168.2.*;
其中,路由规则3表示ip地址为192.168.1.*的客户端发起的服务调用请求路由至ip为192.168.1.*的服务实例,路由规则4表示ip地址为192.168.2.*的客户端发起的服务调用请求路由至ip为192.168.2.*的服务实例。其中*表示通配符,可以表示任意值。
之后,根据客户端特征信息,即服务实例order1的ip地址(192.168.1.100),确定出目标路由规则为路由规则3(即,ip=192.168.1.*->ip=192.168.1.*),目标路由规则中包含的服务实例特征信息为“ip=192.168.1.*”,即需要选择ip地址以192.168.1开头的服务实例,基于此从服务实例列表中确定的候选服务实例为服务实例user1和user2,即候选服务实例列表中包含服务实例user1和user2。
之后将候选服务实例列表发送至负载均衡器,则负载均衡器可以基于该候选服务实例列表从候选服务实例user1和user2中选择一者作为目标服务实例,以对服务调用请求进行响应。
因此,通过上述方案,可以基于路由规则,可以将同一机房内的服务进行调用,从而可以有效减少网络时延,提高服务调用的效率,提升用户使用体验。
本公开还提供一种服务实例确定装置,如图3所示,所述装置10包括:
获取模块100,用于在接收到来自客户端的服务调用请求时,获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,其中,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则;
确定模块200,用于根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,以形成候选服务实例列表;
发送模块300,用于将所述候选服务实例列表发送至负载均衡器,以由所述负载均衡器从所述候选服务实例列表中确定用于响应所述服务调用请求的目标服务实例。
可选地,所述确定模块包括:
第一确定子模块,用于根据发送所述服务调用请求的所述客户端的特征信息,从所述路由规则列表中确定与该客户端对应的目标路由规则;
第二确定子模块,用于根据所述目标路由规则,从所述服务实例列表中确定与所述目标路由规则中包含的所述服务实例特征信息相匹配的服务实例,作为所述候选服务实例。
可选地,所述获取模块包括:
第一获取子模块,用于从服务实例注册中心获取与所述目标服务对应的服务实例,以形成所述服务实例列表,其中,各个服务对应的服务实例预先在所述服务实例注册中心进行注册;
第二获取子模块,用于从路由配置中心获取与所述目标服务对应的路由规则,以形成所述路由规则列表,其中,所述路由配置中心中预先存储有针对每一服务,客户端特征信息与服务实例特征信息之间的路由规则。
可选地,所述客户端特征信息包括以下中的至少一者:
客户端的IP地址、客户端的元数据、客户端中发起服务调用请求的应用的标识信息、客户端中发起服务调用请求的应用的版本号;
所述服务实例特征信息包括以下中的至少一者:
服务实例的IP地址、服务实例的服务端口号、服务实例的元数据、服务实例对应的应用的标识信息、服务实例对应的服务的标识信息、服务实例的版本号。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据一示例性实施例示出的一种电子设备700的框图。如图4所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该电子设备700的整体操作,以完成上述的服务实例确定方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的服务实例确定方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的服务实例确定方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的服务实例确定方法。
图5是根据一示例性实施例示出的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器。参照图5,电子设备1900包括处理器1922,其数量可以为一个或多个,以及存储器1932,用于存储可由处理器1922执行的计算机程序。存储器1932中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器1922可以被配置为执行该计算机程序,以执行上述的服务实例确定方法。
另外,电子设备1900还可以包括电源组件1926和通信组件1950,该电源组件1926可以被配置为执行电子设备1900的电源管理,该通信组件1950可以被配置为实现电子设备1900的通信,例如,有线或无线通信。此外,该电子设备1900还可以包括输入/输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的服务实例确定方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器1932,上述程序指令可由电子设备1900的处理器1922执行以完成上述的服务实例确定方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的服务实例确定方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种服务实例确定方法,其特征在于,所述方法包括:
在接收到来自客户端的服务调用请求时,获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,其中,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则;
根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,以形成候选服务实例列表;
将所述候选服务实例列表发送至负载均衡器,以由所述负载均衡器从所述候选服务实例列表中确定用于响应所述服务调用请求的目标服务实例。
2.根据权利要求1所述的方法,其特征在于,所述根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,包括:
根据发送所述服务调用请求的所述客户端的特征信息,从所述路由规则列表中确定与该客户端对应的目标路由规则;
根据所述目标路由规则,从所述服务实例列表中确定与所述目标路由规则中包含的所述服务实例特征信息相匹配的服务实例,作为所述候选服务实例。
3.根据权利要求1所述的方法,其特征在于,所述获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,包括:
从服务实例注册中心获取与所述目标服务对应的服务实例,以形成所述服务实例列表,其中,各个服务对应的服务实例预先在所述服务实例注册中心进行注册;
从路由配置中心获取与所述目标服务对应的路由规则,以形成所述路由规则列表,其中,所述路由配置中心中预先存储有针对每一服务,客户端特征信息与服务实例特征信息之间的路由规则。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述客户端特征信息包括以下中的至少一者:
客户端的IP地址、客户端的元数据、客户端中发起服务调用请求的应用的标识信息、客户端中发起服务调用请求的应用的版本号;
所述服务实例特征信息包括以下中的至少一者:
服务实例的IP地址、服务实例的服务端口号、服务实例的元数据、服务实例对应的应用的标识信息、服务实例对应的服务的标识信息、服务实例的版本号。
5.一种服务实例确定装置,其特征在于,所述装置包括:
获取模块,用于在接收到来自客户端的服务调用请求时,获取与所述服务调用请求要调用的目标服务对应的服务实例列表和路由规则列表,其中,所述服务实例列表包含与所述目标服务对应的服务实例,所述路由规则列表包含针对所述目标服务,客户端特征信息与服务实例特征信息之间的路由规则;
确定模块,用于根据所述服务实例列表和所述路由规则列表,从所述服务实例列表中确定候选服务实例,以形成候选服务实例列表;
发送模块,用于将所述候选服务实例列表发送至负载均衡器,以由所述负载均衡器从所述候选服务实例列表中确定用于响应所述服务调用请求的目标服务实例。
6.根据权利要求5所述的装置,其特征在于,所述确定模块包括:
第一确定子模块,用于根据发送所述服务调用请求的所述客户端的特征信息,从所述路由规则列表中确定与该客户端对应的目标路由规则;
第二确定子模块,用于根据所述目标路由规则,从所述服务实例列表中确定与所述目标路由规则中包含的所述服务实例特征信息相匹配的服务实例,作为所述候选服务实例。
7.根据权利要求5所述的装置,其特征在于,所述获取模块包括:
第一获取子模块,用于从服务实例注册中心获取与所述目标服务对应的服务实例,以形成所述服务实例列表,其中,各个服务对应的服务实例预先在所述服务实例注册中心进行注册;
第二获取子模块,用于从路由配置中心获取与所述目标服务对应的路由规则,以形成所述路由规则列表,其中,所述路由配置中心中预先存储有针对每一服务,客户端特征信息与服务实例特征信息之间的路由规则。
8.根据权利要求5-7中任一项所述的装置,其特征在于,所述客户端特征信息包括以下中的至少一者:
客户端的IP地址、客户端的元数据、客户端中发起服务调用请求的应用的标识信息、客户端中发起服务调用请求的应用的版本号;
所述服务实例特征信息包括以下中的至少一者:
服务实例的IP地址、服务实例的服务端口号、服务实例的元数据、服务实例对应的应用的标识信息、服务实例对应的服务的标识信息、服务实例的版本号。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-4中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-4中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910980135.1A CN110837424A (zh) | 2019-10-15 | 2019-10-15 | 服务实例确定方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910980135.1A CN110837424A (zh) | 2019-10-15 | 2019-10-15 | 服务实例确定方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110837424A true CN110837424A (zh) | 2020-02-25 |
Family
ID=69575220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910980135.1A Pending CN110837424A (zh) | 2019-10-15 | 2019-10-15 | 服务实例确定方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110837424A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371684A (zh) * | 2020-03-02 | 2020-07-03 | 中国邮政储蓄银行股份有限公司 | 路由处理方法及装置、双活数据中心系统 |
CN111414230A (zh) * | 2020-03-18 | 2020-07-14 | 北京达佳互联信息技术有限公司 | 服务管理系统、服务管理方法、服务器、存储介质 |
CN111586097A (zh) * | 2020-04-01 | 2020-08-25 | 车智互联(北京)科技有限公司 | 一种网络请求处理方法、计算设备及存储介质 |
CN111711569A (zh) * | 2020-06-16 | 2020-09-25 | 普元信息技术股份有限公司 | 企业分布式应用中实现请求动态路由的系统及其方法 |
CN111970198A (zh) * | 2020-08-13 | 2020-11-20 | 北京金山云网络技术有限公司 | 一种服务路由方法、装置、电子设备及介质 |
CN112118184A (zh) * | 2020-08-06 | 2020-12-22 | 北京健康之家科技有限公司 | 网关自动路由方法及装置、存储介质、计算机设备 |
CN113791799A (zh) * | 2021-01-06 | 2021-12-14 | 北京沃东天骏信息技术有限公司 | 系统升级方法及装置、计算机可读存储介质、电子设备 |
CN113992559A (zh) * | 2021-11-01 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 消息处理方法、装置、设备及计算机可读存储介质 |
CN114285905A (zh) * | 2021-12-23 | 2022-04-05 | 中国建设银行股份有限公司 | 基于服务的路由方法和路由装置 |
CN114513548A (zh) * | 2022-01-27 | 2022-05-17 | 中信百信银行股份有限公司 | 定向调用信息处理方法及装置 |
CN114827282A (zh) * | 2022-03-30 | 2022-07-29 | 阿里云计算有限公司 | 服务路由方法、装置、设备和存储介质 |
CN116319505A (zh) * | 2023-02-10 | 2023-06-23 | 安芯网盾(北京)科技有限公司 | 路由分发方法及装置 |
CN116455951A (zh) * | 2023-06-19 | 2023-07-18 | 云筑信息科技(成都)有限公司 | 一种基于动态规则实现多租户服务rpc隔离的调用方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681463A (zh) * | 2016-03-14 | 2016-06-15 | 浪潮软件股份有限公司 | 一种分布式服务框架以及分布式服务调用系统 |
CN108206852A (zh) * | 2016-12-20 | 2018-06-26 | 杭州华为数字技术有限公司 | 一种微服务框架下的基于会话的服务实例管理方法及设备 |
CN109361780A (zh) * | 2018-10-23 | 2019-02-19 | 杭州能链科技有限公司 | 获取服务实例的方法、系统以及存储介质 |
CN109862075A (zh) * | 2018-12-29 | 2019-06-07 | 北京奥鹏远程教育中心有限公司 | 一种Redis服务实例的路由方法 |
CN109995713A (zh) * | 2017-12-30 | 2019-07-09 | 华为技术有限公司 | 一种微服务框架中的服务处理方法及相关设备 |
CN110062043A (zh) * | 2019-04-16 | 2019-07-26 | 杭州朗和科技有限公司 | 服务治理方法、服务治理装置、存储介质及电子设备 |
-
2019
- 2019-10-15 CN CN201910980135.1A patent/CN110837424A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681463A (zh) * | 2016-03-14 | 2016-06-15 | 浪潮软件股份有限公司 | 一种分布式服务框架以及分布式服务调用系统 |
CN108206852A (zh) * | 2016-12-20 | 2018-06-26 | 杭州华为数字技术有限公司 | 一种微服务框架下的基于会话的服务实例管理方法及设备 |
CN109995713A (zh) * | 2017-12-30 | 2019-07-09 | 华为技术有限公司 | 一种微服务框架中的服务处理方法及相关设备 |
CN109361780A (zh) * | 2018-10-23 | 2019-02-19 | 杭州能链科技有限公司 | 获取服务实例的方法、系统以及存储介质 |
CN109862075A (zh) * | 2018-12-29 | 2019-06-07 | 北京奥鹏远程教育中心有限公司 | 一种Redis服务实例的路由方法 |
CN110062043A (zh) * | 2019-04-16 | 2019-07-26 | 杭州朗和科技有限公司 | 服务治理方法、服务治理装置、存储介质及电子设备 |
Non-Patent Citations (1)
Title |
---|
中间件兴趣圈: "Dubbo服务治理之灰度发布方案(版本发布控制影响范围)", 《HTTPS://BLOG.CSDN.NET/PRESTIGEDING/ARTICLE/DETAILS/83057273》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371684B (zh) * | 2020-03-02 | 2022-08-09 | 中国邮政储蓄银行股份有限公司 | 路由处理方法及装置、双活数据中心系统 |
CN111371684A (zh) * | 2020-03-02 | 2020-07-03 | 中国邮政储蓄银行股份有限公司 | 路由处理方法及装置、双活数据中心系统 |
CN111414230A (zh) * | 2020-03-18 | 2020-07-14 | 北京达佳互联信息技术有限公司 | 服务管理系统、服务管理方法、服务器、存储介质 |
CN111586097A (zh) * | 2020-04-01 | 2020-08-25 | 车智互联(北京)科技有限公司 | 一种网络请求处理方法、计算设备及存储介质 |
CN111711569A (zh) * | 2020-06-16 | 2020-09-25 | 普元信息技术股份有限公司 | 企业分布式应用中实现请求动态路由的系统及其方法 |
CN112118184A (zh) * | 2020-08-06 | 2020-12-22 | 北京健康之家科技有限公司 | 网关自动路由方法及装置、存储介质、计算机设备 |
CN111970198A (zh) * | 2020-08-13 | 2020-11-20 | 北京金山云网络技术有限公司 | 一种服务路由方法、装置、电子设备及介质 |
CN113791799A (zh) * | 2021-01-06 | 2021-12-14 | 北京沃东天骏信息技术有限公司 | 系统升级方法及装置、计算机可读存储介质、电子设备 |
CN113992559B (zh) * | 2021-11-01 | 2023-02-24 | 腾讯科技(深圳)有限公司 | 消息处理方法、装置、设备及计算机可读存储介质 |
CN113992559A (zh) * | 2021-11-01 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 消息处理方法、装置、设备及计算机可读存储介质 |
CN114285905A (zh) * | 2021-12-23 | 2022-04-05 | 中国建设银行股份有限公司 | 基于服务的路由方法和路由装置 |
CN114513548A (zh) * | 2022-01-27 | 2022-05-17 | 中信百信银行股份有限公司 | 定向调用信息处理方法及装置 |
CN114827282A (zh) * | 2022-03-30 | 2022-07-29 | 阿里云计算有限公司 | 服务路由方法、装置、设备和存储介质 |
CN116319505A (zh) * | 2023-02-10 | 2023-06-23 | 安芯网盾(北京)科技有限公司 | 路由分发方法及装置 |
CN116455951A (zh) * | 2023-06-19 | 2023-07-18 | 云筑信息科技(成都)有限公司 | 一种基于动态规则实现多租户服务rpc隔离的调用方法 |
CN116455951B (zh) * | 2023-06-19 | 2023-08-18 | 云筑信息科技(成都)有限公司 | 一种基于动态规则实现多租户服务rpc隔离的调用方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110837424A (zh) | 服务实例确定方法、装置、存储介质及电子设备 | |
WO2021129008A1 (zh) | 服务调用方法、装置、设备及介质 | |
EP3211527A1 (en) | Multi-screen sharing based application management method and device, and storage medium | |
CN113259527B (zh) | 使用地理电话号码的连接 | |
CN110708694A (zh) | 公专网同时在线的实现方法、系统、存储介质及电子设备 | |
KR20100136906A (ko) | 플러그가능 콘택트 결정 | |
RU2651159C1 (ru) | Способ и устройство для пометки неизвестного номера | |
CN111107611B (zh) | 一种选择用户面功能的方法和装置 | |
EP3646625B1 (en) | Emergency calling | |
US10225141B2 (en) | Application hierarchy specification with real-time functional selection | |
CN111858083A (zh) | 一种远程服务的调用方法、装置、电子设备及存储介质 | |
KR20220045031A (ko) | 5g flus 제어를 통한 nbmp 배치 방법 | |
CN112235378B (zh) | 数据更新方法、装置、存储介质及电子设备 | |
US11425208B2 (en) | Message delivery based on subsets of network identities | |
CN112311669A (zh) | 网络业务切换方法、装置、系统和存储介质 | |
JPWO2013129207A1 (ja) | 移動体通信システム、通信システム、ノード、フロー制御ネットワーク及び通信制御方法 | |
JP2021010164A (ja) | 通知プリセットを利用した通知処理方法および装置 | |
CN109639629B (zh) | 数据访问处理方法、装置、计算机设备和存储介质 | |
CN112929271B (zh) | 一种路由配置方法、装置和用于配置路由的装置 | |
US20230262558A1 (en) | Ue route selection method and related products | |
KR100798916B1 (ko) | 웹 서비스 기반 개방형 api를 지원하는 애플리케이션서버에서 통신망 이벤트 통보 장치 및 그 방법 | |
CN111562994B (zh) | 应用程序接口转发方法、装置、电子设备及存储介质 | |
US20120142368A1 (en) | Obtaining location server address on a mobile device | |
CN113918215A (zh) | 一种微服务配置系统、设备及介质 | |
CN113596119A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200225 |
|
RJ01 | Rejection of invention patent application after publication |