CN112073320B - 基于云网关的api灰度发布方法、装置及计算机设备 - Google Patents
基于云网关的api灰度发布方法、装置及计算机设备 Download PDFInfo
- Publication number
- CN112073320B CN112073320B CN202011259991.7A CN202011259991A CN112073320B CN 112073320 B CN112073320 B CN 112073320B CN 202011259991 A CN202011259991 A CN 202011259991A CN 112073320 B CN112073320 B CN 112073320B
- Authority
- CN
- China
- Prior art keywords
- gray
- strategy
- formal
- service
- route
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- 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
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了基于云网关的API灰度发布方法、装置、计算机设备及存储介质,涉及云传输技术,包括获取网关后台管理服务器发送的配置路由信息,解析得到正式版本服务参数和灰度版本服务参数;根据正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息;若用户反馈信息满足灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路由。该方法实现了对于请求可以经过灰度策略进行处理,在命中灰度策略时通过灰度策略来动态路由,对于未通过灰度策略的请求可以采用流量方式来控制动态路由,避免了新旧版本兼容风险及系统升级过程中宕机风险。
Description
技术领域
本发明涉及云传输的网关技术领域,尤其涉及一种基于云网关的API灰度发布方法、装置、计算机设备及存储介质。
背景技术
目前,云网关中可以接入不同的接口服务,在接入前需要在云网管管理平台配置一条API接口信息,包括:API基本参数、请求参数、服务参数和各种策略。然后,利用调试平台对新接入的接口服务进行调试,若该接口服务通过调试,则可以发布上线,否则重新进行配置与调试,直至调试通过可以发布。
对于使用上述接口服务的调用方而言,其可以根据云网关管理平台的API接口信息,编写业务逻辑和调用代码,并使用云网关颁发的相关授权信息进行调用。
实际应用中,在API接口信息发布上线之后,该接口服务不能随意更新升级,以保证接口服务的高可用。然而,在接口服务必须升级时,现有方式是:在升级之前通知相关受影响方,然后将现有服务全部停服,之后全部升级为新的服务算法并提供相应的服务。然而,采用上述升级方式升级接口服务时会存在一定风险,如新旧版本兼容风险,系统升级过程中宕机风险等等,均会影响到调用方式的正常使用,降低使用体验。
发明内容
本发明实施例提供了一种基于云网关的API灰度发布方法、装置、计算机设备及存储介质,旨在解决现有技术中API接口信息发布上线之后,该接口服务不能随意更新升级,若需升级则在升级之前通知相关受影响方,然后将现有服务全部停服,之后全部升级为新的服务算法并提供相应的服务,会导致新旧版本兼容风险,系统升级过程中宕机风险等的问题。
第一方面,本发明实施例提供了一种基于云网关的API灰度发布方法,其包括:
获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数;
将所述正式版本服务参数和灰度版本服务参数进行发布;
根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由;
若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件;以及
若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路由。
第二方面,本发明实施例提供了一种基于云网关的API灰度发布装置,其包括:
路由配置单元,用于获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数;
路由发布单元,将所述正式版本服务参数和灰度版本服务参数进行发布;
虚拟路由创建单元,用于根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由;
用户反馈信息判断单元,用于若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件;以及
路由切换单元,用于若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路由。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于云网关的API灰度发布方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于云网关的API灰度发布方法。
本发明实施例提供了一种基于云网关的API灰度发布方法、装置、计算机设备及存储介质,包括获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数;将所述正式版本服务参数和灰度版本服务参数进行发布;根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由;若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件;以及若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路由。该方法实现了对于一个请求可以经过灰度策略进行处理,在命中灰度策略时通过灰度策略来动态路由,对于未通过灰度策略的请求可以采用流量方式来控制动态路由,避免了新旧版本兼容风险及系统升级过程中宕机风险。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于云网关的API灰度发布方法的应用场景示意图;
图2为本发明实施例提供的基于云网关的API灰度发布方法的流程示意图;
图3为本发明实施例提供的基于云网关的API灰度发布装置的示意性框图;
图4为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和 “包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的基于云网关的API灰度发布方法的应用场景示意图;图2为本发明实施例提供的基于云网关的API灰度发布方法的流程示意图,该基于云网关的API灰度发布方法应用于服务器中,该方法通过安装于服务器中的应用软件进行执行。
如图2所示,该方法包括步骤S110~S150。
S110、获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数。
在本实施例中,为了更清楚的理解技术方案,下面对所涉及的终端进行详细介绍。本申请是在API云网关(其可以视为一个具有网关功能的服务器)的角度描述技术方案。
本申请中API云网关采用了虚拟路由的设计,具体如图1所示,其中:
API云网关可以分别与客户端、网关后台管理服务器和被代理服务对应的代理服务器进行通信,其中:
API云网关可以与网关后台管理服务器进行通信,获取网关后台管理服务器发送的配置信息,并根据配置信息发布正式路由和灰度路由。
API云网关可以与客户端(所在服务器)进行通信,获取客户端(所在服务器)所发送的API请求,执行本申请提供的灰度发布方法来选择相应的路由,并返回对应的数据。
API云网关可以和多个被代理服务对应的代理服务器(即接口服务)进行通信,包括需要升级的服务和无需升级的服务;可以根据API请求生成路由请求发送给对应的被代理服务对应的代理服务器,从而调用相应的正式服务或者灰度服务,返回对应的业务数据。其中,配置路由信息中包括的正式版本服务参数和灰度版本服务参数均包括API请求时长、API请求数据交互次数、URL地址等参数。
在一实施例中,所述步骤S110包括:
解析获取所述配置路由信息中的基础参数、请求参数、服务参数;
获取所述服务参数中包括的正式版本服务参数和灰度版本服务参数;其中,所述基础参数包括支持协议清单,所述请求参数包括签名字符串、签名密钥或时间戳。
其中,在API云网关的角度描述技术方案时,首先是获取云网关后管平台发送的配置路由信息,该配置路由信息包括:基础参数(如所支持的各类协议),请求参数(如签名字符串、签名密钥或时间戳等),服务参数(如接口服务器相关的信息)等。其中,正式服务器上部署已经提供服务的正式版本(旧版本)的服务,灰度服务器上部署升级的服务(新版本)。因此,正式版本服务参数配置正式服务器地址信息,灰度版本服务参数配置灰度服务器信息。上述配置路由信息可以由用户或者管理员在云网关后管平台进行操作生成。
S120、将所述正式版本服务参数和灰度版本服务参数进行发布;
在本实施例中,在相关信息和策略配置完毕后,API云网关可以直接发布正式路由和灰度路由。
可理解的是,本申请中可以随时部署新版本的接口服务,无需等到特定的时间段(例如每天凌晨0-2点)才发布升级服务,大大降低或者不再受到发布时间窗口的限制。
S130、根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由。
在本实施例中,在正式路由和灰度路由发布后,API云网关分别为接口服务创建两套虚拟路由,即正式虚拟路由和灰度虚拟路由。此场景下,同一个接口服务可以提供正式版本和灰度版本,使得服务升级过程无需停止服务,不会影响到调用方的正常使用,有利于提升使用体验。
在一实施例中,步骤S130之后还包括:
调用本地设置的灰度策略,判断所述灰度策略是否生效;
若所述灰度策略未生效,将灰度虚拟路由设置为无效状态,并将正式虚拟路由设置为有效状态;
若灰度策略已生效,将灰度虚拟路由和正式虚拟路由均设置为有效状态。
在本实施例中,在灰度策略未生效之前,灰度虚拟路由无效,而正式虚拟路由生效,这样可以保证客户端可以正常调用接口服务。
需要说明的是,API云路由可以支持丰富的灰度策略,为不同的接口服务绑定不同的灰度策略,使得灰度策略与实际业务的结合程度更高,更方便升级扩展等。
当用户或者管理员为灰度虚拟路由绑定灰度策略并启动灰度策略后,此时API云网关中的灰度虚拟路由开始生效,即正式虚拟路由和灰度虚拟路由同时生效。
可理解的是,在两个版本并行提供服务的情况下,可以在服务升级过程中及时发现新旧版本兼容的性能,有利于降低新旧版本不兼容带来的风险。或者说,在发现新旧版本不兼容时可以及时发现问题,缩短开发兼容版本的时间。另外,即使新版本宕机也可以及时切换到正常版本,保证正常使用。
在一实施例中,所述若灰度策略已生效,将灰度虚拟路由和正式虚拟路由均设置为有效状态的步骤之后,还包括:
通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求;
若满足灰度策略的请求,路由到灰度虚拟路由;
若未满足灰度策略的请求,路由到正式虚拟路由。
在本实施例中,对于同时生效的正式虚拟路由和灰度虚拟路由,API云网关基于灰度断言功能来选择路由分发请求。其中,灰度断言功能则是依据被代理服务对应的代理服务器的API接口的灰度策略来做判断,即:
若满足灰度策略的请求,直接路由到灰度路由版本;
即命中灰度策略的请求,直接路由到灰度路由版本,从而可以访问灰度服务器;
若未满足灰度策略的请求,直接路由到正式版本路由;
即未命中灰度策略的请求,直接路由到正式版本路由,访问正式服务器。灰度策略可以分为名单类型和流量类型。
在一实施例中,作为API云网关基于灰度断言功能来选择路由分发请求的第一实施例,所述通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求,包括:
获取名单类型的灰度策略;
接收客户端发送的HTTP请求;
解析获取所述HTTP请求中包括的机构号;
若所述机构号存在于所述名单类型的灰度策略中,判定满足灰度策略;
若所述机构号未存在于所述名单类型的灰度策略中,判定不满足灰度策略。
在本实施例中,名单类型的灰度策略与具体业务相关联,可以包括以下至少一种类型:应用名单、机构名单、ip名单和自定义名单。对于自定义名单,可以是白名单也可以是黑名单,还可以是黑名单与白名单形成的混合名单。
例如,白名单是一种允许访问灰度策略的名单,名单的含义主要跟业务字段相关,如:机构信息,ip信息等。
需要说明的是,在云网关后管平台,可以设置API的参数,该参数可以包含请求的路径path,请求头部数据header,请求队列query,请求体body,系统默认参数等信息。配置并发布成功后,在云网关上就注册了这个API的路由信息。当用户根据api的参数信息,发起一个http请求的时候,云网关就会命中该API。一旦命中,会根据api配置的参数验证请求。
API云网关会根据当前请求信息匹配各个名单,决定是否命中名单策略,从而决定走正式虚拟路由还是灰度虚拟路由。
假设,现有一个服务系统,可以为A、B、C三家客户提供服务。在使用过程中,客户A有一些定制化功能,开发根据需求评估,发现定制化功能的接口形式不影响原来接口,只需要在内部做一些处理即可。经过开发,定制化功能可以上线。但是为了不影响B和C的使用,为API设定一个灰度策略白名单,白名单的值为A的机构号(每一个客户机构号唯一),可以使用定制化接口,而B和C还是使用原接口。
在一实施例中,作为API云网关基于灰度断言功能来选择路由分发请求的第二实施例,所述通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求,包括:
获取流量类型的灰度策略;
接收客户端的API请求,对所述API请求随机分配一个随机数;
调用本地预设的百分比阈值;
判断所述随机数是否超出所述百分比阈值;
若所述随机数超出所述百分比阈值,判定不满足灰度策略;
若所述随机数未超出所述百分比阈值,判定满足灰度策略。
在本实施例中,流量类型的灰度策略适用于如下场景:如果无需区分过灰度版本的用户,可以为灰度虚拟路由配置一个百分比阈值((0-100]之间的整数)。在路由访问期间,API云网关会为该API请求生成一个随机数,并比较该API请求的随机数与设置的百分比阈值的大小,在大于百分比阈值时,决定路由到正式路由版本,在小于或者等于百分比阈值时,决定路由到灰度路由版本。
S140、若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件。
在本实施例中,即在升级的接口服务运行过程中,可以获取用户的使用反馈信息,或者业务数据,或者服务运动状态。
当升级的接口服务运行一段时间(超过预设时长)或者一定数量(超过预设数量值)之后,可以根据反馈信息,或者业务数据分析,或者服务运行状态分析,用户或者管理员可以根据分析结果来动态调整灰度策略。
在一实施例中,步骤S140中包括:
接收客户端发送的API接口算法准确率、接口响应平均时间,以组成用户反馈信息,若API接口算法准确率超出预设的准确率阈值且接口响应平均时间超出预设的响应时间阈值,判定用户反馈信息满足所述灰度服务调整条件。
需要说明的是,反馈信息是关于API接口本身,如算法是否准确,响应时间是否达到预期等等,可以根据API接口来设置。这些反馈信号可以来自用户体验反馈,业务数据分析,或者开发测试人员提出等方面,后台管理员根据这些反馈信息,调整灰度策略,并重新发布灰度。
S150、若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路。
在本实施例中,例如,反馈趋势趋好,可以提高灰度版本的命中率;当命中率已经很高(超过一定阈值)时,可以直接关闭灰度策略,并将灰度版本配置替换到正式版本上,并重新发布正式版本;如果趋势趋差,就降低灰度版本的命中率、或者重新调整灰度策略继续调试,或者停止升级。
该方法实现了对于一个请求可以经过灰度策略进行处理,在命中灰度策略时通过灰度策略来动态路由,对于未通过灰度策略的请求可以采用流量方式来控制动态路由,避免了新旧版本兼容风险及系统升级过程中宕机风险。
本发明实施例还提供一种基于云网关的API灰度发布装置,该基于云网关的API灰度发布装置用于执行前述基于云网关的API灰度发布方法的任一实施例。具体地,请参阅图3,图3是本发明实施例提供的基于云网关的API灰度发布装置的示意性框图。该基于云网关的API灰度发布装置100可以配置于服务器中。
如图3所示,基于云网关的API灰度发布装置100包括:路由配置单元110、路由发布单元120、虚拟路由创建单元130、用户反馈信息判断单元140、路由切换单元150。
路由配置单元110,用于获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数。
在本实施例中,为了更清楚的理解技术方案,下面对所涉及的终端进行详细介绍。本申请是在API云网关的角度描述技术方案。
本申请中API云网关采用了虚拟路由的设计,具体如图1所示,其中:
API云网关可以分别与客户端、网关后台管理服务器和被代理服务对应的代理服务器进行通信,其中:
API云网关可以与网关后台管理服务器进行通信,获取网关后台管理服务器发送的配置信息,并根据配置信息发布正式路由和灰度路由。
API云网关可以与客户端(所在服务器)进行通信,获取客户端(所在服务器)所发送的API请求,执行本申请提供的灰度发布方法来选择相应的路由,并返回对应的数据。
API云网关可以和多个被代理服务对应的代理服务器(即接口服务)进行通信,包括需要升级的服务和无需升级的服务;可以根据API请求生成路由请求发送给对应的被代理服务对应的代理服务器,从而调用相应的正式服务或者灰度服务,返回对应的业务数据。。其中,配置路由信息中包括的正式版本服务参数和灰度版本服务参数均包括API请求时长、API请求数据交互次数、URL地址等参数。
在一实施例中,路由配置单元110包括:
配置信息解析单元,用于解析获取所述配置路由信息中的基础参数、请求参数、服务参数;
服务子参数获取单元,用于获取所述服务参数中包括的正式版本服务参数和灰度版本服务参数;其中,所述基础参数包括支持协议清单,所述请求参数包括签名字符串、签名密钥或时间戳。
其中,在API云网关的角度描述技术方案时,首先是获取云网关后管平台发送的配置路由信息,该配置路由信息包括:基础参数(如所支持的各类协议),请求参数(如签名字符串、签名密钥或时间戳等),服务参数(如接口服务器相关的信息)等。其中,正式服务器上部署已经提供服务的正式版本(旧版本)的服务,灰度服务器上部署升级的服务(新版本)。因此,正式版本服务参数配置正式服务器地址信息,灰度版本服务参数配置灰度服务器信息。上述配置路由信息可以由用户或者管理员在云网关后管平台进行操作生成。
路由发布单元120,用于将所述正式版本服务参数和灰度版本服务参数进行发布;
在本实施例中,在相关信息和策略配置完毕后,API云网关可以直接发布正式路由和灰度路由。
可理解的是,本申请中可以随时部署新版本的接口服务,无需等到特定的时间段(例如每天凌晨0-2点)才发布升级服务,大大降低或者不再受到发布时间窗口的限制。
虚拟路由创建单元130,用于根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由。
在本实施例中,在正式路由和灰度路由发布后,API云网关分别为接口服务创建两套虚拟路由,即正式虚拟路由和灰度虚拟路由。此场景下,同一个接口服务可以提供正式版本和灰度版本,使得服务升级过程无需停止服务,不会影响到调用方的正常使用,有利于提升使用体验。
在一实施例中,基于云网关的API灰度发布装置100还包括:
灰度策略生效判断单元,用于调用本地设置的灰度策略,判断所述灰度策略是否生效;
第一设置单元,用于若所述灰度策略未生效,将灰度虚拟路由设置为无效状态,并将正式虚拟路由设置为有效状态;
第二设置单元,用于若灰度策略已生效,将灰度虚拟路由和正式虚拟路由均设置为有效状态。
在本实施例中,在灰度策略未生效之前,灰度虚拟路由无效,而正式虚拟路由生效,这样可以保证客户端可以正常调用接口服务。
需要说明的是,API云路由可以支持丰富的灰度策略,为不同的接口服务绑定不同的灰度策略,使得灰度策略与实际业务的结合程度更高,更方便升级扩展等。
当用户或者管理员为灰度虚拟路由绑定灰度策略并启动灰度策略后,此时API云网关中的灰度虚拟路由开始生效,即正式虚拟路由和灰度虚拟路由同时生效。
可理解的是,在两个版本并行提供服务的情况下,可以在服务升级过程中及时发现新旧版本兼容的性能,有利于降低新旧版本不兼容带来的风险。或者说,在发现新旧版本不兼容时可以及时发现问题,缩短开发兼容版本的时间。另外,即使新版本宕机也可以及时切换到正常版本,保证正常使用。
在一实施例中,基于云网关的API灰度发布装置100,还包括:
灰度断言单元,用于通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求;
第一路由切换控制单元,用于若满足灰度策略的请求,路由到灰度虚拟路由;
第二路由切换控制单元,用于若未满足灰度策略的请求,路由到正式虚拟路由。
在本实施例中,对于同时生效的正式虚拟路由和灰度虚拟路由,API云网关基于灰度断言功能来选择路由分发请求。其中,灰度断言功能则是依据被代理服务对应的代理服务器的API接口的灰度策略来做判断,即:
若满足灰度策略的请求,直接路由到灰度路由版本;
即命中灰度策略的请求,直接路由到灰度路由版本,从而可以访问灰度服务器;
若未满足灰度策略的请求,直接路由到正式版本路由;
即未命中灰度策略的请求,直接路由到正式版本路由,访问正式服务器。灰度策略可以分为名单类型和流量类型。
在一实施例中,作为API云网关基于灰度断言功能来选择路由分发请求的第一实施例,所述灰度断言单元,包括:
第一灰度策略获取单元,用于获取名单类型的灰度策略;
HTTP请求接收单元,用于接收客户端发送的HTTP请求;
机构号获取单元,用于解析获取所述HTTP请求中包括的机构号;
第一判定单元,用于若所述机构号存在于所述名单类型的灰度策略中,判定满足灰度策略;
第二判定单元,用于若所述机构号未存在于所述名单类型的灰度策略中,判定不满足灰度策略。
在本实施例中,名单类型的灰度策略与具体业务相关联,可以包括以下至少一种类型:应用名单、机构名单、ip名单和自定义名单。对于自定义名单,可以是白名单也可以是黑名单,还可以是黑名单与白名单形成的混合名单。
例如,白名单是一种允许访问灰度策略的名单,名单的含义主要跟业务字段相关,如:机构信息,ip信息等。
需要说明的是,在云网关后管平台,可以设置API的参数,该参数可以包含请求的路径path,请求头部数据header,请求队列query,请求体body,系统默认参数等信息。配置并发布成功后,在云网关上就注册了这个API的路由信息。当用户根据api的参数信息,发起一个http请求的时候,云网关就会命中该API。一旦命中,会根据api配置的参数验证请求。
API云网关会根据当前请求信息匹配各个名单,决定是否命中名单策略,从而决定走正式虚拟路由还是灰度虚拟路由。
假设,现有一个服务系统,可以为A、B、C三家客户提供服务。在使用过程中,客户A有一些定制化功能,开发根据需求评估,发现定制化功能的接口形式不影响原来接口,只需要在内部做一些处理即可。经过开发,定制化功能可以上线。但是为了不影响B和C的使用,为API设定一个灰度策略白名单,白名单的值为A的机构号(每一个客户机构号唯一),可以使用定制化接口,而B和C还是使用原接口。
在一实施例中,作为API云网关基于灰度断言功能来选择路由分发请求的第二实施例,所述灰度断言单元,包括:
第二灰度策略获取单元,用于获取流量类型的灰度策略;
随机数分配单元,用于接收客户端的API请求,对所述API请求随机分配一个随机数;
百分比阈值获取单元,用于调用本地预设的百分比阈值;
随机数判断单元,用于判断所述随机数是否超出所述百分比阈值;
第三判定单元,用于若所述随机数超出所述百分比阈值,判定不满足灰度策略;
第四判定单元,用于若所述随机数未超出所述百分比阈值,判定满足灰度策略。
在本实施例中,流量类型的灰度策略适用于如下场景:如果无需区分过灰度版本的用户,可以为灰度虚拟路由配置一个百分比阈值((0-100]之间的整数)。在路由访问期间,API云网关会为该API请求生成一个随机数,并比较该API请求的随机数与设置的百分比阈值的大小,在大于百分比阈值时,决定路由到正式路由版本,在小于或者等于百分比阈值时,决定路由到灰度路由版本。
用户反馈信息判断单元140,用于若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件。
在本实施例中,即在升级的接口服务运行过程中,可以获取用户的使用反馈信息,或者业务数据,或者服务运动状态。
当升级的接口服务运行一段时间(超过预设时长)或者一定数量(超过预设数量值)之后,可以根据反馈信息,或者业务数据分析,或者服务运行状态分析,用户或者管理员可以根据分析结果来动态调整灰度策略。
在一实施例中,用户反馈信息判断单元140还用于:
接收客户端发送的API接口算法准确率、接口响应平均时间,以组成用户反馈信息,若API接口算法准确率超出预设的准确率阈值且接口响应平均时间超出预设的响应时间阈值,判定用户反馈信息满足所述灰度服务调整条件。
需要说明的是,反馈信息是关于API接口本身,如算法是否准确,响应时间是否达到预期等等,可以根据API接口来设置。这些反馈信号可以来自用户体验反馈,业务数据分析,或者开发测试人员提出等方面,后台管理员根据这些反馈信息,调整灰度策略,并重新发布灰度。
路由切换单元150,用于若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路。
在本实施例中,例如,反馈趋势趋好,可以提高灰度版本的命中率;当命中率已经很高(超过一定阈值)时,可以直接关闭灰度策略,并将灰度版本配置替换到正式版本上,并重新发布正式版本;如果趋势趋差,就降低灰度版本的命中率、或者重新调整灰度策略继续调试,或者停止升级。
该装置实现了对于一个请求可以经过灰度策略进行处理,在命中灰度策略时通过灰度策略来动态路由,对于未通过灰度策略的请求可以采用流量方式来控制动态路由,避免了新旧版本兼容风险及系统升级过程中宕机风险。
上述基于云网关的API灰度发布装置可以实现为计算机程序的形式,该计算机程序可以在如图4所示的计算机设备上运行。
请参阅图4,图4是本发明实施例提供的计算机设备的示意性框图。该计算机设备500是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图4,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行基于云网关的API灰度发布方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行基于云网关的API灰度发布方法。
该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现本发明实施例公开的基于云网关的API灰度发布方法。
本领域技术人员可以理解,图4中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图4所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器502可以是中央处理单元 (CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路 (Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本发明实施例公开的基于云网关的API灰度发布方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 ( 可以是个人计算机,服务器,或者网络设备等 ) 执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U 盘、移动硬盘、只读存储器 (ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种基于云网关的API灰度发布方法,其特征在于,包括:
获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数;
将所述正式版本服务参数和灰度版本服务参数进行发布;
根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由;
若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件;以及
若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路由;
所述根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由之后,还包括:
调用本地设置的灰度策略,判断所述灰度策略是否生效;
若所述灰度策略未生效,将灰度虚拟路由设置为无效状态,并将正式虚拟路由设置为有效状态;
若灰度策略已生效,将灰度虚拟路由和正式虚拟路由均设置为有效状态;
所述若灰度策略已生效,将灰度虚拟路由和正式虚拟路由均设置为有效状态之后,还包括:
通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求;
若满足灰度策略的请求,路由到灰度虚拟路由;
若未满足灰度策略的请求,路由到正式虚拟路由;
其中,所述灰度策略为名单类型的灰度策略或者流量类型的灰度策略;所述名单类型的灰度策略包括以下至少一种类型:应用名单、机构名单、ip名单和自定义名单。
2.根据权利要求1所述的基于云网关的API灰度发布方法,其特征在于,所述对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数,包括:
解析获取所述配置路由信息中的基础参数、请求参数、服务参数;
获取所述服务参数中包括的正式版本服务参数和灰度版本服务参数;其中,所述基础参数包括支持协议清单,所述请求参数包括签名字符串、签名密钥或时间戳。
3.根据权利要求1所述的基于云网关的API灰度发布方法,其特征在于,所述通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求,包括:
获取名单类型的灰度策略;
接收客户端发送的HTTP请求;
解析获取所述HTTP请求中包括的机构号;
若所述机构号存在于所述名单类型的灰度策略中,判定满足灰度策略;
若所述机构号未存在于所述名单类型的灰度策略中,判定不满足灰度策略。
4.根据权利要求1所述的基于云网关的API灰度发布方法,其特征在于,通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求,包括:
获取流量类型的灰度策略;
接收客户端的API请求,对所述API请求随机分配一个随机数;
调用本地预设的百分比阈值;
判断所述随机数是否超出所述百分比阈值;
若所述随机数超出所述百分比阈值,判定不满足灰度策略;
若所述随机数未超出所述百分比阈值,判定满足灰度策略。
5.根据权利要求1所述的基于云网关的API灰度发布方法,其特征在于,所述接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件,包括:
接收客户端发送的API接口算法准确率、接口响应平均时间,以组成用户反馈信息,若API接口算法准确率超出预设的准确率阈值且接口响应平均时间超出预设的响应时间阈值,判定用户反馈信息满足所述灰度服务调整条件。
6.一种基于云网关的API灰度发布装置,其特征在于,包括:
路由配置单元,用于获取网关后台管理服务器发送的配置路由信息,对所述配置路由信息进行解析得到正式版本服务参数和灰度版本服务参数;
路由发布单元,将所述正式版本服务参数和灰度版本服务参数进行发布;
虚拟路由创建单元,用于根据所述配置路由信息中包括的所述正式版本服务参数和灰度版本服务参数创建至少两个虚拟路由;其中,每一个虚拟路由中均包括灰度虚拟路由和正式虚拟路由;
用户反馈信息判断单元,用于若接口服务对应的累积时间超出预设的服务时间阈值,接收客户端发送的用户反馈信息,判断用户反馈信息是否满足预设的灰度服务调整条件;以及
路由切换单元,用于若用户反馈信息满足所述灰度服务调整条件,将灰度虚拟路由均切换至正式虚拟路由;
所述基于云网关的API灰度发布装置,还包括:
灰度策略生效判断单元,用于调用本地设置的灰度策略,判断所述灰度策略是否生效;
第一设置单元,用于若所述灰度策略未生效,将灰度虚拟路由设置为无效状态,并将正式虚拟路由设置为有效状态;
第二设置单元,用于若灰度策略已生效,将灰度虚拟路由和正式虚拟路由均设置为有效状态;
所述基于云网关的API灰度发布装置,还包括:
灰度断言单元,用于通过对灰度策略进行灰度断言,判断是否满足灰度策略的请求;
第一路由切换控制单元,用于若满足灰度策略的请求,路由到灰度虚拟路由;
第二路由切换控制单元,用于若未满足灰度策略的请求,路由到正式虚拟路由;
其中,所述灰度策略为名单类型的灰度策略或者流量类型的灰度策略;所述名单类型的灰度策略包括以下至少一种类型:应用名单、机构名单、ip名单和自定义名单。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的基于云网关的API灰度发布方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至5任一项所述的基于云网关的API灰度发布方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011259991.7A CN112073320B (zh) | 2020-11-12 | 2020-11-12 | 基于云网关的api灰度发布方法、装置及计算机设备 |
PCT/CN2021/125299 WO2022100393A1 (zh) | 2020-11-12 | 2021-10-21 | 基于云网关的api灰度发布方法、装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011259991.7A CN112073320B (zh) | 2020-11-12 | 2020-11-12 | 基于云网关的api灰度发布方法、装置及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112073320A CN112073320A (zh) | 2020-12-11 |
CN112073320B true CN112073320B (zh) | 2021-02-09 |
Family
ID=73655222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011259991.7A Active CN112073320B (zh) | 2020-11-12 | 2020-11-12 | 基于云网关的api灰度发布方法、装置及计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112073320B (zh) |
WO (1) | WO2022100393A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112073320B (zh) * | 2020-11-12 | 2021-02-09 | 深圳壹账通智能科技有限公司 | 基于云网关的api灰度发布方法、装置及计算机设备 |
CN112632032B (zh) * | 2020-12-18 | 2022-12-27 | 华人运通(上海)云计算科技有限公司 | 一种数据迁移方法、装置、存储介质及终端设备 |
CN112764765A (zh) * | 2021-01-21 | 2021-05-07 | 中信银行股份有限公司 | 一种应用灰度发布方法、系统及计算机可读存储介质 |
CN113242281A (zh) * | 2021-04-26 | 2021-08-10 | 微梦创科网络科技(中国)有限公司 | 一种灰度发布方法、装置、设备及存储介质 |
CN113518119B (zh) * | 2021-05-25 | 2023-05-02 | 深圳壹账通智能科技有限公司 | ABTest的服务分发方法、装置、设备及存储介质 |
CN113254063B (zh) * | 2021-06-30 | 2021-09-21 | 四川新网银行股份有限公司 | 一种灰度验证过滤器及过滤方法 |
CN113610637B (zh) * | 2021-08-12 | 2023-07-04 | 上海通联金融服务有限公司 | 灰度算法支持下的智能路由发布的方法 |
CN114265607B (zh) * | 2022-03-03 | 2022-06-28 | 杭州朗澈科技有限公司 | 一种灰度发布方法、系统、电子设备和存储介质 |
CN114422440B (zh) * | 2022-03-28 | 2022-07-12 | 北京沃丰时代数据科技有限公司 | 灰度发布方法、装置、电子设备及存储介质 |
CN114978999A (zh) * | 2022-03-31 | 2022-08-30 | 华润网络(深圳)有限公司 | 多维调度流量的方法、装置、计算机设备及存储介质 |
CN114579162B (zh) * | 2022-05-07 | 2022-08-23 | 杭州又拍云科技有限公司 | 一种基于事件驱动和水平触发的灰度发布方法 |
CN115174342B (zh) * | 2022-06-15 | 2024-03-08 | 阿里巴巴(中国)有限公司 | 网关的插件管理方法、装置及设备 |
CN115022398A (zh) * | 2022-07-14 | 2022-09-06 | 中国工商银行股份有限公司 | 基于api开放平台的接口调用方法及装置、电子设备 |
CN115378798B (zh) * | 2022-08-22 | 2024-02-13 | 中国联合网络通信集团有限公司 | 基于动态感知的多集群网关协同方法及系统 |
CN115499317B (zh) * | 2022-11-15 | 2023-04-07 | 阿里云计算有限公司 | 灰度验证方法、电子设备和可读存储介质 |
CN116132284B (zh) * | 2022-12-19 | 2023-09-08 | 江苏红网技术股份有限公司 | 一种服务接口在服务网格中实现灰度发布的方法及其系统 |
CN116016666A (zh) * | 2022-12-21 | 2023-04-25 | 中盈优创资讯科技有限公司 | 一种api发布的实现方法及装置 |
CN117714459B (zh) * | 2023-12-28 | 2024-06-07 | 北京领雁科技股份有限公司 | 一种动态灰度服务发布系统、方法、设备及计算机介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110062022A (zh) * | 2019-03-04 | 2019-07-26 | 山东浪潮通软信息科技有限公司 | 一种服务端灰度部署应用系统api更新的方法 |
CN111782260A (zh) * | 2020-06-29 | 2020-10-16 | 中国工商银行股份有限公司 | 灰度发布方法及灰度发布装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9858105B1 (en) * | 2015-11-24 | 2018-01-02 | Amazon Technologies, Inc. | Service for managing custom virtual machine images |
CN108319468B (zh) * | 2017-01-16 | 2021-10-15 | 北京京东尚科信息技术有限公司 | 灰度发布方法、装置、系统及电子设备 |
CN110874227B (zh) * | 2018-08-29 | 2024-07-16 | 京东科技控股股份有限公司 | 实现于api网关的灰度发布的分流方法、系统和电子设备 |
CN109376322A (zh) * | 2018-09-07 | 2019-02-22 | 平安科技(深圳)有限公司 | 一种灰度版本页面访问方法、装置、计算机设备及计算机存储介质 |
CN111488159A (zh) * | 2019-12-20 | 2020-08-04 | 杭州当虹科技股份有限公司 | 一种能够动态配置的灰度发布方法 |
CN111580846B (zh) * | 2020-05-15 | 2021-02-26 | 厦门靠谱云股份有限公司 | 一种基于混合框架的微服务灰度发布方法 |
CN112073320B (zh) * | 2020-11-12 | 2021-02-09 | 深圳壹账通智能科技有限公司 | 基于云网关的api灰度发布方法、装置及计算机设备 |
-
2020
- 2020-11-12 CN CN202011259991.7A patent/CN112073320B/zh active Active
-
2021
- 2021-10-21 WO PCT/CN2021/125299 patent/WO2022100393A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110062022A (zh) * | 2019-03-04 | 2019-07-26 | 山东浪潮通软信息科技有限公司 | 一种服务端灰度部署应用系统api更新的方法 |
CN111782260A (zh) * | 2020-06-29 | 2020-10-16 | 中国工商银行股份有限公司 | 灰度发布方法及灰度发布装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2022100393A1 (zh) | 2022-05-19 |
CN112073320A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073320B (zh) | 基于云网关的api灰度发布方法、装置及计算机设备 | |
US10530900B2 (en) | Scalable content delivery network request handling mechanism to support a request processing layer | |
CN107104814B (zh) | 软件升级方法和系统 | |
US9201644B2 (en) | Distributed update service | |
AU2005222887B2 (en) | Application programming interface for administering the distribution of software updates in an update distribution system | |
CN109040209A (zh) | 拦截重复请求的方法、装置、计算机设备及存储介质 | |
CN112035260B (zh) | 服务请求处理方法、装置、计算机设备及存储介质 | |
CN109586969A (zh) | 内容分发网络容灾方法、装置、计算机设备及存储介质 | |
CN111367662A (zh) | 一种负载均衡方法、装置及系统 | |
US11575689B2 (en) | System, method, and computer program product for dynamically configuring a virtual environment for identifying unwanted data | |
US7697423B2 (en) | Prevention of protocol imitation in peer-to-peer systems | |
CN106708539B (zh) | 一种客户端更新方法及装置 | |
US9342291B1 (en) | Distributed update service | |
CN102075367B (zh) | 控制补丁包下载的方法、系统、客户端及服务器 | |
US9729652B2 (en) | Dynamically affinitizing users to a version of a website | |
CN110365712A (zh) | 一种分布式拒绝服务攻击的防御方法及系统 | |
US20150277892A1 (en) | Multi-phase software delivery | |
CN114389882B (zh) | 网关流量控制方法、装置、计算机设备及存储介质 | |
CN106878311B (zh) | Http报文的重写方法及装置 | |
CN105763616B (zh) | 资源下载方法及装置 | |
US20230254334A1 (en) | Intelligent workflow for protecting servers from outside threats | |
US9851980B1 (en) | Distributed update service enabling update requests | |
CN114221965A (zh) | 访问区块链的方法、装置及电子设备 | |
Singanamalla et al. | Respect the ORIGIN! a best-case evaluation of connection coalescing in the wild | |
CN113014443B (zh) | 一种cdn资源是否命中缓存的测试方法及其系统 |
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 |