spring cloud 是微服务分布式部署的一套解决方案。它涵盖了不少组件,好比配置中心、服务发现注册、负载均衡、阻断器、消息总线、数据监控等,这些组件都是为微服务分布式部署中几乎都会遇到的问题。nginx
微服务:通俗的讲就是功能相关的的一个集合做为一个服务单独进行部署,那么不少个这样的集合就构成了微服务。用专业一点的俗语讲就是把知足 srp(single_responsibility_principle)原则的的服务。spring
和zookeeper / consul 相似segmentfault
Hystrix 会在某个服务连续调用 N 次不响应的状况下,当即通知调用端调用失败,避免调用端持续等待而影响了总体服务。Hystrix 间隔时间会再次检查此服务,若是服务恢复将继续提供服务。
熔断监控工具:
Hystrix Dashbord和Turbine。 turbine用于各个在微服务中收集熔断数据, hystrix dashbord则用于展现这些数据。显示效果以下:架构
配置的集中化管理,当配置在服务运行期间发生改变的时候能够经过refresh功能刷新配置。生产环境建议配置中心集群化部署已保证其高可用性。负载均衡
经过spring cloud bus能够链接各个微服务节点,当须要给多个或者全部服务节点发送某个信息的时候,便可经过spring cloud bus来完成。tcp
好比:当某个配置发生改变后,须要通知对应的服务实例刷新配置,这个时候能够经过sprIng cloud bus来完成。其工做原理以下:分布式
请求转发,感受有点相似nginx的角色微服务
分布式链路跟踪须要 Sleuth+Zipkin 结合来实现。工具
Spring Cloud(零):微服务的那些事儿