Commit d35103ae by Nepxion

修改介绍

parent 7cdaa926
......@@ -5,38 +5,35 @@
[![Build Status](https://travis-ci.org/Nepxion/Discovery.svg?branch=master)](https://travis-ci.org/Nepxion/Discovery)
Nepxion Discovery是一款对Spring Cloud Discovery的服务注册增强插件,支持Eureka、Consul和Zookeeper。现有的Spring Cloud微服务可以方便引入该插件,使用者不需要对业务代码做任何修改,只需要做三个非常容易的事情
1. 引入Plugin Starter依赖到pom.xml
2. 为微服务定义一个版本号在application.properties里,相信很多使用者本身就已经这么做了
3. 如果采用了远程配置中心集成的话,那么只需要在那里修改规则(XML),触发推送;如果未集成,可以通过客户端工具(例如Postman)推送修改的规则(XML)
- 引入Plugin Starter依赖到pom.xml
- 为微服务定义一个版本号在application.properties里,相信很多使用者本身就已经这么做了
- 如果采用了远程配置中心集成的话,那么只需要在那里修改规则(XML),触发推送;如果未集成,可以通过客户端工具(例如Postman)推送修改的规则(XML)
## 痛点
现有Spring Cloud的痛点
1. 如果你是运维负责人,是否会经常发现,你掌管的测试环境中的服务注册中心,被一些不负责的开发人员把他本地开发环境注册上来,造成测试人员测试失败。你希望可以把本地开发环境注册给屏蔽掉,不让注册
2. 如果你是运维负责人,生产环境的某个微服务集群下的某个实例,暂时出了问题,但又不希望它下线。你希望可以把该实例给屏蔽掉,暂时不让被调用
3. 如果你是业务负责人,鉴于业务服务的快速迭代性,微服务集群下的实例发布不同的版本。你希望根据版本管理策略进行路由,提供给下游微服务区别调用,达到多版本灰度访问控制
4. 如果你是测试负责人,希望对微服务做A/B测试,那么通过动态改变版本达到该目的
- 如果你是运维负责人,是否会经常发现,你掌管的测试环境中的服务注册中心,被一些不负责的开发人员把他本地开发环境注册上来,造成测试人员测试失败。你希望可以把本地开发环境注册给屏蔽掉,不让注册
- 如果你是运维负责人,生产环境的某个微服务集群下的某个实例,暂时出了问题,但又不希望它下线。你希望可以把该实例给屏蔽掉,暂时不让被调用
- 如果你是业务负责人,鉴于业务服务的快速迭代性,微服务集群下的实例发布不同的版本。你希望根据版本管理策略进行路由,提供给下游微服务区别调用,达到多版本灰度访问控制
- 如果你是测试负责人,希望对微服务做A/B测试,那么通过动态改变版本达到该目的
## 简介
1. 实现服务注册层面的控制
1.1 基于黑/白名单的IP地址过滤机制禁止对相应的微服务进行注册
1.2 基于最大注册数的限制微服务注册。一旦微服务集群下注册的实例数目已经达到上限(可配置),将禁止后续的微服务进行注册
2. 实现服务发现层面的控制
2.1 基于黑/白名单的IP地址过滤机制禁止对相应的微服务被发现
2.2 基于版本配对,通过对消费端和提供端可访问版本对应关系的配置,进行多版本灰度访问控制
4. 实现通过XML进行上述规则的定义
5. 实现通过事件总线机制(EventBus)的功能,实现发布/订阅功能
5.1 对接远程配置中心,异步接受远程配置中心主动推送规则信息
5.2 结合Spring Boot Actuator,异步接受Rest主动推送规则信息
5.3 结合Spring Boot Actuator,动态改变微服务的版本
5.4 在服务注册层面的控制中,一旦禁止注册的条件触发,主动推送异步事件,以便使用者订阅
7. 实现通过Listener机制进行扩展
7.1 使用者可以自定义更多的规则过滤条件
7.2 使用者可以对服务注册发现核心事件进行监听监听
8. 实现通过Spring Boot Actuator的集成,提供健康检查功能
9. 实现支持未来扩展更多的服务注册中心
- 实现服务注册层面的控制
- 基于黑/白名单的IP地址过滤机制禁止对相应的微服务进行注册
- 基于最大注册数的限制微服务注册。一旦微服务集群下注册的实例数目已经达到上限(可配置),将禁止后续的微服务进行注册
- 实现服务发现层面的控制
- 基于黑/白名单的IP地址过滤机制禁止对相应的微服务被发现
- 基于版本配对,通过对消费端和提供端可访问版本对应关系的配置,进行多版本灰度访问控制
- 实现通过XML进行上述规则的定义
- 实现通过事件总线机制(EventBus)的功能,实现发布/订阅功能
- 对接远程配置中心,异步接受远程配置中心主动推送规则信息
- 结合Spring Boot Actuator,异步接受Rest主动推送规则信息
- 结合Spring Boot Actuator,动态改变微服务的版本
- 在服务注册层面的控制中,一旦禁止注册的条件触发,主动推送异步事件,以便使用者订阅
- 实现通过Listener机制进行扩展
- 使用者可以自定义更多的规则过滤条件
- 使用者可以对服务注册发现核心事件进行监听监听
- 实现通过Spring Boot Actuator的集成,提供健康检查功能
- 实现支持未来扩展更多的服务注册中心
## 场景
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment