zoukankan      html  css  js  c++  java
  • SpringCloud各个组件说明

    对于SpringCloud来说,首先我们需要认识一些基本的组件,这会让我们之后的讨论和交流更有效率。

    组件名字和发音

    如果你都不知道别人再说什么,或者别人都不知道你再讲什么,就很尴尬了。
    Eureka [jʊ'ri:kə]
    Ribbon [ˈrɪbən]
    Feign [fen]
    Hystrix [hɪst'rɪks]
    Zuul [zulu]
    Sleuth [sluθ]
    Turbine [ˈtɜ:rbaɪn]

    重要组件说明

    这里的说明借用网上一个很6的分类方式来说明。
    润物无声类和独挑大梁类。

    独挑大梁,独自启动不需要依赖其它组件。
    Eureka,服务注册中心,特性有失效剔除、服务保护。(类似生活中的大堂,登记了整个项目的所有服务)
    Dashboard,Hystrix仪表盘,监控集群模式和单点模式,其中集群模式需要收集器Turbine配合。(类似生活中的保安监控室)
    Zuul,API服务网关,功能有路由分发和过滤。(类似交警叔叔,指挥道路交通)
    Config,分布式配置中心,支持本地仓库、SVN、Git、Jar包内配置等模式。(类似规章制度,每个人都从这里获取规定配置)

    润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。
    Ribbon,客户端负载均衡,特性有区域亲和、重试机制。(类似nginx)
    Hystrix,客户端容错保护,特性有服务降级、服务熔断、请求缓存、请求合并、依赖隔离。(怕访问过于频繁服务挂了,进行限流,太频繁的请求就直接拒绝)
    Feign,声明式服务调用,本质上就是Ribbon+Hystrix。(用注解的方式进行服务调用,代码更好看了)
    Stream,消息驱动,有Sink、Source、Processor三种通道,特性有订阅发布、消费组、消息分区。
    Bus,消息总线,配合Config仓库修改的一种Stream实现。(用于广播消息,一说大家都知道了啦)
    Sleuth,分布式服务追踪,需要搞清楚TraceID和SpanID以及抽样,如何与ELK整合。(服务多了,调用的线路就会很复杂,需要跟踪来知道你到底是怎么走的)

    总结

    SpringCloud组件太多,很多人会觉得学习成本很大,而且即使学到了好像在实际中很难去应用,因为应用场景导致。所以在学习的时候,需要抓住重点,并不是所有组件在一个项目中都会用到的,很多时候我们需要的只是其中必要的部分,有了必要的东西我们就能完成我们所需要的功能,而多数的组件是为了方便很多功能,或者对于后面的业务扩展有追求的时候使用的。之后会慢慢更新每个组件的细节使用,以及实际使用的业务场景。

    参考博客:
    https://blog.csdn.net/yejingtao703/article/details/78331442
    https://blog.csdn.net/forezp/article/details/70148833/

  • 相关阅读:
    java中float和double的区别
    常用的排序算法及其适用场景
    高级排序
    LoadRunner 学习笔记(1)性能测试常见术语
    Oracle 常用函数
    oracle 自定义函数
    Oracle 异常处理
    Oracle 包(package)
    CF1332B Composite Coloring(数学)
    CF55D Beautiful(数位dp)
  • 原文地址:https://www.cnblogs.com/linkstar/p/9055900.html
Copyright © 2011-2022 走看看