CN112181458A - 灰度规则的配置、灰度路由方法、装置、设备及存储介质 - Google Patents

灰度规则的配置、灰度路由方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112181458A
CN112181458A CN202011025701.2A CN202011025701A CN112181458A CN 112181458 A CN112181458 A CN 112181458A CN 202011025701 A CN202011025701 A CN 202011025701A CN 112181458 A CN112181458 A CN 112181458A
Authority
CN
China
Prior art keywords
gray
rule
target
instance
micro
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
Application number
CN202011025701.2A
Other languages
English (en)
Inventor
吴健
杨彬栏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202011025701.2A priority Critical patent/CN112181458A/zh
Publication of CN112181458A publication Critical patent/CN112181458A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开了一种灰度规则的配置、灰度路由方法、装置、设备及存储介质。其中,灰度规则的配置方法包括:响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用;响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理。本发明实施例的方案,解决了相关技术中进行灰度路由时需要对微服务进行改造,导致代码侵入风险较高的问题,可以在不改造微服务的前提下,实现灰度规则的配置,为后续实现请求信息的灰度路由提供依据。

Description

灰度规则的配置、灰度路由方法、装置、设备及存储介质
技术领域
本发明实施例涉及互联网技术领域,尤其涉及一种灰度规则的配置、灰度路由方法、装置、设备及存储介质。
背景技术
在分布式微服务系统架构中,一次HTTP(Hyper Text Transfer Protocol,超文本传输协议)通常会在多个微服务之间进行服务调用,调用链路较长。当某些微服务有新版本上线时,需要进行灰度验证,即只允许带有指定特性的流量才能进入新版本,在这个过程中,我们称之为根据灰度规则路由到灰度版本。当灰度版本验证成功,需要切换灰度版本为正式版本,即允许全部流量进入灰度版本,这个操作称之为灰度放量。如果在上述过程中发现有问题,可能需要将灰度版本下线更新版本,或重新调整灰度规则,以便继续观察。
现阶段,一种方法是通过请求中携带版本号,例如,只有指定版本号的请求才可以进入新的灰度版本;但是,这种方法需要服务调用方和服务提供方提前约定好版本号,导致对业务上有侵入性,灰度路由规则不灵活;另一种方法是通过预置灰度配置信息,当请求中满足指定的配置信息时,才可以进入灰度版本;其中,配置信息可以是用户IP(InternetProtocol,网际互连协议)、用户账号、地理位置等信息;但是,这种方法预置的灰度配置信息每次变更时都需要重新启动微服务,无法实现动态配置,不能满足多样化的灰度路由场景;还有一种方法是利用浏览器的cookie信息与配置的灰度路由值和灰度地址列表,进行匹配,匹配成功的进入对应的灰度地址;但是这种方法会将应用领域局限在浏览器的访问,对于不使用cookie的应用架构无法胜任;同时,上述三种方法都对微服务本身有改造点,导致代码侵入风险较高。
发明内容
本发明实施例提供一种灰度规则的配置、灰度路由方法、装置、设备及存储介质,以实现在不改造微服务的前提下,对灰度规则进行配置,为后续请求信息的灰度路由提供依据。
第一方面,本发明实施例提供了一种灰度规则的配置方法,包括:
响应于对目标微服务中目标微服务实例的灰度标记请求,将所述目标微服务实例标记为灰度实例,并将所述目标微服务实例存储于灰度实例列表中,所述灰度实例用于部署待更新应用;
响应于对目标灰度实例的灰度规则配置请求,生成与所述目标灰度实例匹配的目标灰度规则,并将所述目标灰度规则下发至微服务平台中的各灰度代理,以指示各所述灰度代理更新本地存储的灰度规则;
其中,所述灰度规则中存储指向灰度实例的请求信息的路由规则。
第二方面,本发明实施例还提供了一种灰度路由方法,由微服务平台中的灰度代理执行,包括:
实时从服务器获取并缓存灰度实例列表,并根据所述服务器下发的目标灰度规则,更新本地存储的灰度规则,所述灰度规则中存储指向灰度实例的请求信息的路由规则;
在接收到指向灰度实例的请求信息,且确定所述请求信息满足转发条件时,根据所述本地存储的灰度规则,确定与所述请求信息匹配的下一路由微服务;
如果根据所述灰度实例列表确定所述下一路由微服务中包括目标灰度实例,则将所述请求信息转发至所述下一路由微服务中的所述目标灰度实例中。
第三方面,本发明实施例还提供了一种灰度规则的配置装置,包括:
灰度实例标记模块,用于响应于对目标微服务中目标微服务实例的灰度标记请求,将所述目标微服务实例标记为灰度实例,并将所述目标微服务实例存储于灰度实例列表中,所述灰度实例用于部署待更新应用;
目标灰度规则生成模块,用于响应于对目标灰度实例的灰度规则配置请求,生成与所述目标灰度实例匹配的目标灰度规则,并将所述目标灰度规则下发至微服务平台中的各灰度代理,以指示各所述灰度代理更新本地存储的灰度规则;
其中,所述灰度规则中存储指向灰度实例的请求信息的路由规则。
第四方面,本发明实施例还提供了一种灰度路由装置,由微服务平台中的灰度代理执行,包括:
灰度规则更新模块,用于实时从服务器获取并缓存灰度实例列表,并根据所述服务器下发的目标灰度规则,更新本地存储的灰度规则,所述灰度规则中存储指向灰度实例的请求信息的路由规则;
路由微服务确定模块,用于在接收到指向灰度实例的请求信息,且确定所述请求信息满足转发条件时,根据所述本地存储的灰度规则,确定与所述请求信息匹配的下一路由微服务;
请求信息转发模块,用于如果根据所述灰度实例列表确定所述下一路由微服务中包括目标灰度实例,则将所述请求信息转发至所述下一路由微服务中的所述目标灰度实例中。
第五方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例中任一实施例所述的灰度规则的配置方法,或者如如本发明实施例中任一实施例所述的灰度路由方法。
第六方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明实施例中任一实施例所述的灰度规则的配置方法,或者如如本发明实施例中任一实施例所述的灰度路由方法。
本发明实施例通过响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用;响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则;其中,灰度规则中存储指向灰度实例的请求信息的路由规则,解决了相关技术中进行灰度路由时需要对微服务进行改造,导致代码侵入风险较高的问题,可以在不改造微服务的前提下,实现灰度规则的配置,为后续请求信息的灰度路由提供依据。
附图说明
图1是本发明实施例一中的一种灰度规则的配置方法的流程图;
图2是本发明实施例二中的一种灰度规则的配置方法的流程图;
图3是本发明实施例三中的一种灰度路由方法的流程图;
图4是本发明实施例四中的一种灰度路由方法的流程图;
图5是本发明实施例四中列举的灰度规则的配置以及灰度路由的原理图;
图6是本发明实施例五中的一种灰度规则的配置装置的结构示意图;
图7是本发明实施例六中的一种灰度路由装置的结构示意图;
图8是本发明实施例七中的的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的一种灰度规则的配置方法的流程图,本实施例可适用于配置灰度路由规则的情况,该方法可以由灰度规则的配置装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在电子设备中。具体的,参考图1,该方法具体包括如下步骤:
步骤110、响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用。
其中,目标微服务可以为微服务架构中的任一微服务,微服务是由单一应用程序构成的小服务,拥有自己的进程与轻量化处理,服务依业务功能设计,以全自动的方式部署,与其他服务使用HTTP API(HTTP Application Programming Interface,超文字传输协定应用程序编程接口)进行通讯。可以理解的是,微服务架构是将复杂臃肿的单体应用进行细粒度的服务化拆分,每个拆分出来的服务各自独立打包部署,并交由小团队进行开发和运维,从而极大地提高了应用交付的效率,其中,每个拆分出来的服务即为微服务,本实施例中也可以将每个微服务理解成一个应用。
在具体实现中,每个微服务都可以包含多个微服务实例,例如,2个、5个或者10个等,本实施例中对其不加以限定;其中,每个实施例可以相同,也可以不相同,本实施例中对此也不加以限定。
在本实施例的一个可选实现方式中,当服务器接收到目标微服务中的目标微服务实例的灰度标记请求时,可以将目标微服务实例标记为灰度实例,其中,目标微服务实例可以为目标微服务中的任一微服务实例,本实施例中对其不加以限定。
进一步的,可以将标记为灰度实例的目标微服务实例存储于服务器的灰度实例列表中。需要说明的是,本实施例中涉及到的灰度实例可以用于部署待更新的应用,即将待更新的应用部署在灰度实例中,可以进一步的实现待更新的灰度路由,以及灰度路由。
步骤120、响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则。
其中,灰度规则中存储指向灰度实例的请求信息的路由规则。
在本实施例的一个可选实现方式中,在将目标微服务实例标记为灰度实例,并将目标微服务实例标记为灰度实例之后,可以进一步的响应对目标灰度实例的灰度规则配置请求,即服务器接收到针对目标灰度实例的灰度规则配置请求时,可以生成与目标灰度实例匹配的目标灰度规则,并将生成的目标灰度规则下发至微服务平台中的各灰度代理,以指示各个灰度代理更新本地存储的灰度规则。
需要说明的是,本实施例中涉及到的灰度代理可以在微服务平台(微服务架构)中的网关以及各个微服务实例中,本实施例中对其不加以限定。
示例性的,在将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中之后,可以进一步的对目标灰度实例的灰度规则进行配置,从而生成与目标灰度实例匹配的目标灰度规则,并将生成的目标灰度规则下发至微服务平台中的每个灰度代理,当灰度代理确定新下发的目标灰度规则,与其本地存储的灰度规则不一致时,可以对本地存储的灰度规则进行更新,即将本地存储的灰度规则更新为新生成的目标灰度规则。
本实施例的方案,通过响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用;响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则;其中,灰度规则中存储指向灰度实例的请求信息的路由规则,解决了相关技术中进行灰度路由时需要对微服务进行改造,导致代码侵入风险较高的问题,可以在不改造微服务的前提下,实现灰度规则的配置,为后续请求信息的灰度路由提供依据。
实施例二
图2是本发明实施例二中的一种灰度规则的配置方法的流程图,本实施例是对上述各技术方案的进一步细化,本实施例中的技术方案可以与上述一个或者多个实施例中的各个可选方案结合。如图2所示,灰度规则的配置方法可以包括如下步骤:
步骤210、响应于对目标微服务中目标微服务实例的灰度标记请求,修改目标微服务实例的属性信息。
在本实施例的一个可选实现方式中,在服务器接收到对目标微服务实例的灰度标记请求时,可以将目标微服务实例标记为灰度实例;可选的,将目标微服务实例标记为灰度实例可以包括:修改目标微服务实例的属性信息,其中,目标微服务实例的属性信息可以包括目标微服务实例的名称或者后缀。
示例性的,在服务器接收到对目标微服务实例的灰度标记请求之后,服务器可以对目标微服务实例的名称进行修改,例如,在目标微服务实例的名称中增加某个字符或者删除某个字符,以确定目标微服务实例为灰度实例。
在本实施例的另一个具体例子中,在服务器接收到对目标微服务实例的灰度标记请求之后,服务器可以对目标微服务实例的后缀名称进行修改,例如,目标微服务实例的后缀名称为“.a”,则可以将目标微服务实例的后缀名称修改为“.b”,以确定目标微服务实例为灰度实例。
步骤220、将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用。
步骤230、响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则。
在本实施例的一个可选实现方式中,在服务器接收到针对目标灰度实例的灰度规则配置请求之后,可以进一步的生成与目标灰度实例匹配的目标灰度规则,其中,生成的目标灰度规则可以包括灰度规则类型以及灰度规则参数。
可选的,生成与目标灰度实例匹配的目标灰度规则可以包括:配置目标灰度实例的灰度规则类型,并根据灰度规则类型确定灰度规则参数。
在本实施例的一个可选实现方式中,在服务器接收到针对目标灰度实例的灰度规则配置请求之后,可以进一步的配置与目标灰度实例匹配的灰度规则类型,并根据配置好的灰度规则类型确定与目标灰度实例匹配的灰度规则参数。
其中,本实施例中涉及到的灰度规则类型可以为:HTTP Header(请求头)、HTTPMethod(请求方式)、HTTP Parameter(请求参数)、HTTP Body(请求体)、请求IP或者自定义规则等,本实施例中对其不加以限定。
在本实施例的一个具体例子中,若配置与目标灰度实例匹配的灰度规则类型为HTTP Header,则根据配置好的灰度规则类型(HTTP Header)确定与目标灰度实例匹配的灰度规则参数可以为{“key”:”version”,”mode”:”=”,”value”:”2.0”};若配置与目标灰度实例匹配的灰度规则类型为HTTP Body,则根据配置好的灰度规则类型(HTTP Body)确定与目标灰度实例匹配的灰度规则参数可以为{“key”:”$.msgEntity.user.name”,”mode”:”=”,”value”:”Jack”}。
本实施例的方案,通过响应于对目标微服务中目标微服务实例的灰度标记请求,修改目标微服务实例的属性信息;配置与目标灰度实例匹配的灰度规则类型,并根据配置好的灰度规则类型确定与目标灰度实例匹配的灰度规则参数;实现了灰度规则的配置,不会增加微服务代码侵入风险,为后续请求信息的灰度路由提供依据。
实施例三
图3是本发明实施例三中的一种灰度路由方法的流程图,本实施例可适用于对待更新应用进行灰度路由的情况,该方法可以由灰度路由装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在电子设备中。具体的,参考图3,该方法具体包括如下步骤:
步骤310、实时从服务器获取并缓存灰度实例列表,并根据服务器下发的目标灰度规则,更新本地存储的灰度规则,灰度规则中存储指向灰度实例的请求信息的路由规则。
在本实施例中,微服务平台中的灰度代理可以配置在微服务平台中的每一个已注册的微服务实例,以及微服务网关中;示例性的,若某一微服务平台中包含5个已注册的微服务,每个微服务包含2个微服务实例,则在该微服务网关中的10个微服务实例以及微服务网关中都会配置一个灰度代理。
在本实施例的一个可选实现方式中,微服务平台中的灰度代理可以实施从服务器中获取并缓存灰度实例列表,并可以根据服务器下发的目标灰度规则,更新本地存储的灰度规则,其中,灰度规则中存储指向灰度实例的请求信息的路由规则。需要说明的是,本实施例中涉及到的每个灰度代理中存储的灰度规则均相同。
可选的,根据服务器下发的目标灰度规则,更新本地存储的灰度规则,可以包括:将目标灰度规则与本地存储的灰度规则进行比对,当二者不一致时,将本地存储的灰度规则更新为目标灰度规则。
在本实施例的一个可选实现方式中,当灰度代理接收到服务器下发的目标灰度规则之后,可以将接收到的目标灰度规则与其本地存储的灰度规则进行比对,当接收到的目标灰度规则与其本地存储的灰度规则不一致时,或者计算接收到的目标灰度规则与其本地存储的灰度规则之间的相似度,当相似度小于设定阈值时,可以将本地存储的灰度规则更新为服务器下发的目标灰度规则。其中,本实施例中涉及到的设定阈值可以为0.8、0.75或者0.9等数值,本实施例中对其不加以限定。
步骤320、在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务。
在本实施例的一个可选实现方式中,当确定接收到的请求信息是指向灰度实例的请求信息时,并且进一步的确定该请求信息满足转发条件,则可以根据灰度代理本地存储的灰度规则,确定与请求信息匹配的下一路由微服务。
可选的,在接收到请求信息之后,可以将该请求信息与灰度规则参数进行比对,当比对结果中确定请求信息中包含一个或多个灰度规则参数时,可以确定接收到的请求信息是指向灰度实例的请求信息。
可选的,在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务,可以包括:如果灰度代理部署在微服务网关中,则将请求信息转发至下一路由微服务;如果灰度代理部署在微服务实例中,则根据灰度实例列表确定微服务实例是否为灰度实例,若否,则将请求信息转发至下一路由微服务。
在具体实现中,如果灰度代理部署在微服务网关中,当接收到指向灰度实例的请求信息时,可以直接将请求信息转发至下一路由微服务;如果灰度代理为部署在微服务实例中,则可以根据获取到的微服务实例确定当前微服务实例是否为灰度实例,若否,即当前微服务实例部是预先配置的灰度实例,则可以进一步的将请求信息转发至下一路由微服务。
步骤330、如果根据灰度实例列表确定下一路由微服务中包括目标灰度实例,则将请求信息转发至下一路由微服务中的目标灰度实例中。
在本实施例的一个可选实现方式中,微服务平台中的灰度代理在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务之后,如果根据灰度实例列表确定下一路由微服务中包含目标灰度实例,则可以将请求信息转发至下一路由微服务中的目标灰度实例中。
示例性的,若微服务平台中的灰度代理在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务为微服务B之后,可以根据灰度实例列表确定微服务B中是否包含目标灰度实例,即确定微服务B中是否包含灰度实例,当确定微服务B中包含灰度实例之后,则可以将指向灰度实例的请求信息转发至目标灰度实例中,进而使对指向灰度实例的请求信息参与灰度路由。
本实施例的方案,通过实时从服务器获取并缓存灰度实例列表,并根据服务器下发的目标灰度规则,更新本地存储的灰度规则,灰度规则中存储指向灰度实例的请求信息的路由规则;在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务;如果根据灰度实例列表确定下一路由微服务中包括目标灰度实例,则将请求信息转发至下一路由微服务中的目标灰度实例中,在不改变微服务的前提下实现了对请求信息的灰度路由。
实施例四
图4是本发明实施例四中的一种灰度路由方法的流程图,本实施例是对上述各技术方案的进一步细化,本实施例中的技术方案可以与上述一个或者多个实施例中的各个可选方案结合。如图4所示,灰度路由方法可以包括如下步骤:
步骤410、实时从服务器获取并缓存灰度实例列表,并根据服务器下发的目标灰度规则,更新本地存储的灰度规则,灰度规则中存储指向灰度实例的请求信息的路由规则。
步骤420、在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务。
在本实施例的一个可选实现方式中,如果灰度代理部署在微服务实例中,则根据灰度实例列表确定微服务实例是否为灰度实例,可以包括:确定灰度实例列表中是否包含微服务实例,若是,则确定微服务实例为灰度实例。
示例性的,当灰度代理为部署在微服务实例中时,根据灰度实例列表确定该微服务实例是否为灰度实例可以通过确定灰度实例列表中是否包含该微服务实例,例如,可以通过确定灰度实例列表中是否存储有该微服务实例的名称、属性或者大小等信息,若是,则可以确定该微服务实例为灰度实例。
步骤430、如果根据灰度实例列表确定下一路由微服务中不包括目标灰度实例,则继续转发请求信息至任一微服务实例,直至请求信息转发至下一路由微服务中的目标灰度实例中。
在本实施例的一个可选实现方式中,灰度代理在根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务之后,如果进一步的根据灰度实例列表确定下一路由微服务中不包括目标灰度实例,则可以继续将请求信息转发至任一微服务实例,直至将请求信息转发至下一路由微服务中的目标灰度实例中。
示例性的,若微服务平台中的灰度代理在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务为微服务B之后,可以根据灰度实例列表确定微服务B中是否包含目标灰度实例,即确定微服务B中是否包含灰度实例,当确定微服务B中不包含灰度实例之后,则可以将指向灰度实例的请求信息转发至微服务B的任一灰度实例中,直至将请求信息转发至灰度实例中为止,即使请求信息参与了灰度路由。
本实施例的方案,如果根据灰度实例列表确定下一路由微服务中不包括目标灰度实例,则继续转发请求信息至任一微服务实例,直至请求信息转发至下一路由微服务中的目标灰度实例中,在不改变微服务的前提下实现了对请求信息的灰度路由。
为了使本领域技术人员更好地理解本发明实施例,图5列举了本发明实施例中涉及到的灰度规则的配置以及灰度路由的原理图。
如图5所示,微服务510和微服务520需要注册到服务注册中心530,灰度代理540需要部署到每个微服务实例(如,微服务实例511、微服务实例512、微服务实例521和微服务实例522)中,并与灰度实例管控中心550进行信息交互。微服务实例(例如,微服务实例522)会被灰度实例管控中心550标记为灰度实例,灰度实例管控中心维护了一份灰度实例列表。每一个灰度实例都有自身的灰度规则定义和灰度跟踪定义。灰度实例管控中心550会将灰度配置信息的变更下发到灰度更新下发模块560,再由灰度更新下发模块560通知到每一个灰度代理,灰度代理在收到更新的灰度配置信息后刷新内存中的信息,以实时生效。请求的灰度路由逻辑由灰度代理540根据灰度规则计算匹配到灰度实例再交由微服务的负载均衡器进行请求调用。每一次请求的全链路调用路径都被灰度监控模块所记录,以对请求流量的灰度路由正确性进行监测。
需要说明的是,在现有的微服务架构中,所有的微服务都会注册到服务注册中心530,例如微服务网关570、微服务510、微服务520;其中微服务510有两个微服务实例511和512,微服务520有两个微服务实例521和522。此为举例,实际情况会有很多微服务和其实例。当一个HTTP请求的访问路径为微服务网关570->微服务510->微服务520时,是通过微服务网关570和微服务510上的负载均衡器通过负载均衡策略选择一个微服务实例进行调用。
在本实施例的一个可选实现方式中,灰度代理540可以以SideCar边车模式部署在每个微服务实例的部署单元中,通过Java Agent操纵字节码的方式,拦截微服务的请求调用,切入到原先微服务中的负载均衡器的功能逻辑中,由灰度代理中的灰度规则计算引擎完成灰度规则的计算,匹配到指定的灰度实例进行流量转发,完成灰度路由。
还需要说明的是,一次HTTP请求在微服务中多次调用会将原始请求信息丢失,如请求进入微服务A时在请求参数中带有user.name的信息,微服务A因业务逻辑调用微服务B,微服务B因业务逻辑调用微服务C,而微服务B调用微服务C的服务接口时本身是没有user.name的参数信息的,但微服务C的某个灰度实例的灰度规则又需要根据原始请求的user.name的参数信息来匹配。针对这种场景本实例中引入灰度跟踪引擎,同样是在灰度实例管控中心配置需要做灰度跟踪的参数,之后每次的请求转发调用时,灰度代理都会将灰度跟踪的参数信息携带到下一次的微服务调用中,以便后续微服务的灰度代理可以获取到灰度跟踪参数信息并加以计算灰度规则。
灰度代理首次启动后会访问灰度实例管控中心获取灰度实例列表、灰度规则信息和灰度跟踪参数信息,并缓存在灰度代理内存中。当灰度实例管控中心更新了灰度实例列表、灰度规则信息或灰度跟踪参数信息时,需要能让所有的灰度代理实时感知到更新内容并刷新内存。如果采用灰度代理循环请求灰度实例管控中心的方式必然造成网络流量的极大浪费和带宽占用,对灰度实例管控中心的压力也很大,而且在信息未更新的情况下,请求本身都是无用操作。本发明采用消息机制,引入消息中间件,在灰度实例管控中心进行灰度信息更新时,一方面保存数据到数据库,同时将更新数据发布到消息中间件,所有灰度代理都订阅了消息中间件的消息队列,收到灰度更新消息后,立即刷新灰度代理的内存信息,以此达到动态更新灰度配置,而且是近实时的响应速度,不造成网络请求浪费,节省不必要的系统开支。当下一次请求到达时,负载均衡器被灰度代理拦截,灰度代理采用新的灰度规则与请求参数进行比对,路由到匹配上的灰度实例上,这就完成了一次动态灰度配置更新。
针对灰度路由结果的正确性,本实施例根据Open Tracing规范监测系统中全链路微服务调用的流量,一次请求就是一个Trace,而一次请求在每个微服务中的一次调用就是一个Span。故一个Trace包含有多个Span,每个Span中都包含本次调用的参数信息,参数信息中就包含了灰度规则所需要匹配的灰度规则参数。将路由到灰度实例的每一次请求流量可视化,并可查看请求参数信息,用以监控请求是否被正确路由到灰度实例。
实施例五
图6是本发明实施例五中的一种灰度规则的配置装置的结构示意图,该装置可以执行上述各实施例中涉及到的灰度规则的配置方法。参照图6,该装置包括:灰度实例标记模块610和目标灰度规则生成模块620。
灰度实例标记模块610,用于响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用;
目标灰度规则生成模块620,用于响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则;
其中,灰度规则中存储指向灰度实例的请求信息的路由规则。
本实施例的方案,通过灰度实例标记模块响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用;通过目标灰度规则生成模块响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则,解决了相关技术中进行灰度路由时需要对微服务进行改造,导致代码侵入风险较高的问题,可以在不改造微服务的前提下,实现灰度规则的配置,为后续请求信息的灰度路由提供依据。
可选的,灰度实例标记模块610,具体用于修改目标微服务实例的属性信息;其中,属性信息包括目标微服务实例的名称或者后缀。
可选的,目标灰度规则包括灰度规则类型以及灰度规则参数;目标灰度规则生成模块620,具体用于配置目标灰度实例的灰度规则类型,并根据灰度规则类型确定灰度规则参数。
可选的,灰度规则类型包括下述至少一项:请求头HTTP Header、请求方式HTTPMethod、请求参数HTTP Parameter、请求体HTTP Body、请求网际互联协议IP或者自定义规则。
本发明实施例所提供的灰度规则的配置装置可执行本发明任意实施例所提供的灰度规则的配置方法,具备执行方法相应的功能模块和有益效果。
实施例六
图7是本发明实施例六中的一种灰度路由装置的结构示意图;该装置可以执行上述各实施例中涉及到的灰度路由方法。参照图7,该装置包括:灰度规则更新模块710、路由微服务确定模块720和请求信息转发模块730。
灰度规则更新模块710,用于实时从服务器获取并缓存灰度实例列表,并根据服务器下发的目标灰度规则,更新本地存储的灰度规则,灰度规则中存储指向灰度实例的请求信息的路由规则;
路由微服务确定模块720,用于在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务;
请求信息转发模块730,用于如果根据灰度实例列表确定下一路由微服务中包括目标灰度实例,则将请求信息转发至下一路由微服务中的目标灰度实例中。
本实施例的方案,通过灰度规则更新模块实时从服务器获取并缓存灰度实例列表,并根据服务器下发的目标灰度规则,更新本地存储的灰度规则,灰度规则中存储指向灰度实例的请求信息的路由规则;通过路由微服务确定模块在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务;通过请求信息转发模块将请求信息转发至下一路由微服务中的目标灰度实例中,在不改变微服务的前提下,实现了请求信息的灰度路由。
可选的,灰度规则更新模块710,具体用于将目标灰度规则与本地存储的灰度规则进行比对,当二者不一致时,将本地存储的灰度规则更新为目标灰度规则。
可选的,路由微服务确定模块720,包括:第一路由微服务确定子模块和第二路由微服务确定子模块;第一路由微服务确定子模块,用于如果灰度代理部署在微服务网关中,则将请求信息转发至下一路由微服务;第二路由微服务确定子模块,用于如果灰度代理部署在微服务实例中,则根据灰度实例列表确定微服务实例是否为灰度实例,若否,则将请求信息转发至下一路由微服务。
可选的,第二路由微服务确定子模块,具体用于
确定灰度实例列表中是否包含微服务实例,若是,则确定微服务实例为灰度实例。
可选的,装置还包括:转发模块,用于如果根据灰度实例列表确定下一路由微服务中不包括目标灰度实例,则继续转发请求信息至任一微服务实例,直至请求信息转发至下一路由微服务中的目标灰度实例中。
本发明实施例所提供的灰度路由装置可执行本发明任意实施例所提供的灰度路由方法,具备执行方法相应的功能模块和有益效果。
实施例七
图8是本发明实施例七中的的一种电子设备的结构示意图,如图8所示,该设备/终端/服务器包括处理器80、存储器81、输入装置82和输出装置83;设备/终端/服务器中处理器80的数量可以是一个或多个,图8中以一个处理器80为例;设备/终端/服务器中的处理器80、存储器81、输入装置82和输出装置83可以通过总线或其他方式连接,图8中以通过总线连接为例。
存储器81作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的灰度规则的配置方法对应的程序指令/模块(例如,灰度规则的配置装置中的灰度实例标记模块610和目标灰度规则生成模块620),或者,如本发明实施例中的灰度路由方法对应的程序指令/模块(例如,灰度路由装置中的灰度规则更新模块710、路由微服务确定模块720和请求信息转发模块730)。处理器80通过运行存储在存储器81中的软件程序、指令以及模块,从而执行设备/终端/服务器的各种功能应用以及数据处理,即实现上述的灰度规则的配置方法或者灰度路由方法。
存储器81可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器81可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器81可进一步包括相对于处理器80远程设置的存储器,这些远程存储器可以通过网络连接至设备/终端/服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置82可用于接收输入的数字或字符信息,以及产生与设备/终端/服务器的用户设置以及功能控制有关的键信号输入。输出装置83可包括显示屏等显示设备。
实施例八
本发明实施例八还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种灰度规则的配置方法,包括:
响应于对目标微服务中目标微服务实例的灰度标记请求,将目标微服务实例标记为灰度实例,并将目标微服务实例存储于灰度实例列表中,灰度实例用于部署待更新应用;
响应于对目标灰度实例的灰度规则配置请求,生成与目标灰度实例匹配的目标灰度规则,并将目标灰度规则下发至微服务平台中的各灰度代理,以指示各灰度代理更新本地存储的灰度规则;
其中,灰度规则中存储指向灰度实例的请求信息的路由规则。
或者,灰度路由方法,包括:
实时从服务器获取并缓存灰度实例列表,并根据服务器下发的目标灰度规则,更新本地存储的灰度规则,灰度规则中存储指向灰度实例的请求信息的路由规则;
在接收到指向灰度实例的请求信息,且确定请求信息满足转发条件时,根据本地存储的灰度规则,确定与请求信息匹配的下一路由微服务;
如果根据灰度实例列表确定下一路由微服务中包括目标灰度实例,则将请求信息转发至下一路由微服务中的目标灰度实例中。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的灰度规则的配置方法或者灰度路由方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述灰度规则的配置方法或者灰度路由方法的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (20)

