CN111163085A - 一种灰度发布场景优化方法 - Google Patents
一种灰度发布场景优化方法 Download PDFInfo
- Publication number
- CN111163085A CN111163085A CN201911386871.0A CN201911386871A CN111163085A CN 111163085 A CN111163085 A CN 111163085A CN 201911386871 A CN201911386871 A CN 201911386871A CN 111163085 A CN111163085 A CN 111163085A
- Authority
- CN
- China
- Prior art keywords
- gray
- service
- message
- scheduling
- request
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5681—Pre-fetching or pre-delivering data based on network characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及计算机技术领域,具体涉及一种灰度发布场景优化方法,其基于SC微服务调度链和异步消息调度,包括灰度发布控制流程、灰度链路调度流程,灰度发布控制流程包括服务上线则与注册中心打标注册;添加灰度请求头Header;进行线程存储;获取灰度服务实例信息;请求添加灰度标记进行调度;获取到请求的灰度标记,形成链路;灰度消息的发送消息方在消协header中添加标记,消费者按照消息过滤规则,由真正的灰度实例进行消费。本发明的有益效果:解决使用sc框架的微服务实现灰度发布时调度链路的问题,同时解决结合消息系统时,正常服务异常消费灰度消息的问题。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种灰度发布场景优化方法。
背景技术
目前关于服务灰度发布的实现方式,大部分借助于前端的路由规则和后端服务组注册划分的方式,通过分流实现A/B测试。现有的方式,简单的路由不能解决微服务后端之间的调度问题,不能统一解决微服务链路调度的问题,无法解决消息灰度等场景的服务调度问题。
发明内容
本发明的目的在于克服现有技术中存在的问题,提供一种灰度发布场景优化方法,它可以实现解决使用sc框架的微服务实现灰度发布时调度链路的问题,同时解决结合消息系统时,正常服务异常消费灰度消息的问题。
为实现上述技术目的,达到上述技术效果,本发明是通过以下技术方案实现的:
一种灰度发布场景优化方法,其基于SC微服务调度链和异步消息调度,包括如下步骤:
A、灰度发布控制流程,具体包括如下:
步骤1.1)服务上线则与注册中心打标注册,表明自己属于灰度或者非灰度服务实例;
步骤1.2)依照前端的服务,按照灰度策略进行灰度打标,添加灰度请求头Header;
步骤1.3)后端服务获取每次请求的灰度请求头Header,进行线程存储;
步骤1.4)同步或异步调度其他服务,从线程中获取灰度请求标记、本地服务列表,获取灰度服务实例信息;
步骤1.5)选择正确的实例信息,请求添加灰度标记进行调度,此处为重点灰度header的向下传递;
步骤1.6)下个服务获取到请求的灰度标记,从步骤1.3)开始继续至此步骤,形成链路;
步骤1.7)灰度消息的发送消息方在消协header中添加标记,消费者按照消息过滤规则,如发现强灰度标记的消息header,则结合本身服务的标记,判断能否处理该消息,不能处理的消息放回原有队列,由下个实例进行消费,最终的消息,由真正的灰度实例进行消费;
B、灰度链路调度流程,具体包括如下:
步骤2.1)用户通过网络发送请求到远程负载服务器,远程负载服务器校验请求的灰度开关、灰度策略;
步骤2.2)灰度开关开启,验证灰度策略,满足灰度策略的请求,打灰度标记值,灰度开关不开启或者不满足灰度策略的请求,灰度头打非灰度标记值;
步骤2.3)带这个灰度头,做前端路由,进入第一层边缘服务;
步骤2.4)后端的远程负载服务器,解析请求中的头信息,获取到下个调度服务的匹配规则,集成的灰度组件,进行服务的选择、匹配,重新包装请求,打标记头,发起服务调度;
步骤2.5)相应的服务,处理请求之后,响应上层调度服务,上传服务回应用户请求,用户体验到新特性功能;
步骤2.6)灰度服务和正常服务处理过程中,通过消息中心进行解耦,消费者获取到了一个消息;
步骤2.7)消费者前置消息过滤器,验证消息的头信息和自己的服务信息进行匹配,验证本消费者能否处理;
步骤2.8)本消费者能处理,正常处理,消息处理结束;
步骤2.9)本消费者不能处理,放回原队里的原位置,不能放入原位置的,则放入队列最前位置,待下次出栈;
步骤2.10)再一次出栈,再次匹配,能处理,则消息处理结束,不能处理,重复步骤2.9),最终到达正确的消费者,消息处理成功。
本发明的有益效果:解决使用sc框架的微服务实现灰度发布时调度链路的问题,同时解决结合消息系统时,正常服务异常消费灰度消息的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中灰度链路调度流程示意图;
图2为本发明中灰度链路调度流程的灰度消息处理示意图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1-2所示的一种灰度发布场景优化方法,其基于SC微服务调度链和异步消息调度,包括如下步骤:
A、灰度发布控制流程,具体包括如下:
步骤1.1)服务上线则与注册中心打标注册,表明自己属于灰度或者非灰度服务实例;
步骤1.2)依照前端的服务,按照灰度策略进行灰度打标,添加灰度请求头Header;
步骤1.3)后端服务获取每次请求的灰度请求头Header,进行线程存储;
步骤1.4)同步或异步调度其他服务,从线程中获取灰度请求标记、本地服务列表,获取灰度服务实例信息;
步骤1.5)选择正确的实例信息,请求添加灰度标记进行调度,此处为重点灰度header的向下传递;
步骤1.6)下个服务获取到请求的灰度标记,从步骤1.3)开始继续至此步骤,形成链路;
步骤1.7)灰度消息的发送消息方在消协header中添加标记,消费者按照消息过滤规则,如发现强灰度标记的消息header,则结合本身服务的标记,判断能否处理该消息,不能处理的消息放回原有队列,由下个实例进行消费,最终的消息,由真正的灰度实例进行消费;
B、灰度链路调度流程,具体包括如下:
步骤2.1)用户通过网络发送请求到远程负载服务器,远程负载服务器校验请求的灰度开关、灰度策略;
步骤2.2)灰度开关开启,验证灰度策略,满足灰度策略的请求,打灰度标记值,灰度开关不开启或者不满足灰度策略的请求,灰度头打非灰度标记值;
步骤2.3)带这个灰度头,做前端路由,进入第一层边缘服务;
步骤2.4)后端的远程负载服务器,解析请求中的头信息,获取到下个调度服务的匹配规则,集成的灰度组件,进行服务的选择、匹配,重新包装请求,打标记头,发起服务调度;
步骤2.5)相应的服务,处理请求之后,响应上层调度服务,上传服务回应用户请求,用户体验到新特性功能;
步骤2.6)灰度服务和正常服务处理过程中,通过消息中心进行解耦,消费者获取到了一个消息;
步骤2.7)消费者前置消息过滤器,验证消息的头信息和自己的服务信息进行匹配,验证本消费者能否处理;
步骤2.8)本消费者能处理,正常处理,消息处理结束;
步骤2.9)本消费者不能处理,放回原队里的原位置,不能放入原位置的,则放入队列最前位置,待下次出栈;
步骤2.10)再一次出栈,再次匹配,能处理,则消息处理结束,不能处理,重复步骤2.9),最终到达正确的消费者,消息处理成功。
其中,SC:SpringCloud微服务框架的简写;
A/B Testing:AB测试,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来;
灰度策略:用于区分不同用户的规则;
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (1)
1.一种灰度发布场景优化方法,其特征在于,其基于SC微服务调度链和异步消息调度,包括如下步骤:
A、灰度发布控制流程,具体包括如下:
步骤1.1)服务上线则与注册中心打标注册,表明自己属于灰度或者非灰度服务实例;
步骤1.2)依照前端的服务,按照灰度策略进行灰度打标,添加灰度请求头Header;
步骤1.3)后端服务获取每次请求的灰度请求头Header,进行线程存储;
步骤1.4)同步或异步调度其他服务,从线程中获取灰度请求标记、本地服务列表,获取灰度服务实例信息;
步骤1.5)选择正确的实例信息,请求添加灰度标记进行调度,此处为重点灰度header的向下传递;
步骤1.6)下个服务获取到请求的灰度标记,从步骤1.3)开始继续至此步骤,形成链路;
步骤1.7)灰度消息的发送消息方在消协header中添加标记,消费者按照消息过滤规则,如发现强灰度标记的消息header,则结合本身服务的标记,判断能否处理该消息,不能处理的消息放回原有队列,由下个实例进行消费,最终的消息,由真正的灰度实例进行消费;
B、灰度链路调度流程,具体包括如下:
步骤2.1)用户通过网络发送请求到远程负载服务器,远程负载服务器校验请求的灰度开关、灰度策略;
步骤2.2)灰度开关开启,验证灰度策略,满足灰度策略的请求,打灰度标记值,灰度开关不开启或者不满足灰度策略的请求,灰度头打非灰度标记值;
步骤2.3)带这个灰度头,做前端路由,进入第一层边缘服务;
步骤2.4)后端的远程负载服务器,解析请求中的头信息,获取到下个调度服务的匹配规则,集成的灰度组件,进行服务的选择、匹配,重新包装请求,打标记头,发起服务调度;
步骤2.5)相应的服务,处理请求之后,响应上层调度服务,上传服务回应用户请求,用户体验到新特性功能;
步骤2.6)灰度服务和正常服务处理过程中,通过消息中心进行解耦,消费者获取到了一个消息;
步骤2.7)消费者前置消息过滤器,验证消息的头信息和自己的服务信息进行匹配,验证本消费者能否处理;
步骤2.8)本消费者能处理,正常处理,消息处理结束;
步骤2.9)本消费者不能处理,放回原队里的原位置,不能放入原位置的,则放入队列最前位置,待下次出栈;
步骤2.10)再一次出栈,再次匹配,能处理,则消息处理结束,不能处理,重复步骤2.9),最终到达正确的消费者,消息处理成功。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911386871.0A CN111163085B (zh) | 2019-12-29 | 2019-12-29 | 一种灰度发布场景优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911386871.0A CN111163085B (zh) | 2019-12-29 | 2019-12-29 | 一种灰度发布场景优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111163085A true CN111163085A (zh) | 2020-05-15 |
CN111163085B CN111163085B (zh) | 2022-10-14 |
Family
ID=70558968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911386871.0A Active CN111163085B (zh) | 2019-12-29 | 2019-12-29 | 一种灰度发布场景优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111163085B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111953780A (zh) * | 2020-08-13 | 2020-11-17 | 中国工商银行股份有限公司 | 微服务灰度发布方法、装置、设备、系统及存储介质 |
CN112087325A (zh) * | 2020-08-21 | 2020-12-15 | 烽火通信科技股份有限公司 | 灰度发布方法、装置、设备及可读存储介质 |
CN112114845A (zh) * | 2020-08-06 | 2020-12-22 | 北京健康之家科技有限公司 | 灰度消息的处理方法及装置、存储介质、计算机设备 |
CN112181458A (zh) * | 2020-09-25 | 2021-01-05 | 中国建设银行股份有限公司 | 灰度规则的配置、灰度路由方法、装置、设备及存储介质 |
CN112202929A (zh) * | 2020-12-01 | 2021-01-08 | 湖南新云网科技有限公司 | 一种微服务架构中的服务访问方法、装置、设备 |
CN112925528A (zh) * | 2021-01-28 | 2021-06-08 | 北京达佳互联信息技术有限公司 | 数据传输方法、装置、电子设备及存储介质 |
CN113079197A (zh) * | 2021-03-15 | 2021-07-06 | 上海浦东发展银行股份有限公司 | 一种基于注册中心和Ribbon的灰度负载方法、设备及存储介质 |
CN114884915A (zh) * | 2022-04-19 | 2022-08-09 | 阿里巴巴(中国)有限公司 | 基于灰度发布的消息处理方法、装置以及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018049872A1 (zh) * | 2016-09-19 | 2018-03-22 | 华为技术有限公司 | 微服务配置装置及方法 |
CN109144724A (zh) * | 2018-07-27 | 2019-01-04 | 众安信息技术服务有限公司 | 一种微服务资源调度系统及方法 |
CN110351366A (zh) * | 2019-07-12 | 2019-10-18 | 西安雷迪信息技术有限公司 | 一种互联网应用的服务调度方法、系统及计算机可读存储介质 |
-
2019
- 2019-12-29 CN CN201911386871.0A patent/CN111163085B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018049872A1 (zh) * | 2016-09-19 | 2018-03-22 | 华为技术有限公司 | 微服务配置装置及方法 |
CN109144724A (zh) * | 2018-07-27 | 2019-01-04 | 众安信息技术服务有限公司 | 一种微服务资源调度系统及方法 |
CN110351366A (zh) * | 2019-07-12 | 2019-10-18 | 西安雷迪信息技术有限公司 | 一种互联网应用的服务调度方法、系统及计算机可读存储介质 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112114845A (zh) * | 2020-08-06 | 2020-12-22 | 北京健康之家科技有限公司 | 灰度消息的处理方法及装置、存储介质、计算机设备 |
CN112114845B (zh) * | 2020-08-06 | 2023-08-11 | 北京水滴科技集团有限公司 | 灰度消息的处理方法及装置、存储介质、计算机设备 |
CN111953780B (zh) * | 2020-08-13 | 2022-10-21 | 中国工商银行股份有限公司 | 微服务灰度发布方法、装置、设备、系统及存储介质 |
CN111953780A (zh) * | 2020-08-13 | 2020-11-17 | 中国工商银行股份有限公司 | 微服务灰度发布方法、装置、设备、系统及存储介质 |
CN112087325A (zh) * | 2020-08-21 | 2020-12-15 | 烽火通信科技股份有限公司 | 灰度发布方法、装置、设备及可读存储介质 |
WO2022037272A1 (zh) * | 2020-08-21 | 2022-02-24 | 烽火通信科技股份有限公司 | 灰度发布方法、装置、设备及可读存储介质 |
CN112181458A (zh) * | 2020-09-25 | 2021-01-05 | 中国建设银行股份有限公司 | 灰度规则的配置、灰度路由方法、装置、设备及存储介质 |
CN112202929A (zh) * | 2020-12-01 | 2021-01-08 | 湖南新云网科技有限公司 | 一种微服务架构中的服务访问方法、装置、设备 |
CN112202929B (zh) * | 2020-12-01 | 2021-03-26 | 湖南新云网科技有限公司 | 一种微服务架构中的服务访问方法、装置、设备 |
CN112925528A (zh) * | 2021-01-28 | 2021-06-08 | 北京达佳互联信息技术有限公司 | 数据传输方法、装置、电子设备及存储介质 |
CN112925528B (zh) * | 2021-01-28 | 2024-06-04 | 北京达佳互联信息技术有限公司 | 数据传输方法、装置、电子设备及存储介质 |
CN113079197B (zh) * | 2021-03-15 | 2023-07-25 | 上海浦东发展银行股份有限公司 | 一种基于注册中心和Ribbon的灰度负载方法、设备及存储介质 |
CN113079197A (zh) * | 2021-03-15 | 2021-07-06 | 上海浦东发展银行股份有限公司 | 一种基于注册中心和Ribbon的灰度负载方法、设备及存储介质 |
CN114884915A (zh) * | 2022-04-19 | 2022-08-09 | 阿里巴巴(中国)有限公司 | 基于灰度发布的消息处理方法、装置以及设备 |
CN114884915B (zh) * | 2022-04-19 | 2024-03-26 | 阿里巴巴(中国)有限公司 | 基于灰度发布的消息处理方法、装置以及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111163085B (zh) | 2022-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111163085B (zh) | 一种灰度发布场景优化方法 | |
CN106128453A (zh) | 一种机器人的智能识别语音自动应答方法及机器人 | |
CN106454437B (zh) | 一种流媒体业务速率预测方法及装置 | |
CN104575503B (zh) | 语音识别方法和装置 | |
CN110598110B (zh) | 业务推送方法和装置 | |
CN101978660A (zh) | 用于传达和/或使用负载信息以支持分散式话务调度决策的方法和装置 | |
CN112150284A (zh) | 一种区块链异构链跨链交易方法 | |
EP1912387A4 (en) | CONTENT DISTRIBUTION METHOD, CONTENT DISTRIBUTION SERVER, COMMUNICATION TERMINAL APPARATUS, AND CONTENT DISTRIBUTION SYSTEM | |
CN107734076A (zh) | 消息推送方法、装置及存储介质 | |
CN113282348B (zh) | 一种基于区块链的边缘计算任务卸载系统及方法 | |
CN113472659B (zh) | 转发路径的确定方法、装置及sdn控制器 | |
CN115955691A (zh) | 5g专网感知评价方法、装置、电子设备及可读存储介质 | |
CN112020018B (zh) | 区块链记账组生成方法、共识方法及区块链系统 | |
CN106303426A (zh) | 一种车辆远程定损方法及系统 | |
CN116866974A (zh) | 一种基于深度强化学习的联邦学习客户选择方法 | |
CN101360111A (zh) | 用户管理方法、设备及系统 | |
CN110366181A (zh) | 数据传输方法、系统及计算机可读存储介质 | |
CN106341343B (zh) | 一种自动服务降级系统及方法 | |
CN111954031A (zh) | 一种动态调整视频流抽帧速率的方法及系统 | |
CN106506316A (zh) | 信息传输方法和装置 | |
CN110535629A (zh) | 一种异步网络条件下的出块共识方法 | |
Wang et al. | Deep learning method for generalized modulation classification under varying noise condition | |
CN110941404B (zh) | 激光打印机的共享打印方法及系统 | |
Bhattacharjee | Mutual authentication technique with four biometric entities applying fuzzy neural network in 5G mobile communications | |
CN104734898B (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 |