springcloud和kubernetes對比

因爲這兩個都不熟,因此在考慮學哪一個。java

先說結論:都要學,可是重點學k8s,k8s是一個更加完善的解決方案,springcloud被淘汰只是時間的問題。spring

從本身的經歷和網上的文章兩方面分析docker

 

我的經歷:框架

目前所在的公司的系統是springcloud和k8s混合使用,目前正在逐步用k8s中的功能替代springcloud裏的功能。分佈式

已經替代掉的:服務發現。之前用的是eureka,目前刪除裏eureka,直接用feignclient訪問k8s裏的service地址。微服務

正在考慮中的:配置中心。目前用的是config-server,正在考慮用k8s裏的configmap替代。學習

 

網上的分析文章:server

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

功能對比:springcloud

 

各自的優缺點:

 

總結一下:

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功能的替換路線差很少。

相關文章
相關標籤/搜索