spring cloud各组件详解
一,Eureka
服务注册中心,特性有失效剔除、服务保护、健康检查。
二、Ribbon
客户端负载均衡,特性有区域亲和、重试机制。
三、Hystrix
客户端容错保护,特性有服务降级、服务熔断、请求缓存、请求合并、依赖隔离。
四、Feign
声明式rest服务调用,本质上就是Ribbon+Hystrix
前面介绍了很多Spring Cloud的组件,本篇按照自己的角度来做一次归纳。
Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。
润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。
Ribbon,客户端负载均衡,特性有区域亲和、重试机制。
Hystrix,客户端容错保护,特性有服务降级、服务熔断、请求缓存、请求合并、依赖隔离。
Feign,声明式服务调用,本质上就是Ribbon+Hystrix
Stream,消息驱动,有Sink、Source、Processor三种通道,特性有订阅发布、消费组、消息分区。
Bus,消息总线,配合Config仓库修改的一种Stream实现,
Sleuth,分布式服务追踪,需要搞清楚TraceID和SpanID以及抽样,如何与ELK整合。
独挑大梁,独自启动不需要依赖其它组件。
Eureka,服务注册中心,特性有失效剔除、服务保护。
Dashboard,Hystrix仪表盘,监控集群模式和单点模式,其中集群模式需要收集器Turbine配合。
Zuul,API服务网关,功能有路由分发和过滤。
Config,分布式配置中心,支持本地仓库、SVN、Git、Jar包内配置等模式,
每个组件都不是平白无故的产生的,是为了解决某一特定的问题而存在。
Eureka和Ribbon,是最基础的组件,一个注册服务,一个消费服务。
Hystrix为了优化Ribbon、防止整个微服务架构因为某个服务节点的问题导致崩溃,是个保险丝的作用。
Dashboard给Hystrix统计和展示用的,而且监控服务节点的整体压力和健康情况。
Turbine是集群收集器,服务于Dashboard的。
Feign是方便我们程序员些更优美的代码的。
Zuul是加在整个微服务最前沿的防火墙和代理器,隐藏微服务结点IP端口信息,加强安全保护的。
Config是为了解决所有微服务各自维护各自的配置,设置一个同意的配置中心,方便修改配置的。
Bus是因为config修改完配置后各个结点都要refresh才能生效实在太麻烦,所以交给bus来通知服务节点刷新配置的。
Stream是为了简化研发人员对MQ使用的复杂度,弱化MQ的差异性,达到程序和MQ松耦合。
Sleuth是因为单次请求在微服务节点中跳转无法追溯,解决任务链日志追踪问题的。
特殊成员Zipkin,之所以特殊是因为从jar包和包名来看它不属于Spring Cloud的一员,但是它与Spring Cloud Sleuth的抽样日志结合的天衣无缝。乍一看它与Hystrix的Dashboard作用有重叠的部分,但是他们的侧重点完全不同。Dashboard侧重的是单个服务的统计和是否可用,Zipkin侧重的监控环节时长。简言之,Dashboard侧重故障诊断,Ziokin侧重性能优化。
转载于:https://www.cnblogs.com/yeyusheng/p/8539141.html
spring cloud各组件详解相关推荐
- Spring Cloud限流详解(附源码)
在高并发的应用中,限流往往是一个绕不开的话题.本文详细探讨在Spring Cloud中如何实现限流. 在 Zuul 上实现限流是个不错的选择,只需要编写一个过滤器就可以了,关键在于如何实现限流的算法. ...
- Spring Cloud限流详解(内含源码)
为什么80%的码农都做不了架构师?>>> 原文:http://www.itmuch.com/spring-cloud-sum/spring-cloud-ratelimit/ 在 ...
- Spring Cloud Feign使用详解
通过前面两章对Spring Cloud Ribbon和Spring Cloud Hystrix的介绍,我们已经掌握了开发微服务应用时,两个重要武器,学会了如何在微服务架构中实现客户端负载均衡的服务调 ...
- SpringCloud入门之应用程序上下文服务(Spring Cloud Context)详解
构建分布式系统非常复杂且容易出错.Spring Cloud为最常见的分布式系统模式提供了简单易用的编程模型,帮助开发人员构建弹性,可靠和协调的应用程序.Spring Cloud构建于Spring Bo ...
- 微服务网关spring cloud gateway入门详解
1.API网关 API 网关是一个处于应用程序或服务( REST API 接口服务)之前的系统,用来管理授权.访问控制和流量限制等,这样 REST API 接口服务就被 API 网关保护起来,对所有的 ...
- Spring Cloud Feign原理详解
目录 1.什么是Feign? 2.Open Feign vs Spring Cloud Feign 2.1.OpenFeign 2.2.Spring Cloud Open Feign 3.Spring ...
- Spring Cloud Gateway配置详解-过滤器
Spring Cloud Gateway-过滤器 本节将为大家详细介绍Spring Could Gateway 内置过滤器相关内容. Spring Cloud Gateway 过滤器为大家提供了修改特 ...
- Spring Cloud Gateway 过滤器详解
一.概述 Spring Cloud Gateway根据作用范围划分为:GatewayFilter和GlobalFilter 1.filter的作用和生命周期 由filter工作流程点,可以知道filt ...
- spring cloud 断路器仪表盘详解
最新文章
- fiddler+android抓包工具配置使用
- python调用钉钉API发送消息
- oracle tabe unlock_Oracle 学习之性能优化(四)收集统计信息
- ElasticSearch vs Solr多维度分析对比
- NetBeans Java EE技巧8:持久性单元
- java undo_用JAVA实现Undo、Redo,Copy、Paste、Cut_java
- 金融项目app服务器配置,云在金融的应用
- 1949:【10NOIP普及组】数字统计
- 菜鸟学习笔记:Java提升篇2(容器2——Map、Set、迭代器)
- 【Vue2.0】—mixin混入 (十五)
- php页面审核,深入理解用PHP实现页面注册审核
- 制作Linux系统安装程序,制作自己的rpm包
- 智能家居APP设计规格
- DM数据库密码策略和登录限制设置
- Android自定ViewGroup实现流式布局
- CVPR'22 | 基于像素差异学习的视频高光检测算法及在视频广告中的应用
- ArcGIS中进行影像裁剪的几种方法汇总
- w ndows10图标,win10桌面图标变白怎么解决
- 计算机打字键盘怎么控制,电脑键盘打字技巧
- [电路笔记]非线性电路