开源计划终止带来的思考

简介: 本文并非硬核技术文章,只是一些小的感想;也不是具体对某一技术选型做拆解分析,毕竟据我了解,国内用springcloud做开发的大厂几乎没有。


本文并非硬核技术文章,只是一些小的感想;也不是具体对某一技术选型做拆解分析,毕竟据我了解,国内用springcloud做开发的大厂几乎没有。



01 Eureka漫谈


做Java开发的同学们想必都对Eureka非常熟悉吧,一个用于服务注册和发现的组件,在我看来相当于整套微服务架构的大脑。提起Eureka的研发公司Netflix(奈飞),大家可能或多或少听说过一部叫做《纸牌屋》的美剧,就是这家公司出品,说到底Netflix实际上是一家影视公司(和正宗的互联网企业相比还是有些许的这方面的不靠谱)。


在某年某日,这家公司突然宣布Eureka2.0的开源计划“不再继续”,这里要注意一点,官方github主页上标明的是开源计划不再继续,并不意味着这个项目凉了。


103.png


不过大家还是要抱有乐观的心态,毕竟官方只是说了discontinued,还有可能继续是不是。毕竟像阿里的dubbo也有经历过这样的挫折的经历,现在能做的也就是等待了,好在Eureka1.0还在一直维护着。


其实Eureka2.0与接下来要出场的几位来讲,这点变化就是小巫见大巫了。


       想当年,JDK8在某个版本的更新变成了OTN协议,意味着企业就不能继续在商用的环境下用到更新的内容,当然给oracle(甲骨文公司)交点份子钱就可以用了;


       Zuul2.0也是Netflix公司的一款产品,作为SpringCloud大家庭里的网关层组件,其开源之路也是一波三折~~~,SpringCloud官方看着Netflix貌似有点靠不住,所以就下决心研发了另外一套网关层组件——Gateway;


       Netty5的测试性能根本没有达到设计之初的预期,于是全体上下白忙活一场,官方索性直接宣布放弃;


       之前声势浩荡的第一款图形化数据库Neo4J有一天直接宣布企业版本闭源;


       有传言Facebook打算修改React开源协议;


       还有Android3.0....


       这些难兄难弟们的情况不比Eureka2.0要好,作为一个底层的开发人员,好像并不能对这些变化做点什么,只能默默地说一些心底话“你XXX”


1044.jpg


所以这对我们在技术选型时有什么启发呢?


       1. 人们总爱追求新技术,但也不能为了新而新,毕竟有太多东西出道即巅峰。


       2. 社区的开源力量,以及商业公司的支持力度。这决定了一项技术在未来的生命活力。换成人话就是在Apache基金会的顶级项目SpringCloud和网友自己开发的服务治理组件来搭建服务中做选择,答案不言而喻。


       3. 团队学习成本。团队成员现有技术栈的匹配程度和学习速度也要考量,这里水深,要小心一不留神就溺水了。


       4. 替换成本,运维成本。



相关文章
|
6月前
|
安全 Java API
Java并发基础-启动和终止线程
Java并发基础-启动和终止线程
37 0
|
3月前
|
存储 算法 Shell
调试休眠和挂起功能【ChatGPT】
调试休眠和挂起功能【ChatGPT】
|
4月前
|
NoSQL Unix 编译器
Golang协程goroutine的调度与状态变迁分析
文章深入分析了Golang中goroutine的调度和状态变迁,包括Grunnable、Gwaiting、Grunning和Gsyscall等状态,以及它们之间的转换条件和原理,帮助理解Go调度器的内部机制。
52 0
|
6月前
|
Java
【技术解码】Java线程的五味人生:新建、就绪、运行、阻塞与死亡的哲学解读!
【6月更文挑战第19天】Java线程生命周期如同人生旅程,经历新建、就绪、运行、阻塞至死亡五阶段。从`new Thread()`的诞生到`start()`的蓄势待发,再到`run()`的全力以赴,线程在代码中奔跑。阻塞时面临挑战,等待资源释放,最终通过`join()`或中断结束生命。线程的每个状态转变,都是编程世界与哲思的交汇点。
47 1
|
5月前
|
Python
Python的`signal`模块提供了访问底层操作系统提供的信号机制的方式。信号是操作系统用来通知进程发生了某种情况(如用户按下Ctrl+C)的一种机制。
Python的`signal`模块提供了访问底层操作系统提供的信号机制的方式。信号是操作系统用来通知进程发生了某种情况(如用户按下Ctrl+C)的一种机制。
|
7月前
|
缓存 Linux
【进程控制】谈谈进程终止的三种状态
【进程控制】谈谈进程终止的三种状态
|
7月前
|
NoSQL Java 编译器
|
存储 算法 Linux
《Linux操作系统编程》第二章 进程运行与调度: 了解进程的定义与特征、进程的状态与切换、进程管理的数据结构、进程的创建与终止、阻塞与唤醒、挂起与激活以及处理机调度的相关概念
《Linux操作系统编程》第二章 进程运行与调度: 了解进程的定义与特征、进程的状态与切换、进程管理的数据结构、进程的创建与终止、阻塞与唤醒、挂起与激活以及处理机调度的相关概念
287 0
C# 探秘如何优雅的终止线程
C# 探秘如何优雅的终止线程
106 0
|
NoSQL Linux 调度
Linux进程控制【创建、终止、等待】
进程创建后,需要对其进行合理管理,光靠OS是无法满足我们的需求的,此时可以运用进程控制相关知识,对进程进行手动管理,如创建进程、终止进制、等待进程等,其中等待进程可以有效解决僵尸进程问题
215 1
Linux进程控制【创建、终止、等待】