Spring Cloud是什么?

Spring Cloud项目实现了一组在分布式系统中要用到的常见模式,以一组容易使用的Java

Spring库。Spring Cloud本身不是一个(云解决方案)cloud solution,它提供了一些功能,对于开发遵循Twelve-Factor应用原则的面向云部署的应用是必要的。通过使用Spring Cloud,开发人员只需要关注编写

业务功能使用Spring Boot,在这个过程中同时利用了Spring Cloud提供的分布式、容错,以及self-healing

功能。

Spring Cloud解决方案对部署环境的态度是agnostic,可以开发并部署在一个桌面PC机或一个弹性云上。

Spring Cloud为开发人员提供了许多可供选择的解决方案,例如服务注册可以用Eureka、ZooKeeper,或

Consul。Spring Cloud的组件是解耦的,这样,开发人员就能灵活选择哪些组件是他们所需要的。

Spring Cloud和Cloud Foundry间的区别:

Spring Cloud是一个开发工具包用来开发互联网级别的Spring Boot项目,而Cloud Foundry是一个Platform

as a Service,用于构建、部署、扩展应用。

Spring Cloud发行版:

Spring Cloud项目包含了许多不同的组件,这些组件的版本定义在

spring-cloud-starter-parent BOM中。

我们这里使用的版本是Brixton.RELEASE

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>Brixton.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
  </dependency>

Spring Cloud的组件和一些分布式系统功能的对应关系:


Spring Cloud和Netflix OSS

许多对于微服务部署很重要的Spring Cloud组件都来自于Netflix Open Source Software center。

为了管理大规模微服务,Netflix的工程师开发出了许多工具,AWS平台上就缺少这些东西用来管理

Netflix services。后来,Netflix开源了这些组件,放在了Netflix OSS平台下,供公众使用。这些组件

在产品系统中得到了大量运用。Spring Cloud对这些组件提供了更高层次的抽象,使得对Spring开发者

更友好。它还提供了声明机制,能很好集成以及遵循了Spring Boot和Spring框架。
 

猜你喜欢

转载自zsjg13.iteye.com/blog/2408117