百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

Eureka闭源,Spring Cloud就会凉凉吗?

bigegpt 2024-08-07 17:38 8 浏览

近日,知名服务注册与服务发现工具 Eureka 的 GitHub Wiki 上显示其 2.0 版本的开源工作已经停止。

笔者朋友圈被 Eureka 2.x 停止开发的新闻刷屏,例如:

  • Eureka 2.0 开源工作宣告停止,继续使用风险自负
  • 凉凉了,Eureka 宣布闭源,Spring Cloud 何去何从?

关于第二篇,我想说,这是在造谣。

不妨来看一下官方的言论,来自 https://github.com/Netflix/eureka/wiki:

The open source work on eureka 2.0 has been discontinued. The code base and artifacts that were released as part of the existing repository of work on the 2.x branch is considered use at your own risk.

看清楚官方的言辞:官方只是说 Eureka 2.0 的开发被停止了,如果您将 Eureka 2.0 分支用在生产,将后果自负!

看起来挺吓人的。但真的那么可怕吗?

关于 Eureka 版本

Eureka 2.x 从来就没有正式发布过! 目前最新的稳定版本是 1.9.3。

笔者第一次看到 Eureka 2.0 的文章是 2016 年,那时候官方宣称要开发 Eureka 2.0,使用小批量的消息推送替代 Eureka 1.x 中的纯心跳机制(基于定时任务)的消息传递。

但是两年过去了,Eureka 2.0 最终没有孵化出来,但是绝不代表 Eureka 的闭源!官方依然在积极地维护 Eureka 1.x!

不妨来看一下 Eureka 的发布历史,来自 https://github.com/Netflix/eureka/releases:

从上图中可以看到,Eureka 的版本维护相当勤快!

Eureka 和服务注册的关系图

谈谈 2.x 的流产

就笔者的研究来看,官方关闭 2.x 分支至少 2 年了。只是最近可能考虑到会有团队会将 Eureka 2.x 用于线上,甚至基于 2.x 开发,所以友情提示一下。

但是问题是:大部分用户都是因为 Spring Cloud 才接触到 Eureka,Spring Cloud 使用的是 Eureka 1.x!退一万步,你会在自己项目中使用一个非正式发布的版本吗?

在我来看,这就是个友情提示,连个新闻都算不上。宣布停止开发已经停止 2 年的分支,还能算是新闻吗?

不是个例

事实上,这不是 Netflix(开源 Eureka 的公司)第一次跳票了。

2016 年,Netflix 宣布将在 2016 年底或 2017 年初开源 Zuul 2.x,结果写完发现太复杂了,而且性能提升也没有达到预期。

于是官方选择完全重构!知道 2018 年 1 月,Zuul 2.x 才被开源,2018 年 4 月才发布到中央仓库!

参考链接:https://github.com/netflix/zuul/tree/1.x

A lot of people are asking about the status of Zuul 2.0. We are actively working on open sourcing it and with it, likely many filters that we use at Netflix. Yes, we realize it’s been a long time coming. When we initially wrote Zuul 2.0, we heavily relied on RxJava to string filters together with Netty. This ended up adding a lot of complexity to the Zuul 2.0 core as well as made it quite difficult to operate and debug. We didn’t think it was right to release Zuul 2.0 like this. So we spent a lot of time refactoring out this pattern, using Netty constructs directly. This took the better part of a year to complete and deploy safely within Netflix. So this work is now done. We are working towards releasing this much better, easier to understand, and more reliable Zuul 2.0. Obviously Netflix’s business priorities take precedence to our open sourcing efforts, so as we get free time we will put efforts to open sourcing! Stay Tuned.

Current Zuul 2 development is on the 2.1 branch

其他项目的类似情况

不妨多聊聊。相信大家都很熟悉 Netty,或者至少听说过。

Netty 也有类似的情况。Netty 团队开源 Netty 5 后,发现代码复杂度过高,同时性能提升也并没有预期中的那么好,于是停止了 Netty 5 的开发。

那是不是说 Netty 5 闭源了?

退一万步

退一万步讲,Eureka 即使闭源,Spring Cloud 也不至于凉凉。Spring Cloud 支持使用 Eureka、Zookeeper、Consul 实现服务发现的能力。

从 Eureka 切换成 Zookeeper 只需要改个依赖,加两行配置就可以了。

总结

总而言之:

  • Eureka 没有闭源,是 Eurkea 2.x 分支不再维护!
  • Spring Cloud 并不强依赖 Eureka,Spring Cloud Commons 实现了通用抽象,允许我们使用自己喜欢的服务发现组件!
  • 悲观是好事,说明有危机感,但是过度解读,消费开发人员的情怀就过分了。

相关推荐

