技术摘要:
本发明实施例公开了一种基于微服务灰度发布方法、装置、计算机设备及存储介质。所述方法包括:从注册中心获取最新的服务实例列表,其中,所述服务实例列表包括每个服务的灰度属性数据,所述最新的服务实例列表是由配置中心动态调整更新所述注册中心的服务实例列表得到 全部
背景技术:
在互联网时代,应用的更新迭代速度越来越快,更新的频率也越来越频繁。目前, 主流的应用更新方式是采用灰度发布,灰度发布包括A/B环境发布,A环境为正常生产环境, B环境是灰度环境(预演环境)。目前,现有的发布方式是新功能上线后先将新版本发布到B 环境,然后采用Nginx结合OpenResty的灰度发布方式进行灰度发布,但是该灰度发布方案 还需要结合脚本实现,然而脚本比较复杂不容易调试,对运维要求较高。
技术实现要素:
本发明实施例提供了一种基于微服务灰度发布方法、装置、计算机设备及存储介 质,旨在解决现有的灰度发布是通过脚本或配置文件来支持,操作繁琐复杂,灰度配置及运 维的成本较高的问题。 第一方面,本发明实施例提供了一种基于微服务灰度发布方法,其包括:从注册中 心获取最新的服务实例列表,其中,所述服务实例列表包括每个服务的灰度属性数据,所述 最新的服务实例列表是由配置中心动态调整更新所述注册中心的服务实例列表得到;接收 来自用户端的HTTP请求,根据所述灰度属性数据判断所述HTTP请求的服务是否为灰度服 务,其中,所述灰度属性数据是用于识别灰度服务的规则;若所述HTTP请求的服务为灰度服 务,根据负载均衡策略将所述HTTP请求的服务发送至对应的灰度服务地址;若所述HTTP请 求的服务不为灰度服务,根据负载均衡策略将所述HTTP请求发送至对应的正式服务地址。 第二方面,本发明实施例还提供了一种基于微服务灰度发布装置,其包括:获取单 元,用于从注册中心获取最新的服务实例列表,其中,所述服务实例列表包括每个服务的灰 度属性数据,所述最新的服务实例列表是由配置中心动态调整更新所述注册中心的服务实 例列表得到;判断单元,用于接收来自用户端的HTTP请求,根据所述灰度属性数据判断所述 HTTP请求的服务是否为灰度服务,其中,所述灰度属性数据是用于识别灰度服务的规则;第 一发送单元,用于若所述HTTP请求的服务为灰度服务,根据负载均衡策略将所述HTTP请求 的服务发送至对应的灰度服务地址;第二发送单元,用于若所述HTTP请求的服务不为灰度 服务,根据负载均衡策略将所述HTTP请求发送至对应的正式服务地址。 第三方面,本发明实施例还提供了一种计算机设备,其包括存储器及处理器,所述 存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。 第四方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质存储 有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上 述方法。 本发明实施例提供了一种基于微服务灰度发布方法、装置、计算机设备及存储介 4 CN 111586095 A 说 明 书 2/10 页 质。其中,所述方法包括:从注册中心获取最新的服务实例列表,其中,所述服务实例列表包 括每个服务的灰度属性数据,所述最新的服务实例列表是由配置中心动态调整更新所述注 册中心的服务实例列表得到;接收来自用户端的HTTP请求,根据所述灰度属性数据判断所 述HTTP请求的服务是否为灰度服务,其中,所述灰度属性数据是用于识别灰度服务的规则; 若所述HTTP请求的服务为灰度服务,根据负载均衡策略将所述HTTP请求的服务发送至对应 的灰度服务地址;若所述HTTP请求的服务不为灰度服务,根据负载均衡策略将所述HTTP请 求发送至对应的正式服务地址。本发明实施例由于从注册中心获取最新的服务实例列表, 该服务实例列表中包括每个服务的灰度属性数据,根据灰度属性数据判断用户端的HTTP请 求是否为灰度服务,若是则根据负载均衡策略将该HTTP请求发送至灰度服务地址,可实现 实现动态的灰度策略调整,隔离不同版本的服务,互不影响,提高灰度发布的便捷性、灵活 性,方便运维。 附图说明 为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的 附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普 通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 图1为本发明实施例提供的基于微服务灰度发布方法的流程示意图; 图2为本发明实施例提供的基于微服务灰度发布方法的子流程示意图; 图3为本发明实施例提供的基于微服务灰度发布方法的子流程示意图; 图4为本发明实施例提供的基于微服务灰度发布方法的子流程示意图; 图5为本发明另一实施例提供的基于微服务灰度发布方法的流程示意图; 图6为本发明实施例提供的基于微服务灰度发布装置的示意性框图; 图7为本发明实施例提供的基于微服务灰度发布装置的具体单元的示意性框图; 图8为本发明实施例提供的基于微服务灰度发布装置的判断单元的示意性框图; 图9为本发明另一实施例提供的基于微服务灰度发布装置的示意性框图;以及 图10为本发明实施例提供的计算机设备的示意性框图。