文章综合整理自:Java技术栈、王学政博客、周立_ITMuch博客
今年 Dubbo 火了,并在 2 月份的时候,顺利通过投票,成为了 Apache 基金会孵化项目。而另一边的 Spring Cloud 今年似乎并没这么顺风顺水。根据上月底的消息,Eureka 2.0 开源工作宣告停止,继续使用将自行承担风险。
这意味着如果开发者继续使用作为 2.x 分支上现有工作 repo 一部分发布的代码库和工件,则将自负风险,对此,专家建议开发者尽快将相关业务迁移到 Consul/ZooKeeper/Etcd 等工具上。
Eureka 是什么?
Eureka 是 Netflix 开发的服务发现框架,本身是一个基于 REST 的服务,主要用于定位运行在 AWS 域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud 将它集成在其子项目 spring-cloud-netflix 中,以实现 SpringCloud 的服务发现功能。
Eureka 高层次的体系结构
Eureka 包含两个组件:Eureka Server 和 Eureka Client。
Eureka Server 提供服务注册服务,各个节点启动后,会在 Eureka Server 中进行注册,这样EurekaServer中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到。
Eureka Client 是一个 Java 客户端,用于简化与 Eureka Server 的交互,客户端同时也就别一个内置的、使用轮询(round-robin)负载算法的负载均衡器。(摘自:王学政博客)
Netflix 公司于 2012 年将 Euerka 正式开源。
Eureka 1.x 最新版本 1.9.3,不知道是否会成为 Eureka 最后的开源版本。
本次开源工作的宣告停止在其官网未到相关申明,是否开历史倒车,是否有其他阴谋,我们将持续跟进。
停止开源并不意味着“闭源”!
据了解,Eureka 2.x 并未正式发布过!目前最新的稳定版本是 1.9.3。官方于 2016 年宣称要开发 Eureka 2.0,但是两年过去了,Eureka 2.0 最终没有孵化出来,但这并不代表 Eureka 闭源,官方目前仍在积极地维护 Eureka 1.x。
Eureka 停止开源后,Spring Cloud 将何去何从?后续会不会替换默认的服务注册组件呢?不得而知,Spring Cloud 版本发布很快,已经快跟不上了。
Eureka 2.x 还未发布正式版本,Spring Cloud 还是在 1.x 上面开发的,最新版本依赖 1.9.2,所以虽然国内大多数公司也在用 Eureka,但暂时不会受影响。
1.x 相对稳定,建议不要盲目升级或者切换到别的中间件。不过,随着 Eureka 的开源工作的停止,后续还是有必要迁移至 Consul、ZooKeeper、Etcd 等开源中间件上面去的。
Eureka 停止开源对我们的影响大吗,你怎么看?欢迎留言讨论。
开源中国征稿开始啦!
开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 200 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。
现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