Spring Cloud为开发人员提供了一整套的快速构建分布式应用的工具,入服务注册、服务发现、熔断、负载均衡、路由等,提供了开箱即用的各种依赖以及良好的可扩展机制。

目前在Spring Cloud的中文官网中列出了很多优质项目:

Spring Cloud没有重复的制造轮子,它吸取了很多家公司的优秀项目框架,通过Spring Boot的快速整合,屏蔽了复杂的配置,方便开发者快速构建自己需要的服务。

目前Spring Cloud为我们可以提供以下服务:

下面我们介绍几个常用的Spring Cloud下的服务组件。

1. Eureka

Netfilix公司出品(大佬为Spring Cloud生态提供了很多服务治理的组件)。

服务发现是微服务架构的原则之一,用于定位你在本地可提供的服务。Eureka是一个基于REST的云端服务发现的应用,当客户端注册Eureka服务时,提供了一系列自身的元数据,入主机、健康指示符URL等参数,Eureka服务器接收心跳消息维持这种服务。

2. Hystrix

熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。

加入你目前的软件架构如下:

当ServiceB出现服务故障,并达到一定的阈值(Hystrix的默认是5秒内出现20次故障),则出现熔断机制,启用回退机制:

fallback机制可以是启动替代服务,也可以是让该服务下线。

3. Spring Cloud Config

配置中心,可以把配置放到远程服务器,进行集中化管理分布式环境下的配置,支持Git和SVN。

4. Spring Cloud Bus

事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,可与Spring Cloud Config联合实现热部署。

5. Spring Cloud Zookeeper

Spring Boot抱紧ZK的大腿。

6. 和Spring Boot的关系

Spring Boot是快速开发Spring应用的脚手架,Spring Cloud是一个基础Spring Boot实现的云应用开发工具集合。

7. 结尾语

Spring Cloud特别适合中小型公司,因为它们往往没有足够的财力开发各种基础设施,而Spring Could提供了一站式解决方案,大大减少了开发成本。对于大公司,Spring Could也方便构建核心系统之外的微服务,甚至抽丝剥茧般地对原来的巨型核心系统解耦。因此笔者相信Spring Cloud可成为下一代服务端框架的重要选择。

最新文章

  1. IHttpHandler给图片加水印
  2. Mysql常用数据类型
  3. 【Android】 TextView设置个别字体样式
  4. php数据缓存
  5. java根据图片和文字生成自定义图片
  6. Android Bluetooth Stream Non-blocking Communication Tutorial
  7. 【学习总结】UIGestureRecognizer(手势识别器)
  8. 基于HTML5的SLG游戏开发( 二):创建HTML5页面
  9. SQL点滴32—Excel中CONCATENATE函数生成SQL语句
  10. D3.js:Update、Enter、Exit
  11. c语言-error C2440: “static_cast”: 无法从“UINT (__thiscall CHyperLink::* )(CPoint)”转换为“LRESULT (__thiscall CWnd::* )(CPoint)”
  12. this 指针
  13. web测试注意点
  14. Java-对象及变量的并发访问小结
  15. Excel VBA 使用笔记
  16. 第 15 章 位操作(invert4)
  17. android数据存取的四种方式
  18. FPGA入门实例一:LFSR
  19. windows的滚动条使用
  20. 51nod 1349 最大值

热门文章

  1. hdu4305生成树计数
  2. Java的序列化机制
  3. 第十天 1-9 rhel7-文件的归档和压缩
  4. Android面试三之Service
  5. JavaScript--跨域
  6. 一些常用的UI控件
  7. Linux下利用Ret2Libc绕过DEP
  8. 【HTML5】使用 JavaScript 来获取电池状态(Battery Status API)
  9. 【PL/SQL编程】变量和常量
  10. JAVA交换两个变量的值-(不使用第三变量)