CN113242281A - 一种灰度发布方法、装置、设备及存储介质 - Google Patents
一种灰度发布方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113242281A CN113242281A CN202110455717.5A CN202110455717A CN113242281A CN 113242281 A CN113242281 A CN 113242281A CN 202110455717 A CN202110455717 A CN 202110455717A CN 113242281 A CN113242281 A CN 113242281A
- Authority
- CN
- China
- Prior art keywords
- gray
- release
- configuration information
- service node
- gateway
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 230000000694 effects Effects 0.000 claims abstract description 34
- 238000009826 distribution Methods 0.000 claims description 55
- 238000004590 computer program Methods 0.000 claims description 13
- 238000007726 management method Methods 0.000 description 44
- 230000008569 process Effects 0.000 description 28
- 239000008186 active pharmaceutical agent Substances 0.000 description 27
- 101001072091 Homo sapiens ProSAAS Proteins 0.000 description 23
- 102100036366 ProSAAS Human genes 0.000 description 23
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 8
- 230000009849 deactivation Effects 0.000 description 6
- 238000010200 validation analysis Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000011022 operating instruction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 241000412611 Consul Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- 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/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种灰度发布方法、装置、设备及存储介质,方法包括:网关后台管理平台获取灰度发布请求,灰度发布请求包括灰度配置信息以及灰度发布策略;根据灰度发布策略,确定待灰度的网关服务节点;将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。采用本发明实施例的技术方案,灰度发布的网关配置规则可以在用户指定的网关服务节点上实时生效,从而避免了由于重要配置项数据填写有误导致的微服务系统无法正常访问的风险,能够保证微服务系统更新迭代时的稳定性,同时有效提高微服务网关中灰度发布的效率。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种灰度发布方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,5G时代的来临,越来越多的企业选择通过使用服务平台在线对多种业务进行处理,目前的微服务架构有效的提高了业务办理的效率。
然而,对于微服务网关来说,如果想要变更配置项数据,则需将变更后的配置项数据写入微服务网关的数据库中,所有网关服务节点对配置项数据进行监听。当监听到配置项数据发生变更,则所有网关服务节点对变更后的配置项数据进行处理后内存生效。在该过程中,一旦某个重要配置项数据填写有误,就有可能导致所有暴露的HTTP API无法正常访问,因此,能够在微服务网关中实现配置项数据的灰度发布,对于快速迭代的微服务是至关重要的。
发明内容
本申请实施例提供了一种灰度发布方法、装置、设备及存储介质,用于实现在微服务网关中对配置项数据的灰度发布,提高微服务快速迭代的稳定性。
为解决上述技术问题,本说明书实施例是这样实现的:
第一方面,提出了一种灰度发布方法,应用于网关后台管理平台,包括:
获取灰度发布请求,所述灰度发布请求包括灰度配置信息以及灰度发布策略;
根据所述灰度发布策略,确定待灰度的网关服务节点;
将所述灰度配置信息发送到所述待灰度的网关服务节点,以使所述待灰度的网关服务节点完成对所述灰度配置信息的生效。
第二方面,提出了一种灰度发布方法,应用于网关服务节点,包括:
接收网关后台管理平台发送的灰度配置信息,所述灰度配置信息由网关后台管理平台根据灰度发送策略确定出待灰度的网关服务节点后发送;
根据所述灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,以使所述灰度配置信息在本网关服务节点中生效。
第三方面,提出了一种灰度发布方法,应用于终端,包括:
获取灰度配置信息以及灰度发布策略;
根据所述灰度配置信息以及所述灰度发布策略,生成灰度发布请求;
将所述灰度发布请求发送至网关后台管理平台,以触发所述网关后台管理平台根据所述灰度发布请求对网关服务节点进行灰度发布。
第四方面,提出了一种灰度发布装置,包括:
灰度发布请求获取单元,用于获取灰度发布请求,所述灰度发布请求包括灰度配置信息以及灰度发布策略;
待灰度网关服务节点确定单元,用于根据所述灰度发布策略,确定待灰度的网关服务节点;
灰度配置信息发送单元,用于将所述灰度配置信息发送到所述待灰度的网关服务节点,以使所述待灰度的网关服务节点完成对所述灰度配置信息的生效。
第五方面,提出了一种灰度发布装置,包括:
灰度配置信息接收单元,用于接收网关后台管理平台发送的灰度配置信息,所述灰度配置信息由网关后台管理平台根据灰度发送策略确定出待灰度的网关服务节点后发送;
灰度发布数据更新单元,用于根据所述灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,以使所述灰度配置信息在本网关服务节点中生效。
第六方面,提出了一种灰度发布装置,包括:
数据获取单元,用于获取灰度配置信息以及灰度发布策略;
灰度发布请求生成单元,根据所述灰度配置信息以及所述灰度发布策略,生成灰度发布请求;
灰度发布请求发送单元,用于将所述灰度发布请求发送至网关后台管理平台,以触发所述网关后台管理平台根据所述灰度发布请求对网关服务节点进行灰度发布。
第七方面,提出了一种电子设备,应用于应用服务端,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
获取灰度发布请求,所述灰度发布请求包括灰度配置信息以及灰度发布策略;
根据所述灰度发布策略,确定待灰度的网关服务节点;
将所述灰度配置信息发送到所述待灰度的网关服务节点,以使所述待灰度的网关服务节点完成对所述灰度配置信息的生效。
第八方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
获取灰度发布请求,所述灰度发布请求包括灰度配置信息以及灰度发布策略;
根据所述灰度发布策略,确定待灰度的网关服务节点;
将所述灰度配置信息发送到所述待灰度的网关服务节点,以使所述待灰度的网关服务节点完成对所述灰度配置信息的生效。
由以上实施例提供的技术方案可见,网关后台管理平台获取终端发送的灰度发布请求,其中,灰度发布请求包括灰度配置信息以及灰度发布策略,根据灰度发布策略,可以确定本次灰度发布中待灰度的网关服务节点,将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。由此使得,灰度发布的网关配置规则可以在用户指定的网关服务节点上实时生效,从而避免了由于重要配置项数据填写有误导致的所有暴露的HTTP API无法正常访问的风险,能够保证微服务系统更新迭代时的稳定性,同时有效提高微服务网关中灰度发布的效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本说明书第一实施方式提供的灰度发布方法的流程示意图。
图2是本说明书第一实施方式提供的灰度发布方法的具体流程图。
图3是本说明书第二实施方式提供的灰度发布方法的流程示意图。
图4是本说明书第二实施方式提供的灰度发布数据的数据结构示意图。
图5是本说明书第二实施方式提供的灰度发布更新流程示意图。
图6是本说明书第二实施方式提供的灰度发布停用流程示意图。
图7是本说明书第三实施方式提供的灰度发布方法的流程示意图。
图8是本说明书第四实施方式提供的灰度发布装置的模块结构示意图。
图9是本说明书第五实施方式提供的灰度发布装置的模块结构示意图。
图10是本说明书第六实施方式提供的灰度发布装置的模块结构示意图。
图11是本说明书第七实施方式提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。
一般而言,微服务网关包括玩网关后台管理平台以及网关服务节点(网关服务实例),其中,网关后台管理平台负责请求规则配置的变更以及发布维护等,而网关服务节点除了正常处理业务数据的往来,还需要统一监听网关后台管理平台的统一配置数据中心中配置项的变动,然后加载配置数据,保存在内存随即生效。一旦一个重要配置项填写有误,有可能会导致所有暴露的HTTP API无法正常访问。
与之相对的是灰度发布。当我们变更一个线上服务项时,小范围试错,逐步验证、收集数据,根据灰度发布结果,进而决定:继续扩大灰度范围、全量发布、停止灰度或者继续修改配置,等等。因此,我们有必要在生产环境下为微服务网关提供一套灰度发布机制。
本说明书的第一实施方式涉及一种灰度发布方法,应用于网关后台管理平台,如图1所示,包括以下步骤:
S101:获取灰度发布请求,灰度发布请求包括灰度配置信息以及灰度发布策略;
S102:根据灰度发布策略,确定待灰度的网关服务节点;
S103:将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。
在步骤S101中,网关后台管理平台获取用户终端发送的灰度发布请求,灰度发布请求包括灰度配置信息以及灰度发布策略。其中,灰度配置信息可以包括用户标识、配置类型、配置对象、操作指令以及配置数据等。
针对一个具体业务的HTTP API提供者而言,为一个业务接入方,也称之为一个租户,一个租户可使用专业名称SAAS表示,则用户标识可以为租户标识,如SAAS_ID 1、SAAS_ID 2、SAAS_ID 3等。
一个网关的SAAS租户,若在网关上对外暴露访问入口,需要配置的请求规则的类型如下:
1)HTTP API的真实服务实例服务访问地址信息,称之为上游,使用upstreams表示;
2)HTTP API的请求路由规则,使用routes表示;
3)HTTP API的域名证书,使用ssls表示;
4)HTTP API的消费者区分授权管理,使用consumers表示;
等等。以上请求规则的类型即为配置类型。在本说明书的实施方式的描述中,资源表示时使用{Config_Type}呈现具体配置类型的请求规则的占位符,实际指代上述:upsteams/ssls/routes/consumers/...中的任何一种具体配置类型。
配置对象具体指灰度发布的具体对象,在本说明书的实施方式的描述中,资源表示时使用{Config_ID}表示。
操作指令包括针对灰度的不同具体操作,如启动灰度发布、停用灰度发布、查看灰度发布状态等。作为结构化数据标识,可用以下表示:
1)PUT,启动灰度发布;
2)DELETE,停用灰度发布;
3)GET,查看发布状态。
配置数据即为用户针对灰度发布具体配置的数据。在本说明书的实施方式的描述中,以{Gray Config DATA}表示。
灰度发布策略可以包括以下几种方式:
1)手动选择网关服务节点;
2)手动选择机房IDC(按照机房粒度);
3)百分比机制;
4)随机节点机制。
具体操作层面,用户可选择一种或多种灰度发布策略,最终都会得到一组网关服务节点的访问地址列表,作为待灰度的网关服务节点。
在步骤S102中,根据灰度发布策略可以确定待灰度的网关服务节点。如灰度发布策略为“手动宣泄网关服务节点”,则表示用户会在网关服务节点列表中,手动选择部分网关服务节点作为待灰度的网关服务节点。如灰度发布策略为“百分比机制”,用户选取比例为30%,则表示所有网关服务节点中的30%作为待灰度的网关服务节点。
在步骤S103中,当确定了待灰度的网关服务节点后,将灰度配置信息发送到已确定的待灰度的网关服务节点。
具体实施过程中,网关服务节点需要各自对网关后台管理平台暴露并提供一组HTTP API,以处理各种类型的请求规则配置的灰度发布支持。HTTP API URI格式固定格式如下,呈现灰度发布的SAAS多租户资源归属、配置类型和具体业务请求规则的配置对象。
/gray/{SAAS_ID}/{Config_Type}/{Config_ID}
每一个具体微服务网关的服务实例的访问地址模板为:
http://{IP Addr}:{Port}/gray/{SAAS_ID}/{Config_Type}/{Config_ID}
结合前文所述的操作指令,当针对一个具体的API网关启用灰度发布时,就可以使用如下模板:
PUT
{Gray Config DATA}
http://{IP Addr}:{Port}/gray/{SAAS_ID}/{Config_Type}/{Config_ID}
传输的数据可以为结构化的数据,比如JSON、BSON等,或者以某种方式序列化的数据。
以证书(其类型为:ssls)为例,一个SAAS租户(其SAAS ID为2011110217554673),在现有证书未到期之前,因采购成本原因,选择了从另外一家证书公司采购了域名证书。
一个证书在后台管理系统里面,往往会被包含在一个ssl对象某些属性中。该租户针对已有证书对应的一条记录(假设其ID为:d752cd59-ec6a-4ffa-9227-df54a2250cc7)进行编辑,上传了新的证书之后,这时可以提前测试线上API证书切换是否对消费者访问产生影响,然后选择一个网关实例(内网地址10.10.10.10内网端口为29090),用于灰度验证更换证书的访问效果。
PUT
{这里是最新证书配置数据}
http://10.10.10.10:29090/gray/2011110217554673/ssls/d752cd59-ec6a-4ffa-9227-df54a2250cc7
证书灰度之后,发现有一部分用户出现证书链信任失败问题,于是该SAAS租户需要停用该灰度的证书实例,则发送一个DELETE方法禁用:
DELETE
http://10.10.10.10:29090/gray/2011110217554673/ssls/d752cd59-ec6a-4ffa-9292-df54a2250cc7
当用户需要停用某个网关服务节点中当前业务线下所有配置类型的灰度发布时:
DELETE
http://{IP Addr}:{Port}/gray/{SAAS_ID}/
如只停用某一配置类型的灰度发布,为:
DELETE
http://{IP Addr}:{Port}/gray/{SAAS_ID}/{Config_Type}/
粒度再细一点,如只停用某一个具体配置对象的灰度发布:
DELETE
http://{IP Addr}:{Port}/gray/{SAAS_ID}/{Config_Type}/{Config_ID}
比如,业务方要停止一条证书灰度发布,网关后台管理平台拼接调用HTTP API以及请求方式如下:
DELETE
http://10.10.10.10:29090/gray/2011110217554673/ssls/d752cd59-ec6a-4ffa-9227-df54a2250cc7
通过上述方式,将灰度配置信息发送到待灰度的网关服务节点,网关服务节点根据灰度配置信息,完成灰度发布的生效。
在一个例子中,如图2所示,用户选择灰度发布策略并输入灰度配置信息,终端将以上信息发送至微服务网关的网关后台管理平台,网关后台管理平台根据用户选择的灰度发布策略,确定待灰度的网关服务节点。
随后,判断确定的待灰度的网关服务节点是否为全部网关服务节点,如判断结果为是,则表示此次配置发布为全量发布,即配置需在所有网关服务节点生效,然后再判断当前是否存在已灰度的网关服务节点,如存在,则需撤销已灰度的网关服务节点的灰度操作,撤销成功后将灰度发布状态改为离线状态;如不存在或已完成撤销操作,则将灰度配置信息发送到全部网关服务节点。
如确定的待灰度的网关服务节点不是全部网关服务节点,则同样需进一步判断当前是否存在已灰度的网关服务节点,如存在,则需撤销已灰度的网关服务节点的灰度操作,撤销成功后将灰度发布状态改为离线状态;如不存在或已完成撤销操作,则需进一步判断待灰度的网关服务节点是否为空,如为空,则表示此次灰度发布为“停用”已灰度发布的内容,则需撤销已灰度的网关服务节点的灰度操作,撤销成功后将灰度发布状态改为离线状态。如不为空,则将灰度配置信息发送到待灰度的网关服务节点。
其中,网关后台管理平台的数据库,如MySQL中存储有历史灰度操作记录,每次网关服务节点的灰度操作完成后,需将本次灰度操作行为记录到数据库中,并更新灰度发布状态为在线。该灰度发布记录保存有:配置类型、配置对象、灰度发布策略、已灰度的网关服务节点IP列表、操作者等等。因此,可以通过查询数据库记录的灰度发布操作,来确定当前是否存在已灰度的网关服务节点。
需要说明的是,可以在需要时,在网关后台管理平台手动停用灰度发布。从灰度发布记录中可以获得已灰度的网关服务节点IP地址列表,然后一一调用提供的灰度发布停用HTTP API,以DELETE方法调用http://{IP Addr}:{Port}/gray/{SAAS_ID}/{Config_Type}/{Config_ID},从而完成灰度发布手动停用流程,并更新灰度发布状态字段设置为离线停用状态。其中,网关层面仅仅是停用该灰度发布的配置数据,并同时尝试还原全量发布的配置数据。
可以理解,基于上述方法,新增的配置数据可以直接选择灰度发布,局部测试效果,即此时只存在灰度发布;也可以针对一个已全量发布的配置数据,如修改内容较大,可选择灰度发布,小范围验证变更后效果,即此时同时存在灰度发布和全量发布的叠加态;针对已灰度发布的配置数据,可继续变更,可继续灰度发布,直到满意为止;而针对已灰度发布的配置数据,在特定网关服务节点上经过验证之后,可继续扩大灰度发布的范围,比如范围扩大到80%;当灰度发布百分比达到100%时,则表示灰度发布的生命周期结束,将自动转向全量发布,此时的灰度发布为离线状态,灰度发布的配置数据为全量发布状态;当灰度发布占比降低到0%时,自动回退到全量发布模式,此时灰度发布为下线停用状态。
需要说明的是,针对同一个配置数据的全量发布会强制覆盖该配置的已灰度发布数据,将其统一为全量发布,并设置灰度发布状态为离线状态,保证全量发布的最高优先级。
在一个例子中,网关后台管理平台还可以单独启动一个独立应用,监控已经灰度发布的配置数据是否生效。针对一条已灰度发布的配置数据,比如路由路径的配置,可以设置状态检测周期,如每10分钟检测一次,在检测的时候,遵循如下流程:在存储在数据库的灰度发布记录中,查询状态为启用的灰度发布记录,根据该记录确定当前处于灰度发布的网关服务节点,判断该网关服务节点是否不属于上一条记录,如不属于,则停止该网关服务节点的灰度操作;如属于,则调用该网关服务节点的HTTP API查询其灰度发布状态,如状态数据显示该网关服务节点为正在工作中,则本次检测结束;如状态数据显示该网关服务节点未在工作中,则调用该网关服务节点的HTTP API查询其灰度发布状态,直到检测其处于工作状态中,如重复次数超过3次,其工作状态依然处于未工作中,则进行报警处理,转人工干预。
利用本实施例进行灰度发布时,网关后台管理平台获取终端发送的灰度发布请求,其中,灰度发布请求包括灰度配置信息以及灰度发布策略,根据灰度发布策略,可以确定本次灰度发布中待灰度的网关服务节点,将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。由此使得,灰度发布的网关配置规则可以在用户指定的网关服务节点上实时生效,从而避免了由于重要配置项数据填写有误导致的所有暴露的HTTP API无法正常访问的风险,能够保证微服务系统更新迭代时的稳定性,同时有效提高微服务网关中灰度发布的效率。
本说明书的第二实施方式涉及一种灰度发布方法,应用于网关服务节点,如图3所示,包括:
S301:接收网关后台管理平台发送的灰度配置信息,灰度配置信息由网关后台管理平台根据灰度发送策略确定出待灰度的网关服务节点后发送;
S302:根据灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,以使灰度配置信息在本网关服务节点中生效。
在微服务体系架构中,将应用程序划分为几个低耦合的服务(称为微服务),每个服务都有其独特的功能。API网关可以充当使用这些微服务的客户端的中央接口,客户端不必访问数十个单独的服务,而是可以向API网关发送单个请求,API网关包括多个网关服务节点,实现对微服务的聚集。
在步骤S301中,接收网关后台管理平台发送的灰度配置信息,灰度配置信息以及发送方式如本说明书第一实施方式中阐述,此处不再赘述。
在步骤S302中,微服务网关中的网关服务节点设置有共享内存,共享内存中存储有灰度发布数据,当根据灰度配置信息更新共享内存中的灰度发布数据后,表示灰度配置在该网关服务节点生效,即完成灰度发布。
灰度发布数据为采用级联Key-Value,即哈希表(HASH MAP)方式进行数据存储。多租户级别的灰度发布数据如图4所示。其中,一级Key-Value中,Key为租户标识ID,Value为配置类型,如routes、upstreams、ssls、consumers等。每一个配置类型对应一组二级Key-Value,Key为配置对象ID,Value为该配置对象ID对应的配置数据。灰度发布以及停用等行为,都会影响该表数据的变动。
以伪代码方式示范,如,保存一个具体配置数据:
gray_hash_map[{SAAS_ID}][{Config_Type}][{Config_ID}]={Config_Data}
查询某一具体配置类型的列表:
var config_list=gray_hash_map[{SAAS_ID}][{Config_Type}]
查询当前SAAS用户所有灰度请求灰度发布数据:
var config_hash_map=gray_hash_map[{SAAS_ID}]
微服务网关为多进程模型,通常有一个进程接收到推送的灰度配置信息,对接收到的灰度配置信息进行有效性校验,通过校验后,则通过多进程之间事件广播机制通知所有进程,每一个进程都需要处理相同的灰度配置信息,每一个进程处理灰度配置信息的机制都是完全一致的。
对于每一个进程来说,以灰度发布为例,如图5所示,在共享内存中的灰度发布数据中,查询是否存在灰度配置信息中的配置对象ID,如判断结果为存在,则根据配置数据,更新配置对象对应的灰度发布数据;如判断结果为不存在,则将配置对象以及配置数据的对应关系存入灰度发布数据。
例如,灰度配置信息中的配置对象为SAAS_ID 1/upstreams/Config_ID 2,在共享内存中的灰度发布数据级联表中进行查询,发现SAAS_ID1/upstreams/Config_ID 2已存在,则将其对应的Value值更新为接收的灰度配置信息中的配置数据。
如在共享内存中的灰度发布数据级联表中进行查询,发现SAAS_ID1/upstreams/Config_ID 2不存在,则将Config_ID 2作为Key,配置数据作为Value存入SAAS_ID 1/upstreams对应的Key-Value表中。
随后更新灰度发布数据中的版本数据,灰度发布数据中包括主分支数据和次分支数据,其中,主分支数据为当前生效的灰度发布的版本数据,即更新灰度发布数据中的主分支数据,然后其中一个进程,将更新后的灰度发布数据存储到共享内存中。
对于每一个进程来说,以灰度发布停用为例,如图6所示,在共享内存中的灰度发布数据中,查询是否存在灰度配置信息中的配置对象ID,如不存在,则表示为无效操作,流程结束;如存在,则进一步判断在灰度发布数据的主分支数据中是否存在灰度配置信息中的配置对象ID,如主分支数据中不存在该配置对象ID,则在灰度发布数据中,将该配置对象ID及其对应的Value值,即配置数据均删除。如在主分支数据中存在该配置对象ID,则需还原主分支数据中的数据,以避免服务的中断。
随后更新灰度发布数据中的版本数据,然后其中一个进程,将更新后的灰度发布数据存储到共享内存中。
同样为灰度发布的停用流程,如以SAAS为单位做停用操作,在URI路径层面具体到{SAAS_ID}/{Config_Type}即可。在灰度配置数据经验成功后,在共享内存中的灰度发布数据级联表中,获取{SAAS_ID}/{Config_Type}下的所有具体{Config_ID}列表,随后将通过多进程之间事件广播机制通知所有进程,每一个进程的处理流程与图6中一个进程的处理流程相同。
如停用一个SAAS所有的灰度发布,首先获取{SAAS_ID}下所隶属的所有{Config_Type}列表,然后循环获取每一个{Config_Type}列表下的所有具体{Config_ID}列表,最终获取{SAAS_ID}下所有{Config_ID}列表,随后将通过多进程之间事件广播机制通知所有进程,每一个进程的处理流程与图6中一个进程的处理流程相同。
在一个例子中,共享内存中还包括主分支数据,其中,主分支数据为当前生效的灰度发布数据的版本数据,则:当灰度配置信息在待灰度的网关服务节点中生效时,将更新后的灰度发布数据合并到主分支数据中。
针对一个具体的HTTP API灰度发布请求的配置数据,在网关微服务线上的每一个具体的网关服务节点的共享内存中,只能存在一份灰度发布数据。该记录需要应对任何时间的全量发布和灰度发布等行为带来的配置信息的变更,关于两者写作的问题,本说明书的实施方式中,采用了svn/git等代码版本控制思路,把一个灰度发布请求的配置信息等同于一个文件,该文件可同时存在全量发布分支、灰度发布等分支中,并按需并行随时变更调整,把内存中实际生效的版本等同于master主分支。针对一个具体的灰度发布请求,无论是全量发布还是灰度发布,无论哪一方在何时变动时,都会合并到共享内存的主分支中并生效。
在网关服务节点启动时,需要初始化已有全量发布的配置数据,这时需要拉取存储在KV数据库(比如ETCD、Consul等)中的全量发布的配置数据并应用到共享内存中生效。在网关服务节点运行过程中,提供灰度发布HTTP API实现配置数据的灰度发布功能,并维护灰度发布状态数据。灰度发布HTTP API每一次变更操作(比如:DELETE、PUT等方法的调用),都会触发灰度发布数据合并到共享内存的配置主分支数据中。
需要说明的是,在全量发布分支和灰度发布分支这两个分支中,谁先提交变动谁先生效,但以全量发布分支为主。新增和修改等灰度发布数据会自动合并到共享内存的主分支中,全量发布分支删除/下线已有请求规则配置数据,会从共享内存中彻底清理掉,但停用灰度发布时,需要特殊处理:首先,从共享内存中清理灰度发布的配置数据,然后,需还原主分支中的全量发布的配置数据,保证停止灰度不会影响到已有全量发布的配置数据的正常运行。
可以理解,待灰度的网关服务节点为根据用户需求确定的进行灰度发布的网关服务节点,该方式支持完全SAAS化的灰度发布支持,资源隔离明晰,可以有效提升运维效率。另外,灰度发布的配置数据在指定的网关服务节点上实时生效,拒绝了由于人为误操作而带来的安全事故隐患。
本说明书的第三实施方式涉及一种灰度发布方法,应用于终端,如图7所示,包括:
S701:获取灰度配置信息以及灰度发布策略;
S702:根据灰度配置信息以及灰度发布策略,生成灰度发布请求;
S703:将灰度发布请求发送至网关后台管理平台,以触发网关后台管理平台根据灰度发布请求对网关服务节点进行灰度发布。
对于终端来说,网关后台管理平台可以提供UI界面给用户终端,用户可以在UI界面输入灰度配置信息以及选取灰度发布策略。灰度配置信息以及灰度发布策略在本说明书第一实施方式中已有描述,此处不再赘述。
随后,终端根据灰度配置信息以及灰度发布策略,生成灰度发布请求,因此,灰度发布请求包括灰度配置信息以及灰度发布策略。
终端将灰度发布请求发送至网关后台管理平台,网关后台管理平台获取该灰度发布请求后,即可根据灰度发布请求实现对网关服务节点进行灰度发布。
可以理解,由于网关后台管理平台可以实现针对用户指定的网关服务节点进行配置数据的生效,即可以实现针对API网关的灰度发布,因此,不同于现有技术中针对API网关的配置数据仅能全量发布,终端可以获取灰度配置信息以及灰度发布策略,继而生成灰度发布请求发送至网关后台管理平台,后续可以根据灰度发布策略确定待灰度的网关服务节点,最终实现针对用户指定的部分网关服务节点的配置数据生效。另外,用户在网关后台管理平台提供在用户终端的UI上,可选择多种不同类型的请求规则配置数据进行灰度发布,不仅仅局限在现有技术中的路由规则。
本说明书的第四实施方式涉及一种灰度发布装置800,如图8所示,包含:灰度发布请求获取单元801、待灰度网关服务节点确定单元802以及灰度配置信息发送单元803,各模块功能详细说明如下:
灰度发布请求获取单元801,用于获取灰度发布请求,灰度发布请求包括灰度配置信息以及灰度发布策略;
待灰度网关服务节点确定单元802,用于根据灰度发布策略,确定待灰度的网关服务节点;
灰度配置信息发送单元803,用于将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。
进一步地,本发明实施方式提供的灰度发布装置800中,灰度配置信息发送单元803包括:
第一判断子单元,用于判断所管理的网关服务节点中是否存在已灰度的网关服务节点;
灰度操作撤销单元,用于如判断结果为存在,则撤销已灰度的网关服务节点的灰度操作,撤销成功后将灰度配置信息发送到待灰度的网关服务节点;
灰度配置信息发送子单元,用于如判断结果为不存在,则将灰度配置信息发送到待灰度的网关服务节点。
利用本实施例的装置在进行灰度发布时,网关后台管理平台获取终端发送的灰度发布请求,其中,灰度发布请求包括灰度配置信息以及灰度发布策略,根据灰度发布策略,可以确定本次灰度发布中待灰度的网关服务节点,将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。由此使得,灰度发布的网关配置规则可以在用户指定的网关服务节点上实时生效,从而避免了由于重要配置项数据填写有误导致的所有暴露的HTTP API无法正常访问的风险,能够保证微服务系统更新迭代时的稳定性,同时有效提高微服务网关中灰度发布的效率。
本说明书的第五实施方式涉及一种灰度发布装置900,如图9所示,包含:灰度配置信息接收单元901以及灰度发布数据更新单元902,各模块功能详细说明如下:
灰度配置信息接收单元901,用于接收网关后台管理平台发送的灰度配置信息,灰度配置信息由网关后台管理平台根据灰度发送策略确定出待灰度的网关服务节点后发送;
灰度发布数据更新单元902,用于根据灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,以使灰度配置信息在本网关服务节点中生效。
进一步地,本发明实施方式提供的灰度发布装置900中,灰度配置信息包括配置对象及配置数据,灰度发布数据更新单元902包括:
第二判断子单元,用于判断在灰度发布数据中,是否存在配置对象;
灰度发布数据更新子单元,用于如判断结果为存在,则根据配置数据,更新配置对象对应的灰度发布数据;
灰度发布数据存储子单元,用于如判断结果为不存在,则将配置对象以及配置数据的对应关系存入灰度发布数据。
进一步地,本发明实施方式提供的灰度发布装置900中,共享内存中还包括主分支数据,其中,主分支数据为当前生效的灰度发布数据的版本数据,灰度发布装置900还包括:
合并单元,用于当灰度配置信息在待灰度的网关服务节点中生效时,将更新后的灰度发布数据合并到主分支数据中。
可以理解,待灰度的网关服务节点为根据用户需求确定的进行灰度发布的网关服务节点,该方式支持完全SAAS化的灰度发布支持,资源隔离明晰,可以有效提升运维效率。另外,灰度发布的配置数据在指定的网关服务节点上实时生效,拒绝了由于人为误操作而带来的安全事故隐患。
本说明书的第六实施方式涉及一种灰度发布装置1000,如图10所示,包含:数据获取单元1001、灰度发布请求生成单元1002以及灰度发布请求发送单元1003,各模块功能详细说明如下:
数据获取单元1001,用于获取灰度配置信息以及灰度发布策略;
灰度发布请求生成单元1002,根据灰度配置信息以及灰度发布策略,生成灰度发布请求;
灰度发布请求发送单元1003,用于将灰度发布请求发送至网关后台管理平台,以触发网关后台管理平台根据灰度发布请求对网关服务节点进行灰度发布。
可以理解,由于网关后台管理平台可以实现针对用户指定的网关服务节点进行配置数据的生效,即可以实现针对API网关的灰度发布,因此,不同于现有技术中针对API网关的配置数据仅能全量发布,终端可以获取灰度配置信息以及灰度发布策略,继而生成灰度发布请求发送至网关后台管理平台,后续可以根据灰度发布策略确定待灰度的网关服务节点,最终实现针对用户指定的部分网关服务节点的配置数据生效。另外,用户在网关后台管理平台提供在用户终端的UI上,可选择多种不同类型的请求规则配置数据进行灰度发布,不仅仅局限在现有技术中的路由规则。值得一提的是,本说明书的实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,以上实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明以上实施方式中不存在其它的单元。
本说明书的第七实施方式涉及一种电子设备,如图11所示。在硬件层面,电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponentInterconnect,外设部件互连标准)总线或EISA(Extended IndustryStandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成灰度发布装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
获取灰度发布请求,灰度发布请求包括灰度配置信息以及灰度发布策略;
根据灰度发布策略,确定待灰度的网关服务节点;
将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。
上述如本说明书的实施方式提供的一种灰度发布方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行一种灰度发布方法,并具体用于执行:
获取灰度发布请求,灰度发布请求包括灰度配置信息以及灰度发布策略;
根据灰度发布策略,确定待灰度的网关服务节点;
将灰度配置信息发送到待灰度的网关服务节点,以使待灰度的网关服务节点完成对灰度配置信息的生效。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、装置、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。
Claims (11)
1.一种灰度发布方法,应用于网关后台管理平台,其特征在于,包括:
获取灰度发布请求,所述灰度发布请求包括灰度配置信息以及灰度发布策略;
根据所述灰度发布策略,确定待灰度的网关服务节点;
将所述灰度配置信息发送到所述待灰度的网关服务节点,以使所述待灰度的网关服务节点完成对所述灰度配置信息的生效。
2.根据权利要求1所述的方法,其特征在于,所述将所述灰度配置信息发送到所述待灰度的网关服务节点,包括:
判断所管理的网关服务节点中是否存在已灰度的网关服务节点;
如判断结果为存在,则撤销所述已灰度的网关服务节点的灰度操作,撤销成功后将所述灰度配置信息发送到所述待灰度的网关服务节点;
如判断结果为不存在,则将所述灰度配置信息发送到所述待灰度的网关服务节点。
3.一种灰度发布方法,应用于网关服务节点,其特征在于,包括:
接收网关后台管理平台发送的灰度配置信息,所述灰度配置信息由网关后台管理平台根据灰度发送策略确定出待灰度的网关服务节点后发送;
根据所述灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,以使所述灰度配置信息在本网关服务节点中生效。
4.根据权利要求3所述的方法,其特征在于,所述灰度配置信息包括配置对象及配置数据,所述根据所述灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,包括:
判断在所述灰度发布数据中,是否存在所述配置对象;
如判断结果为存在,则根据所述配置数据,更新所述配置对象对应的所述灰度发布数据;
如判断结果为不存在,则将所述配置对象以及所述配置数据的对应关系存入所述灰度发布数据。
5.根据权利要求3或4所述的方法,其特征在于,所述共享内存中还包括主分支数据,其中,所述主分支数据为当前生效的灰度发布数据的版本数据,所述方法还包括:
当所述灰度配置信息在本网关服务节点中生效时,将所述更新后的灰度发布数据合并到所述主分支数据中。
6.一种灰度发布方法,应用于终端,其特征在于,包括:
获取灰度配置信息以及灰度发布策略;
根据所述灰度配置信息以及所述灰度发布策略,生成灰度发布请求;
将所述灰度发布请求发送至网关后台管理平台,以触发所述网关后台管理平台根据所述灰度发布请求对网关服务节点进行灰度发布。
7.一种灰度发布装置,其特征在于,包括:
灰度发布请求获取单元,用于获取灰度发布请求,所述灰度发布请求包括灰度配置信息以及灰度发布策略;
待灰度网关服务节点确定单元,用于根据所述灰度发布策略,确定待灰度的网关服务节点;
灰度配置信息发送单元,用于将所述灰度配置信息发送到所述待灰度的网关服务节点,以使所述待灰度的网关服务节点完成对所述灰度配置信息的生效。
8.一种灰度发布装置,其特征在于,包括:
灰度配置信息接收单元,用于接收网关后台管理平台发送的灰度配置信息,所述灰度配置信息由网关后台管理平台根据灰度发送策略确定出待灰度的网关服务节点后发送;
灰度发布数据更新单元,用于根据所述灰度配置信息,更新存储于本网关服务节点的共享内存中的灰度发布数据,以使所述灰度配置信息在本网关服务节点中生效。
9.一种灰度发布装置,其特征在于,包括:
数据获取单元,用于获取灰度配置信息以及灰度发布策略;
灰度发布请求生成单元,根据所述灰度配置信息以及所述灰度发布策略,生成灰度发布请求;
灰度发布请求发送单元,用于将所述灰度发布请求发送至网关后台管理平台,以触发所述网关后台管理平台根据所述灰度发布请求对网关服务节点进行灰度发布。
10.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110455717.5A CN113242281A (zh) | 2021-04-26 | 2021-04-26 | 一种灰度发布方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110455717.5A CN113242281A (zh) | 2021-04-26 | 2021-04-26 | 一种灰度发布方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113242281A true CN113242281A (zh) | 2021-08-10 |
Family
ID=77129345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110455717.5A Pending CN113242281A (zh) | 2021-04-26 | 2021-04-26 | 一种灰度发布方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113242281A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726871A (zh) * | 2021-08-27 | 2021-11-30 | 猪八戒股份有限公司 | 一种自动化代码发布的调度方法及系统 |
CN114265607A (zh) * | 2022-03-03 | 2022-04-01 | 杭州朗澈科技有限公司 | 一种灰度发布方法、系统、电子设备和存储介质 |
CN114594999A (zh) * | 2022-01-28 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 发布文件的方法、装置、存储介质及系统 |
CN114785861A (zh) * | 2022-06-22 | 2022-07-22 | 飞狐信息技术(天津)有限公司 | 一种服务请求转发系统、方法、计算机设备和存储介质 |
CN115185582A (zh) * | 2022-09-15 | 2022-10-14 | 畅捷通信息技术股份有限公司 | 一种用于多租户的灰度发布方法、装置及存储介质 |
CN117714459A (zh) * | 2023-12-28 | 2024-03-15 | 北京领雁科技股份有限公司 | 一种动态灰度服务发布系统、方法、设备及计算机介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104966206A (zh) * | 2015-05-12 | 2015-10-07 | 百度在线网络技术(北京)有限公司 | 对移动应用进行灰度发布的方法、装置和系统 |
CN105978976A (zh) * | 2016-05-13 | 2016-09-28 | 中国建设银行股份有限公司 | 信息处理系统及方法 |
CN109871224A (zh) * | 2019-02-13 | 2019-06-11 | 北京炎黄新星网络科技有限公司 | 一种基于用户标识的灰度发布方法、系统、介质及设备 |
CN111181858A (zh) * | 2019-12-24 | 2020-05-19 | 浙江大华技术股份有限公司 | 灰度发布的方法、系统、计算机设备和存储介质 |
CN111209032A (zh) * | 2020-01-06 | 2020-05-29 | 中国银联股份有限公司 | 灰度发布方法、配置中心服务器、用户终端、系统及介质 |
CN111586095A (zh) * | 2020-03-26 | 2020-08-25 | 中国平安财产保险股份有限公司 | 基于微服务灰度发布方法、装置、计算机设备及存储介质 |
CN111988416A (zh) * | 2020-08-27 | 2020-11-24 | 广州市百果园信息技术有限公司 | 一种灰度发布方法、装置、设备及介质 |
CN112073320A (zh) * | 2020-11-12 | 2020-12-11 | 深圳壹账通智能科技有限公司 | 基于云网关的api灰度发布方法、装置及计算机设备 |
-
2021
- 2021-04-26 CN CN202110455717.5A patent/CN113242281A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104966206A (zh) * | 2015-05-12 | 2015-10-07 | 百度在线网络技术(北京)有限公司 | 对移动应用进行灰度发布的方法、装置和系统 |
CN105978976A (zh) * | 2016-05-13 | 2016-09-28 | 中国建设银行股份有限公司 | 信息处理系统及方法 |
CN109871224A (zh) * | 2019-02-13 | 2019-06-11 | 北京炎黄新星网络科技有限公司 | 一种基于用户标识的灰度发布方法、系统、介质及设备 |
CN111181858A (zh) * | 2019-12-24 | 2020-05-19 | 浙江大华技术股份有限公司 | 灰度发布的方法、系统、计算机设备和存储介质 |
CN111209032A (zh) * | 2020-01-06 | 2020-05-29 | 中国银联股份有限公司 | 灰度发布方法、配置中心服务器、用户终端、系统及介质 |
CN111586095A (zh) * | 2020-03-26 | 2020-08-25 | 中国平安财产保险股份有限公司 | 基于微服务灰度发布方法、装置、计算机设备及存储介质 |
CN111988416A (zh) * | 2020-08-27 | 2020-11-24 | 广州市百果园信息技术有限公司 | 一种灰度发布方法、装置、设备及介质 |
CN112073320A (zh) * | 2020-11-12 | 2020-12-11 | 深圳壹账通智能科技有限公司 | 基于云网关的api灰度发布方法、装置及计算机设备 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726871A (zh) * | 2021-08-27 | 2021-11-30 | 猪八戒股份有限公司 | 一种自动化代码发布的调度方法及系统 |
CN113726871B (zh) * | 2021-08-27 | 2024-02-02 | 猪八戒股份有限公司 | 一种自动化代码发布的调度方法及系统 |
CN114594999A (zh) * | 2022-01-28 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 发布文件的方法、装置、存储介质及系统 |
CN114594999B (zh) * | 2022-01-28 | 2023-09-12 | 阿里巴巴(中国)有限公司 | 发布文件的方法、装置、存储介质及系统 |
CN114265607A (zh) * | 2022-03-03 | 2022-04-01 | 杭州朗澈科技有限公司 | 一种灰度发布方法、系统、电子设备和存储介质 |
CN114785861A (zh) * | 2022-06-22 | 2022-07-22 | 飞狐信息技术(天津)有限公司 | 一种服务请求转发系统、方法、计算机设备和存储介质 |
CN114785861B (zh) * | 2022-06-22 | 2022-12-13 | 飞狐信息技术(天津)有限公司 | 一种服务请求转发系统、方法、计算机设备和存储介质 |
CN115185582A (zh) * | 2022-09-15 | 2022-10-14 | 畅捷通信息技术股份有限公司 | 一种用于多租户的灰度发布方法、装置及存储介质 |
CN115185582B (zh) * | 2022-09-15 | 2022-11-18 | 畅捷通信息技术股份有限公司 | 一种用于多租户的灰度发布方法、装置及存储介质 |
CN117714459A (zh) * | 2023-12-28 | 2024-03-15 | 北京领雁科技股份有限公司 | 一种动态灰度服务发布系统、方法、设备及计算机介质 |
CN117714459B (zh) * | 2023-12-28 | 2024-06-07 | 北京领雁科技股份有限公司 | 一种动态灰度服务发布系统、方法、设备及计算机介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113242281A (zh) | 一种灰度发布方法、装置、设备及存储介质 | |
CN110222533B (zh) | 分布式数据安全应用方法、系统及电子设备 | |
CN108897628B (zh) | 一种分布式锁的实现方法、装置及电子设备 | |
CN106909411B (zh) | 一种文件更新方法及装置 | |
EP3480686B1 (en) | Data processing method, cluster manager, resource manager and data processing system | |
CN110825420A (zh) | 分布式集群的配置参数更新方法、装置、设备及存储介质 | |
CN111914194B (zh) | 一种业务系统变更方法、装置、电子设备及存储介质 | |
CN110673933A (zh) | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 | |
CN107026879A (zh) | 一种数据缓存方法及后台应用系统 | |
CN112733001A (zh) | 获取订阅信息的方法、装置和电子设备 | |
CN115017169A (zh) | 一种多云管理平台的管理方法及系统 | |
CN110807000B (zh) | 一种文件修复方法、装置、电子设备和存储介质 | |
CN113064732A (zh) | 一种分布式系统及其管理方法 | |
CN111522729A (zh) | 规则发布的确定方法、装置及系统 | |
CN110597794A (zh) | 数据处理方法、装置和电子设备 | |
CN112765188B (zh) | 配置信息处理方法、配置管理系统、电子设备及存储介质 | |
CN112132544B (zh) | 业务系统的巡检方法及装置 | |
CN110113187B (zh) | 一种配置更新方法、装置、配置服务器及配置系统 | |
CN116305218B (zh) | 一种数据链路追踪及数据更新方法、装置及数据管理系统 | |
CN115103322B (zh) | 订阅合并方法、装置、电子设备、存储介质及产品 | |
CN116455753B (zh) | 一种数据平滑方法及装置 | |
US20200004837A1 (en) | Front-end validation of data files requiring processing by multiple computing systems | |
CN115361390B (zh) | 用于加入区块链网络的方法、计算机存储介质及电子设备 | |
US10771586B1 (en) | Custom access controls | |
CN116088913B (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: 20210810 |
|
RJ01 | Rejection of invention patent application after publication |