如果我已经拥有Kubernetes(或mesos),为什么我需要使用Spring Cloud?

时间:2017-05-04 23:10:07

标签: spring kubernetes spring-cloud spring-cloud-netflix

我是Spring Cloud的新手,我对此感到有些困惑。 Kubernetes和Spring Cloud都是微服务框架。如果我已经拥有Kubernetes(或mesos),为什么我需要使用Spring Cloud?我注意到很多项目都使用它们。 Kubernetes和Spring Cloud之间的区别是什么?它们都可以提供服务发现,负载均衡等。 我真的很困惑。

1 个答案:

答案 0 :(得分:1)

Kubernetes和Spring Cloud解决了与微服务相关的许多问题,但采用了不同的方法和技术。 Redhat写了一篇很好的文章来解释这一点。主要内容如下:

  

Spring Cloud拥有丰富的集成良好的Java库   将所有运行时关注点作为应用程序堆栈的一部分。作为一个   结果,微服务本身具有库和运行时代理   做客户端服务发现,负载均衡,配置   更新,指标跟踪等。单例聚类等模式   服务,批处理作业也在JVM中管理。

     

Kubernetes是   polyglot,不仅仅针对Java平台,而是针对Java平台   所有语言方式的通用分布式计算挑战。   它提供配置管理,服务发现,   负载平衡,跟踪,指标,单例,预定作业   平台级别,在应用程序堆栈之外。应用程序   客户端逻辑不需要任何库或代理,它可以   用任何语言写的。

     

在某些领域,两个平台都依赖于类似的   第三方工具。例如,ELK和EFK堆栈,跟踪   图书馆等。

     

某些库如Hystrix,Spring Boot很有用   同样适用于两种环境。有两个地方   平台是互补的,可以组合在一起创建一个   更强大的解决方案(KubeFlix和Spring Cloud Kubernetes就是这样   实施例)。

     

来源:https://developers.redhat.com/blog/2016/12/09/spring-cloud-for-microservices-compared-to-kubernetes/

要更详细地了解差异和相似之处,我建议您阅读完整的article