Spring Cloud侧重于为典型用例提供良好的开箱即用体验,并提供可扩展性机制来覆盖其余用例。html
Cloud Native是一种应用程序开发风格,这鼓励在持续交付和价值驱动开发领域容易采用最佳实践。一个相关的规程是构建12因素的应用程序,其中开发实践与交付和操做目标保持一致 - 例如,经过使用声明式编程和管理以及监控。Spring Cloud以多种特定方式促进这些开发风格,起点是一组分布式系统中的全部组件都须要方便地访问的特性。java
许多这些特性都由Spring Boot覆盖,Spring Cloud就是在Spring Boot之上构建的,Spring Cloud做为两个库提供了更多的特性:Spring Cloud Context和Spring Cloud Commons。Spring Cloud Context为Spring Cloud应用程序的ApplicationContext
提供实用工具和特殊服务(引导上下文、加密、刷新做用域和环境端点)。Spring Cloud Commons是一组抽象和通用类,被用在不一样的Spring Cloud实现(如Spring Cloud Netflix和Spring Cloud Consul)。git
若是因为“Illegal key size”而致使异常,而且你使用Sun的JDK,则须要安装Java加密扩展(JCE)无限制强度权限策略文件,有关更多信息,请参阅如下连接:Java 6 JCE、Java 7 JCE、Java 8 JCE。spring
不管你使用哪一种版本的JRE/JDK x64/x86,都要将文件解压缩到JDK/jre/lib/security
文件夹中。数据库
Spring Cloud Config为分布式系统中的外部化配置提供了服务器端和客户端支持,使用Config Server,你有一个中心位置来管理跨全部环境的应用程序的外部属性。客户端和服务器上的概念相同的映射到Spring Environment
和PropertySource
抽象,所以它们很是适合Spring应用程序,但能够用于任何语言中运行的应用程序。随着应用程序经过部署管道从开发到测试再到生产,你能够管理这些环境之间的配置,并确保应用程序在迁移时拥有运行所需的一切。服务器存储后端的默认实现是使用git,所以它很容易支持配置环境的标签版本,而且能够被用于管理内容的各类工具访问。添加替代实现并使用Spring配置插入它们很容易。编程
该项目经过自动配置和Spring Environment绑定以及其余Spring编程模型语法为Spring Boot应用程序提供Netflix OSS集成,经过一些简单的注解,你能够快速启用和配置应用程序内的通用模式,并使用通过实战考验的Netflix组件构建大型分布式系统,提供的模式包括服务发现(Eureka),断路器(Hystrix),智能路由(Zuul)和客户端负载均衡(Ribbon)。segmentfault
该项目经过自动配置和绑定到Spring环境以及其余Spring编程模型语法为Spring Boot应用程序提供OpenFeign集成。后端
PropertySourceLocator
行为