1.一种灰度规则的配置方法,其特征在于,包括:
响应于对目标微服务中目标微服务实例的灰度标记请求,将所述目标微服务实例标记为灰度实例,并将所述目标微服务实例存储于灰度实例列表中,所述灰度实例用于部署待更新应用;
响应于对目标灰度实例的灰度规则配置请求,生成与所述目标灰度实例匹配的目标灰度规则,并将所述目标灰度规则下发至微服务平台中的各灰度代理,以指示各所述灰度代理更新本地存储的灰度规则;
其中,所述灰度规则中存储指向灰度实例的请求信息的路由规则。
2.根据权利要求1所述的方法,其特征在于,所述将所述目标微服务实例标记为灰度实例,包括:
修改所述目标微服务实例的属性信息;其中,所述属性信息包括目标微服务实例的名称或者后缀。
3.根据权利要求1所述的方法,其特征在于,所述目标灰度规则包括灰度规则类型以及灰度规则参数;
所述生成与所述目标灰度实例匹配的目标灰度规则,包括:
配置所述目标灰度实例的灰度规则类型,并根据所述灰度规则类型确定所述灰度规则参数。
4.根据权利要求3所述的方法,其特征在于,所述灰度规则类型包括下述至少一项:
请求头HTTP Header、请求方式HTTP Method、请求参数HTTP Parameter、请求体HTTPBody、请求网际互联协议IP或者自定义规则。
5.一种灰度路由方法,由微服务平台中的灰度代理执行,其特征在于,包括:
实时从服务器获取并缓存灰度实例列表,并根据所述服务器下发的目标灰度规则,更新本地存储的灰度规则,所述灰度规则中存储指向灰度实例的请求信息的路由规则;
在接收到指向灰度实例的请求信息,且确定所述请求信息满足转发条件时,根据所述本地存储的灰度规则,确定与所述请求信息匹配的下一路由微服务;
如果根据所述灰度实例列表确定所述下一路由微服务中包括目标灰度实例,则将所述请求信息转发至所述下一路由微服务中的所述目标灰度实例中。
6.根据权利要求5所述的方法,其特征在于,所述根据所述服务器下发的目标灰度规则,更新本地存储的灰度规则,包括:
将所述目标灰度规则与本地存储的灰度规则进行比对,当二者不一致时,将本地存储的灰度规则更新为所述目标灰度规则。
7.根据权利要求5所述的方法,其特征在于,所述在接收到指向灰度实例的请求信息,且确定所述请求信息满足转发条件时,根据所述本地存储的灰度规则,确定与所述请求信息匹配的下一路由微服务,包括:
如果所述灰度代理部署在微服务网关中,则将所述请求信息转发至下一路由微服务;
如果所述灰度代理部署在微服务实例中,则根据所述灰度实例列表确定所述微服务实例是否为灰度实例,若否,则将所述请求信息转发至下一路由微服务。
8.根据权利要求7所述的方法,其特征在于,所述如果所述灰度代理部署在微服务实例中,则根据所述灰度实例列表确定所述微服务实例是否为灰度实例,包括:
确定所述灰度实例列表中是否包含所述微服务实例,若是,则确定所述微服务实例为灰度实例。
9.根据权利要求5所述的方法,其特征在于,所述方法还包括:
如果根据所述灰度实例列表确定所述下一路由微服务中不包括目标灰度实例,则继续转发所述请求信息至任一微服务实例,直至所述请求信息转发至所述下一路由微服务中的所述目标灰度实例中。
10.一种灰度规则的配置装置,其特征在于,包括:
灰度实例标记模块,用于响应于对目标微服务中目标微服务实例的灰度标记请求,将所述目标微服务实例标记为灰度实例,并将所述目标微服务实例存储于灰度实例列表中,所述灰度实例用于部署待更新应用;
目标灰度规则生成模块,用于响应于对目标灰度实例的灰度规则配置请求,生成与所述目标灰度实例匹配的目标灰度规则,并将所述目标灰度规则下发至微服务平台中的各灰度代理,以指示各所述灰度代理更新本地存储的灰度规则;
其中,所述灰度规则中存储指向灰度实例的请求信息的路由规则。
11.根据权利要求10所述的装置,其特征在于,所述灰度实例标记模块,具体用于
修改所述目标微服务实例的属性信息;其中,所述属性信息包括目标微服务实例的名称或者后缀。
12.根据权利要求10所述的装置,其特征在于,所述目标灰度规则包括灰度规则类型以及灰度规则参数;
所述目标灰度规则生成模块,具体用于
配置所述目标灰度实例的灰度规则类型,并根据所述灰度规则类型确定所述灰度规则参数。
13.根据权利要求12所述的装置,其特征在于,所述灰度规则类型包括下述至少一项:
请求头HTTP Header、请求方式HTTP Method、请求参数HTTP Parameter、请求体HTTPBody、请求网际互联协议IP或者自定义规则。
14.一种灰度路由装置,由微服务平台中的灰度代理执行,其特征在于,包括:
灰度规则更新模块,用于实时从服务器获取并缓存灰度实例列表,并根据所述服务器下发的目标灰度规则,更新本地存储的灰度规则,所述灰度规则中存储指向灰度实例的请求信息的路由规则;
路由微服务确定模块,用于在接收到指向灰度实例的请求信息,且确定所述请求信息满足转发条件时,根据所述本地存储的灰度规则,确定与所述请求信息匹配的下一路由微服务;
请求信息转发模块,用于如果根据所述灰度实例列表确定所述下一路由微服务中包括目标灰度实例,则将所述请求信息转发至所述下一路由微服务中的所述目标灰度实例中。
15.根据权利要求14所述的装置,其特征在于,所述灰度规则更新模块,具体用于
将所述目标灰度规则与本地存储的灰度规则进行比对,当二者不一致时,将本地存储的灰度规则更新为所述目标灰度规则。
16.根据权利要求14所述的装置,其特征在于,所述路由微服务确定模块,包括:第一路由微服务确定子模块和第二路由微服务确定子模块;
所述第一路由微服务确定子模块,用于如果所述灰度代理部署在微服务网关中,则将所述请求信息转发至下一路由微服务;
所述第二路由微服务确定子模块,用于如果所述灰度代理部署在微服务实例中,则根据所述灰度实例列表确定所述微服务实例是否为灰度实例,若否,则将所述请求信息转发至下一路由微服务。
17.根据权利要求16所述的装置,其特征在于,所述第二路由微服务确定子模块,具体用于
确定所述灰度实例列表中是否包含所述微服务实例,若是,则确定所述微服务实例为灰度实例。
18.根据权利要求14所述的装置,其特征在于,所述装置还包括:
转发模块,用于如果根据所述灰度实例列表确定所述下一路由微服务中不包括目标灰度实例,则继续转发所述请求信息至任一微服务实例,直至所述请求信息转发至所述下一路由微服务中的所述目标灰度实例中。
19.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一项所述的灰度规则的配置方法,或者如权利要求5-9中任一项所述的灰度路由方法。
20.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-4中任一项所述的灰度规则的配置方法,或者如权利要求5-9中任一项所述的灰度路由方法。
CN202011025701.2A 2020-09-25 2020-09-25 灰度规则的配置、灰度路由方法、装置、设备及存储介质 Pending CN112181458A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011025701.2A CN112181458A (zh) 2020-09-25 2020-09-25 灰度规则的配置、灰度路由方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011025701.2A CN112181458A (zh) 2020-09-25 2020-09-25 灰度规则的配置、灰度路由方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112181458A true CN112181458A (zh) 2021-01-05

