Spring Cloud 是一个基于 Spring Boot 实现的云应用开发工具,它为基于 JVM 的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式,Spring Cloud 1.0 在经过将近半年的开发和发布 3 个里程碑版本和 3 个 RC 版本后,其正式版终于发布了,且已提供在 Maven 中央仓库和 Spring 的仓库中。Spring Cloud 1.0 正式版所实现的主要改进内容包括:
- Spring Cloud Config 子项目支持使用 Git 配置客服务器
- Spring Cloud Config 子项目支持客户端的配置信息刷新、加密 / 解密配置、基于 Spring 应用的声明周期阶段配置
- Spring Cloud Commons 子项目实现了负载均衡、服务发现和断路器(Circuit Breaker)
- Spring Cloud Security 子项目实现了声明式的 SSO 和基于代理的认证策略
- Eureka 子项目实现了非 JVM 客户端的支持
- 使用 Zuul 实现了自动反向代理
- Spring 配置模型已支持 Zuul 过滤器和云中间层服务库 Ribbon 负载均衡配置
- 通过 Ribbon 集成实现了伪声明式的 Web 服务客户端
- 实现了 RestTemplate 同 Ribbon 的集成
- 分布式系统的延迟和容错库 Hystrix 通过客户端操作界面即可实现断路器
- 实时流、低延时、高吞吐量的聚合器 Turbine 实现了环路聚合、基于 HTTP 的 Pull 操作和基于 AMQP 的 Push 操作
- 对 AWS 服务的集成实现了对相关数据库、消息、EC2 元数据的支持
- 为 AMQP 总线定义了一套操作事件,如配置变化等
- Groovy CLI 实现了对上述多数功能的支持
Pivotal 于去年六月份公布了Spring Cloud 1.0 源码,代码托管在 GitHub 。Spring Cloud 工程包括 Spring Cloud Config、 Spring Cloud Netflix 、 Spring Cloud CloudFoundry 、 Spring Cloud AWS 、Spring Cloud Security、Spring Cloud Commons、 Spring Cloud Zookeeper 、 Spring Cloud CLI 等项目。更多关于 Spring Cloud 的内容以及如何将 Spring Cloud 部署到 Cloud Foundry 和 Heroku,读者可以参考关于Spring Cloud 简介的博文。
感谢郭蕾对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论