方差分析简介(方差分析通俗理解)

介绍方差分析(ANOVA,AnalysisofVariance)是一种广泛使用的统计方法,用于比较两个或多个组之间的均值。单因素方差分析是方差分析的一种变体,旨在检测三个或更多分类组的均值是否存在...

正如404页面所预示,猴子正成为断网元凶--吧嗒吧嗒真好吃

吧嗒吧嗒,绘图:MakiNaro你可以通过加热、冰冻、水淹、模塑、甚至压溃压力来使网络光缆硬化。但用猴子显然是不行的。光缆那新挤压成型的塑料外皮太尼玛诱人了,无法阻挡一场试吃盛宴的举行。印度政府正...

Python数据可视化:箱线图多种库画法

概念箱线图通过数据的四分位数来展示数据的分布情况。例如:数据的中心位置,数据间的离散程度,是否有异常值等。把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)...

多组独立(完全随机设计)样本秩和检验的SPSS操作教程及结果解读

作者/风仕在上一期,我们已经讲完了两组独立样本秩和检验的SPSS操作教程及结果解读,这期开始讲多组独立样本秩和检验,我们主要从多组独立样本秩和检验介绍、两组独立样本秩和检验使用条件及案例的SPSS操作...

方差分析 in R语言 and Excel(方差分析r语言例题)

今天来写一篇实际中比较实用的分析方法,方差分析。通过方差分析,我们可以确定组别之间的差异是否超出了由于随机因素引起的差异范围。方差分析分为单因素方差分析和多因素方差分析,这一篇先介绍一下单因素方差分析...

可视化:前端数据可视化插件大盘点 图表/图谱/地图/关系图

前端数据可视化插件大盘点图表/图谱/地图/关系图全有在大数据时代,很多时候我们需要在网页中显示数据统计报表,从而能很直观地了解数据的走向,开发人员很多时候需要使用图表来表现一些数据。随着Web技术的...

matplotlib 必知的 15 个图(matplotlib各种图)

施工专题,我已完成20篇,施工系列几乎覆盖Python完整技术栈,目标只总结实践中最实用的东西,直击问题本质,快速帮助读者们入门和进阶:1我的施工计划2数字专题3字符串专题4列表专题5流程控制专题6编...

R ggplot2常用图表绘制指南(ggplot2绘制折线图)

ggplot2是R语言中强大的数据可视化包,基于“图形语法”(GrammarofGraphics),通过分层方式构建图表。以下是常用图表命令的详细指南,涵盖基本语法、常见图表类型及示例,适合...

Python数据可视化:从Pandas基础到Seaborn高级应用

数据可视化是数据分析中不可或缺的一环,它能帮助我们直观理解数据模式和趋势。本文将全面介绍Python中最常用的三种可视化方法。Pandas内置绘图功能Pandas基于Matplotlib提供了简洁的绘...

Python 数据可视化常用命令备忘录

本文提供了一个全面的Python数据可视化备忘单,适用于探索性数据分析(EDA)。该备忘单涵盖了单变量分析、双变量分析、多变量分析、时间序列分析、文本数据分析、可视化定制以及保存与显示等内容。所...

统计图的种类(统计图的种类及特点图片)

统计图是利用几何图形或具体事物的形象和地图等形式来表现社会经济现象数量特征和数量关系的图形。以下是几种常见的统计图类型及其适用场景:1.条形图(BarChart)条形图是用矩形条的高度或长度来表示...

实测,大模型谁更懂数据可视化?(数据可视化和可视化分析的主要模型)

大家好,我是Ai学习的老章看论文时,经常看到漂亮的图表,很多不知道是用什么工具绘制的,或者很想复刻类似图表。实测,大模型LaTeX公式识别,出乎预料前文,我用Kimi、Qwen-3-235B...

通过AI提示词让Deepseek快速生成各种类型的图表制作

在数据分析和可视化领域,图表是传达信息的重要工具。然而,传统图表制作往往需要专业的软件和一定的技术知识。本文将介绍如何通过AI提示词,利用Deepseek快速生成各种类型的图表,包括柱状图、折线图、饼...

数据可视化:解析箱线图(box plot)

箱线图/盒须图(boxplot)是数据分布的图形表示,由五个摘要组成:最小值、第一四分位数(25th百分位数)、中位数、第三四分位数(75th百分位数)和最大值。箱子代表四分位距(IQR)。IQR是...

[seaborn] seaborn学习笔记1-箱形图Boxplot

1箱形图Boxplot(代码下载)Boxplot可能是最常见的图形类型之一。它能够很好表示数据中的分布规律。箱型图方框的末尾显示了上下四分位数。极线显示最高和最低值,不包括异常值。seaborn中...