Family

ID=73944010

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011025701.2A Pending CN112181458A (zh) 2020-09-25 2020-09-25 灰度规则的配置、灰度路由方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112181458A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113055465A (zh) * 2021-03-11 2021-06-29 南京大学 一种支持事务一致性的微服务动态更新方法
CN113382051A (zh) * 2021-06-01 2021-09-10 中国民航信息网络股份有限公司 一种全链路的灰度发布方法及灰度发布系统
CN113791759A (zh) * 2021-09-09 2021-12-14 上海仙塔智能科技有限公司 代码开发的处理方法、装置、电子设备与存储介质
CN115065686A (zh) * 2022-07-29 2022-09-16 中国工商银行股份有限公司 分布式负载均衡系统的配置方法、装置及系统
CN115733750A (zh) * 2022-11-25 2023-03-03 中国工商银行股份有限公司 微服务网关中元数据更新方法、装置、设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145347A (zh) * 2017-04-27 2017-09-08 努比亚技术有限公司 一种应用灰度发布方法、设备及存储介质
CN108494867A (zh) * 2018-04-04 2018-09-04 广州华多网络科技有限公司 服务灰度处理的方法、装置、系统以及路由服务器
CN109460841A (zh) * 2018-10-29 2019-03-12 中国联合网络通信集团有限公司 用户开户方法、系统及存储介质
CN109739552A (zh) * 2019-01-04 2019-05-10 深圳壹账通智能科技有限公司 微服务灰度发布方法、装置、计算机设备和存储介质
CN109981789A (zh) * 2019-04-03 2019-07-05 山东浪潮云信息技术有限公司 一种基于代理模式的微服务引擎
US20190319885A1 (en) * 2018-04-16 2019-10-17 Citrix Systems, Inc. Policy based service routing
CN110554856A (zh) * 2019-09-06 2019-12-10 航天科工广信智能技术有限公司 一种微服务治理系统
CN111163085A (zh) * 2019-12-29 2020-05-15 北京车与车科技有限公司 一种灰度发布场景优化方法
CN111181858A (zh) * 2019-12-24 2020-05-19 浙江大华技术股份有限公司 灰度发布的方法、系统、计算机设备和存储介质
CN111176723A (zh) * 2019-12-31 2020-05-19 上海道客网络科技有限公司 基于服务网格和链路版本的服务多版本发布系统与方法
CN111580846A (zh) * 2020-05-15 2020-08-25 厦门靠谱云股份有限公司 一种基于混合框架的微服务灰度发布方法
CN111600930A (zh) * 2020-04-09 2020-08-28 网宿科技股份有限公司 微服务请求的流量管理方法、装置、服务器及存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145347A (zh) * 2017-04-27 2017-09-08 努比亚技术有限公司 一种应用灰度发布方法、设备及存储介质
CN108494867A (zh) * 2018-04-04 2018-09-04 广州华多网络科技有限公司 服务灰度处理的方法、装置、系统以及路由服务器
US20190319885A1 (en) * 2018-04-16 2019-10-17 Citrix Systems, Inc. Policy based service routing
CN109460841A (zh) * 2018-10-29 2019-03-12 中国联合网络通信集团有限公司 用户开户方法、系统及存储介质
CN109739552A (zh) * 2019-01-04 2019-05-10 深圳壹账通智能科技有限公司 微服务灰度发布方法、装置、计算机设备和存储介质
CN109981789A (zh) * 2019-04-03 2019-07-05 山东浪潮云信息技术有限公司 一种基于代理模式的微服务引擎
CN110554856A (zh) * 2019-09-06 2019-12-10 航天科工广信智能技术有限公司 一种微服务治理系统
CN111181858A (zh) * 2019-12-24 2020-05-19 浙江大华技术股份有限公司 灰度发布的方法、系统、计算机设备和存储介质
CN111163085A (zh) * 2019-12-29 2020-05-15 北京车与车科技有限公司 一种灰度发布场景优化方法
CN111176723A (zh) * 2019-12-31 2020-05-19 上海道客网络科技有限公司 基于服务网格和链路版本的服务多版本发布系统与方法
CN111600930A (zh) * 2020-04-09 2020-08-28 网宿科技股份有限公司 微服务请求的流量管理方法、装置、服务器及存储介质
CN111580846A (zh) * 2020-05-15 2020-08-25 厦门靠谱云股份有限公司 一种基于混合框架的微服务灰度发布方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113055465A (zh) * 2021-03-11 2021-06-29 南京大学 一种支持事务一致性的微服务动态更新方法
CN113055465B (zh) * 2021-03-11 2022-04-22 南京大学 一种支持事务一致性的微服务动态更新方法
CN113382051A (zh) * 2021-06-01 2021-09-10 中国民航信息网络股份有限公司 一种全链路的灰度发布方法及灰度发布系统
WO2022252856A1 (zh) * 2021-06-01 2022-12-08 中国民航信息网络股份有限公司 一种全链路的灰度发布方法及灰度发布系统
CN113791759A (zh) * 2021-09-09 2021-12-14 上海仙塔智能科技有限公司 代码开发的处理方法、装置、电子设备与存储介质
CN115065686A (zh) * 2022-07-29 2022-09-16 中国工商银行股份有限公司 分布式负载均衡系统的配置方法、装置及系统
CN115065686B (zh) * 2022-07-29 2024-02-27 中国工商银行股份有限公司 分布式负载均衡系统的配置方法、装置及系统
CN115733750A (zh) * 2022-11-25 2023-03-03 中国工商银行股份有限公司 微服务网关中元数据更新方法、装置、设备和存储介质

