springcloud和kubernetes对比

由于这两个都不熟,所以在考虑学哪个。

先说结论:都要学,但是重点学k8s,k8s是一个更加完善的解决方案,springcloud被淘汰只是时间的问题。

从自己的经历和网上的文章两方面分析

 

个人经历:

目前所在的公司的系统是springcloud和k8s混合使用,目前正在逐步用k8s中的功能替代springcloud里的功能。

已经替代掉的:服务发现。以前用的是eureka,目前删除里eureka,直接用feignclient访问k8s里的service地址。

正在考虑中的:配置中心。目前用的是config-server,正在考虑用k8s里的configmap替代。

 

网上的分析文章:

分析文章1:https://cloud.tencent.com/developer/article/1140086

功能对比:

 

各自的优缺点:

 

总结一下:

Springcloud易于java开发者上手,但是只是从框架层面解决了微服务的流程的一部分,缺乏自动部署功能,而且局限于java平台;

k8s上手难度大,但是k8s从平台层面解决了微服务整个流程,并且不限语言。

 

如果只考虑微服务层面,k8s已经可以替代Springcloud了。

但是由于我目前主要开发java,而Springcloud有一些针对java的而且k8s没有的功能,

比如:feignclient(替代直接使用httpclient),分布式服务跟踪Sleuth

所以springcloud还是要学习的,但是很多模块已经不必深入钻研了,比如euraka。

把研究springcloud的精力分出一大部分来,研究一下k8s。

另外,无论选springcloud还是k8s,作为一个java开发者,Springboot和docker都是基础,是要认真研究的。

 

优势整合,这个整合和目前公司的用k8s功能替换springcloud功能的替换路线差不多。

 

posted @ 2019-06-10 12:12  lakeslove  阅读(20656)  评论(0编辑  收藏  举报