发布日志
发布策略
提醒:版本号右边, ↑
表示>=该版本号, ↓
表示<=该版本号
提醒:Spring Boot版本和Spring Cloud Alibaba版本需要在版本号后面加上.RELEASE
版本
状态
SC版本
SB版本
SCA版本
6.3.3
H.SR5 ↑
H
G
F
2.3.x
2.2.x
2.1.x
2.0.x
2.2.x
2.2.x
2.1.x
2.0.x
5.6.0
G
2.1.x
2.1.x
4.15.0
F
2.0.x
2.0.x
3.20.3
E
1.5.x
1.5.x
2.0.x
D
1.x.x
N/A
1.0.x
C
1.x.x
N/A
表示维护中 | 表示不维护,但可用,强烈建议升级 | 表示不维护,不可用,已废弃
6.x.x版本(同时适用于Finchley、Greenwich和Hoxton以及未来的更高版本),将继续维护
5.x.x版本(适用于Greenwich)已废弃
4.x.x版本(适用于Finchley)已废弃
3.x.x版本(适用于Edgware)不维护,但可用,强烈建议升级
2.x.x版本(适用于Dalston)已废弃
1.x.x版本(适用于Camden)已废弃
版本变更
无中间件版本变更
依赖变更
管理中心插件依赖独立
如果使用者想使用该插件,需要手工引入。例如,在服务侧的依赖,变更如下
`
`
异步跨线程Agent插件依赖独立
为使异步跨线程Agent插件更具通用性,从Discovery工程独立出去,单独以DiscoveryAgent工程呈现,请访问
https://github.com/Nepxion/DiscoveryAgent
插件入口的包名简化为
discovery-agent-starter-${discovery.agent.version}.jar
并提供相关插件扩展指南示例,请访问
https://github.com/Nepxion/DiscoveryAgentGuide
功能迭代
灰度路由下的版本故障转移
版本故障转移,即无法找到相应版本的服务实例,路由到老的稳定版本的实例。其作用是防止灰度版本路由人为设置错误,或者对应的版本实例发生灾难性的全部下线,导致流量有损
故障转移方式,对版本号进行排序,取第一个版本号,所以此方案的前置条件是必须版本号是规律的有次序,例如,以时间戳的方式。如果所有服务实例的版本号未设置,那么将转移到未设置版本号的实例上
需要通过如下开关开启该功能
# 启动和关闭版本故障转移。缺失则默认为false spring.application.strategy.version.failover.enabled=true
并行灰度路由下的版本偏好策略
版本偏好,即非灰度路由场景下,路由到老的稳定版本的实例。其作用是防止多个网关上并行实施灰度版本路由产生混乱,对处于非灰度状态的服务,调用它的时候,只取它的老的稳定版本的实例;灰度状态的服务,还是根据传递的Header版本号进行匹配
偏好方式,对版本号进行排序,取第一个版本号,所以此方案的前置条件是必须版本号是规律的有次序,例如,以时间戳的方式。如果所有服务实例的版本号未设置,那么将转移到未设置版本号的实例上
需要通过如下开关开启该功能
# 启动和关闭版本偏好。缺失则默认为false spring.application.strategy.version.prefer.enabled=true
增加SLF4J MDC异步Agent插件
需要通过如下开关开启该功能
-Dthread.mdc.enabled=true
增加自定义异步Agent插件开关控制机制
需要通过isEnabled方法覆盖实现开关控制插件生效/失效机制
以MDCPlugin为例,表示thread.mdc.enabled=true的时候,开启该插件
`public class MDCPlugin extends AbstractPlugin {
private Boolean threadMDCEnabled = Boolean.valueOf(System.getProperty("thread.mdc.enabled", "false"));
@Override
protected String getMatcherClassName() {
return "org.slf4j.MDC";
}
@Override
protected String getHookClassName() {
return MDCContextHook.class.getName();
}
@Override
protected boolean isEnabled() {
return threadMDCEnabled;
}
}
`
缺陷修复
修复IP地址和端口路由的缺陷
遗漏对非Json格式的端口路由Header支持
修复异步场景下域名灰度路由的缺陷
修复异步场景下,Http Request获取RequestURL的空指针异常
相关文档
Discovery【探索】微服务企业级解决方案
① Discovery【探索】微服务企业级解决方案文档
Discovery【探索】微服务企业级解决方案(PPT版) :
http://nepxion.gitee.io/docs/link-doc/discovery-ppt.html
Discovery【探索】微服务企业级解决方案(PDF版) :
http://nepxion.gitee.io/docs/link-doc/discovery-pdf.html
Discovery【探索】微服务企业级解决方案(HTML版) :
http://nepxion.gitee.io/docs/link-doc/discovery-html.html
② Discovery【探索】微服务企业级解决方案源码。请访问Gitee镜像获得最佳体验
源码Gitee同步镜像 :
https://gitee.com/Nepxion/Discovery
源码Github原镜像 :
https://github.com/Nepxion/Discovery
③ Discovery【探索】微服务企业级解决方案指南示例源码。请访问Gitee镜像获得最佳体验
指南Gitee同步镜像 :
https://gitee.com/Nepxion/DiscoveryGuide
指南Github原镜像 :
https://github.com/Nepxion/DiscoveryGuide
④ Discovery【探索】微服务框架指南示例说明
对于入门级玩家,参考 指南示例极简版 :
https://github.com/Nepxion/DiscoveryGuide/tree/simple
,分支为simple。涉及到指南篇里的灰度路由和发布的基本功能, 参考 新手快速入门 :https://gitee.com/nepxion/DiscoveryGuide/blob/simple/GUIDE.md
对于熟练级玩家,参考 指南示例精进版 :
https://github.com/Nepxion/DiscoveryGuide/tree/master
,分支为master。除上述《极简版》功能外,涉及到指南篇里的绝大多数高级功能对于骨灰级玩家,参考 指南示例高级版 :
https://github.com/Nepxion/DiscoveryGuide/tree/premium
,分支为premium。除上述《精进版》功能外,涉及到指南篇里的ActiveMQ、MongoDB、RabbitMQ、Redis、RocketMQ、MySQL等高级调用链和灰度调用链的整合
Polaris【北极星】企业级云原生微服务框架
① Polaris【北极星】企业级云原生微服务框架文档
Polaris【北极星】企业级云原生微服务框架(PDF版) :
http://nepxion.gitee.io/docs/link-doc/polaris-pdf.html
Polaris【北极星】企业级云原生微服务框架(HTML版) :
http://nepxion.gitee.io/docs/link-doc/polaris-html.html
② Polaris【北极星】企业级云原生微服务框架源码。请访问Gitee镜像获得最佳体验
源码Gitee同步镜像 :
https://gitee.com/polaris-paas/polaris-sdk
源码Github原镜像 :
https://github.com/polaris-paas/polaris-sdk
③ Polaris【北极星】企业级云原生微服务框架指南示例源码。请访问Gitee镜像获得最佳体验
指南Gitee同步镜像 :
https://gitee.com/polaris-paas/polaris-guide
指南Github原镜像 :
https://github.com/polaris-paas/polaris-guide
请联系我
微信、公众号和文档
本文分享自微信公众号 - Nepxion开源社区(iMicroService)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。