# eureka-grayscal **Repository Path**: XinSuiNian/eureka-grayscal ## Basic Information - **Project Name**: eureka-grayscal - **Description**: eureka 灰度starter - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-09-29 - **Last Updated**: 2021-11-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 介绍 本组件是针对spring-cloud eureka做的灰度 当遇到以下场景时,可以考虑使用本starter插件 一、需要做不同环境灰度发布 二、开发过程本地启动项目,但是使用公司eureka(非自己本机启动的eureka)作为注册中心时 # 版本说明 本starter内部版本如下 | 组件 | 版本 | |---|---| | spring-boot | 2.3.2.RELEASE | | spring-cloud | Hoxton.SR9 | | spring-cloud-alibaba | 2.2.6.RELEASE | # 原理介绍 在前端发起请求时,需要再请求头中带有一个固定参数,同时在对应的eureka client端设置eureka 的metadata信息 利用eureka的metadata,在注册中心中找到对应的服务,从而进行服务调用 # 安装教程 ``` io.gitee.xinsuinian eureka-grayscale-spring-cloud-starter {version} ``` # 使用教程 ## 依赖添加 ``` io.gitee.xinsuinian eureka-grayscale-spring-cloud-starter {version} ``` ## 添加基础扫描 ``` @SpringBootApplication(scanBasePackages = {"com.lwq.eureka.*"}) ``` ## eureka client的配置 在需要灰度的eureka client 端增加如下配置信息 ``` eureka: instance: metadata-map: app-gray-name: test ``` 注意:metadata中 的app-gray-name 不可更改,因为后续会利用它作为请求头来实现灰度
注意:metadata中 的app-gray-name 不可更改,因为后续会利用它作为请求头来实现灰度
注意:metadata中 的app-gray-name 不可更改,因为后续会利用它作为请求头来实现灰度 ## 前端请求头添加 当前端发起请求时,需要再请求头中添加 app-gray-name,和eureka client中的value 值保持一直就好 如果没有和eureka client 中设置 app-gray-name对应的value相同的,那么会正常的路由 注意:请求头中的header 名称必须是app-gray-name,不可更改,否则后续可能找不到对应的路由
注意:请求头中的header 名称必须是app-gray-name,不可更改,否则后续可能找不到对应的路由
注意:请求头中的header 名称必须是app-gray-name,不可更改,否则后续可能找不到对应的路由