Similar Documents

Publication Publication Date Title
CN112181458A (zh) 灰度规则的配置、灰度路由方法、装置、设备及存储介质
CN110191063B (zh) 服务请求的处理方法、装置、设备及存储介质
Ullah et al. Design and implementation of an open source framework and prototype for named data networking-based edge cloud computing system
US8375360B2 (en) Provision of services over a common delivery platform such as a mobile telephony network
US7475406B2 (en) Event notification structure for dynamically aggregated logical components
CN108306917A (zh) 数据处理方法和装置、微服务模块的注册方法及装置
CN113055492A (zh) 服务灰度链路的控制方法、装置、计算机设备和存储介质
CN106603582B (zh) 一种网络微服务发现方法
CN109618176B (zh) 一种直播业务的处理方法、设备和存储介质
CN110808857B (zh) 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质
CN114024972B (zh) 一种长连接通信方法、系统、装置、设备及存储介质
US10326859B2 (en) Internet-wide scheduling of transactions
CN112565406B (zh) 一种灰度发布方法、灰度发布系统及电子设备
KR102260781B1 (ko) 사물 인터넷을 위한 명명 데이터 네트워킹 기반 에지 클라우드 컴퓨팅 통합 시스템
GB2422217A (en) A system for providing services
CN102077553A (zh) 用于提供背景触发的背景模型分发的方法、设备和计算机程序产品
CN111917838B (zh) 基于微服务的处理方法及装置、存储介质、电子装置
US20060161616A1 (en) Provision of services over a common delivery platform such as a mobile telephony network
Kherani et al. Development of mec system for indigenous 5g test-bed
CN110933188A (zh) 远程服务的调用方法、系统、服务器及存储介质
CN111400060A (zh) 设备联动方法、装置、服务器和介质
WO2013004268A1 (en) Caching content
CN115102854B (zh) 微服务的远程过程调用路由管理控制方法、系统及设备
GB2422219A (en) A software development system
CN114285889A (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