Spring Cloud各组件总结归纳

前面介绍了很多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://blog.csdn.net/yejingtao703/article/details/78331442/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/423333.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

移植Linux系统到iMX6开发板之LVDS显示屏驱动程序的框架分析与移植

学习交流加 个人qq: 1126137994个人微信: liu1126137994学习交流资源分享qq群: 962535112 今天记录一下项目中的关于LVDS显示屏的驱动程序的分析与移植。因为驱动源码厂家已经提供好,我们需要做的就是读懂驱动程序的代码&#xff…

Java api 1.8 中文 帮助文档

java 1.6 帮助文档 中文 链接:http://download.csdn.net/detail/qw599186875/9608735 英文 Java1.8 帮助文档 英文 中文 – 谷歌版 在线版: https://blog.fondme.cn/apidoc/jdk-1.8-google/下载链接:http://download.csdn.net/detail/qw599186875/980219…

设计模式记--Observer Pattern观察者模式

观察者模式——定义了对象之间的一对多依赖,这样一来,当一个对像改变状态时,它的所有依赖者都会收到通知并自动更新. 从定义可以看出,OBSERVER(观察者)模式逻辑上需要两组对象来实现.首先它必需要有发布者(Publish),也可称为被观察的目标 (…

前端学习(64):css继承属性小结

今天来总结一点关于css中哪些属性可以被继承,哪些不可以被继承。不是很全,仅供大家参考,也方便于自己以后复习。 一、不能被继承的属性 1、display:规定元素应该生成的框的类型 2、文本属性: vertical-align、 text…

iMX6开发板移植Linux系统之LVDS显示屏驱动程序分析之LVDS参数的匹配过程分析

学习交流加 个人qq: 1126137994个人微信: liu1126137994学习交流资源分享qq群: 962535112 上一篇分析LVDS驱动程序移植过程的文章(文章链接为:移植Linux系统到iMX6开发板之LVDS显示屏驱动程序的框架分析与移植&#xf…

日常spoken英语学习

今天遇到一个老外,说:can you speak engilsh dou you know coffee in here 我是想了半天,第一有点蒙,第二确实忘了,咖啡馆在哪了,回了一句:Iam think 感觉不知道如何组织语言了,口…

【C++深度剖析教程9】初探C++标准库

在这之前&#xff0c;我写的C程序不能叫做标准的C程序&#xff0c;因为里面写的大多数还带有C语言的影子。今天我们来学习C标准库。 首先看一下例子&#xff1a;操作符<<的原生意义是按位左移。那么我们重载这个操作符&#xff0c;将变量或者常量&#xff0c;左移到一个…

Quartus II常见问题集锦

1、 【问题】Pin Planner 的使用问题&#xff1a;在QuartusII 7.2 &#xff0c;时序仿真都通过&#xff0c;但是&#xff0c;一旦使用Pin Planner设定引脚后&#xff0c;时序仿真就发生变化&#xff0c;与功能仿真结果不一致&#xff0c;不是理想的结果。使用Pin Planner时要注…

员工考核UI网页界面(PS大屏文件资料)

现分享人员管理可视化数据统计网页UI、员工考核数据可视化UI网页界面模版的UI源文件&#xff0c;供UI设计师们快速获取PSD源文件完成工作。 若需更多 大屏组件&#xff0c;请移步小7的另一篇文章&#xff1a;数据可视化大屏组件&#xff0c;大屏PSD设计源文件(大屏UI设计规范)…

【C++深度剖析教程10】C++中的字符串类

首先我们看看C语言&#xff1a; C语言不支持真正意义上的字符串C语言用字符数组和一组函数实现字符串操作语言不支持自定义类型&#xff0c;一次无法获得字符串类型 从C到C中的进化过程中引入了自定义类型 在C中&#xff0c;可以通过类完成字符串类型的定义 C标准库提供了st…

docker 使用中遇到的问题

1.执行docker run hello 命令建立镜像过程中报错 开始以为是加速器的问题&#xff0c;将/etc/docker/daemon.json 文件删除还是不行 后来执行了这两条命令&#xff1a;就不报错了如下图&#xff1a; systemctl daemon-reloadsystemctl restart docker.service 参考&#xff1…

广州技术沙龙第 2、3 期参会者twitter、blog、兴趣大合集

随着组织者越来越有经验&#xff0c;我们在第 2、3 期报名的时候&#xff0c;让参会者填上自己的 twitter、blog和兴趣方向&#xff0c;为的就是让大家方便地找到与自己志同道合的朋友&#xff0c;今天推出第一个合集&#xff0c;祝大家找到新朋友。 注&#xff1a;twitter 账号…

maven 解决冲突

1.Maven之jar包冲突解决&#xff08;理解maven 产生冲突的原因&#xff09; 导致jar包冲突的原因 1、mvn的传递依赖特性&#xff1a;mvn编译打包除了会引入直接申明的依赖&#xff0c;还会引入间接申明的依赖 2、mvn的依赖仲裁规则&#xff1a; 1&#xff09;. 按照项目总控P…

jz2440开发板修改UBOOT支持NAND FLASH

很多天没有看嵌入式的东西了&#xff0c;今天来看一下&#xff0c;继续之前移植uboot到jz2440开发板。今天我们来实现Uboot支持NAND FLASH。 在之前的文章里&#xff08;点击连接查看之前的记录&#xff09;&#xff0c;我们为了编译通过把NAND FLASH 给屏蔽掉了&#xff0c;现…

i.MX6网卡驱动程序fec.c的分析(AR8035网卡驱动程序的详细分析)之一

学习交流加 个人qq&#xff1a; 1126137994个人微信&#xff1a; liu1126137994学习交流资源分享qq群&#xff1a; 962535112 因为做的项目需要用到ethercat主站&#xff0c;而用ethercat主站&#xff0c;标准的网卡网络协议栈性能就无法达到要求&#xff0c;需要根据ethercat官…

TOAD常用快捷键

现在在企业中&#xff0c;操作oracle数据库的客户端&#xff0c;除了PL/SQL外&#xff0c;使用的较多的就是TOAD了&#xff01; 为此&#xff0c;我在网上搜索了下&#xff0c;整理了些简单TOAD的使用技巧&#xff0c;现分享给大家。 常用快捷键&#xff1a; F8 调出以前执行的…

i.MX6网卡驱动程序fec.c的分析(AR8035网卡驱动程序的详细分析)之二

学习交流加 个人qq&#xff1a; 1126137994个人微信&#xff1a; liu1126137994学习交流资源分享qq群&#xff1a; 962535112 今天接着分析上次没有分析完的i.MX6网卡驱动程序。上一篇分析了iMX6网卡驱动程序的driver与device的加载过程&#xff08;点击可以查看上一篇文章&…

文档视图

IntelliFMEA是从IntelliQMS项目的子项目&#xff0c;可单独发布。在IntelliQMS中的APQP插件设计了一个更为完整的项目管理。在IntelliFMEA中的项目管理只是对FMEA有关的文档进行管理的一种方式。IntelliFMEA文档视图的工作方式是:1. 浏览和级联显示IntelliFMEA当前项目的文档清…

阅读ethercat官方文档关于ethercat网卡驱动程序的一些内容

学习交流加 个人qq&#xff1a; 1126137994个人微信&#xff1a; liu1126137994学习交流资源分享qq群&#xff1a; 962535112 改造iMX6&#xff08;fec&#xff09;网卡驱动程序前期工作之&#xff1a;阅读ethercat-1.5.2.pdf文档的第四章内容。 ethercat-1.5.2.pdf文档链接&a…

事务和锁

事务和锁 事务的定义 事务&#xff08;Transaction&#xff09;&#xff0c;一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。 事务…