Spring Cloud学习笔记:名词解释列表【持续更新】

1. Spring Cloud

Spring Cloud 应用程序:云原生应用(Cloud Native Application)
非常适合在Docker或者PaaS(例如 Cloud Foundry)上部署;

2. 版本

版本号包含 英文单词(release train) + SRX(service release)(X:数字)

  • release train:按伦敦地铁站名A-Z进行首字母迭代排序
  • SR:一般表示当前修复BUG的版本编号
    例:Camden SR4、Camden SR5、Dalston SR1
    而大多数Spring项目都以“主版本号.次版本号.增量版本号.里程碑版本号”的形式命名版本号,例如 Spring Framework 稳定版本 4.3.5.RELEASE、里程碑版本 5.0.0.M4 等。

3. 组成

  • 服务提供者(Provider):为其他Service提供服务的Service
  • 服务消费者(Consumer):服务的调用方Service
  • 配置中心(Config):Config Server为Config Client(可以是Provider或Consumer)提供配置信息

4. 组件

序号 名称 说明
1 Actuator 监控端点,如
health:显示应用程序的健康指标,这些值由 HealthIndicator 的实现类提供;
info:显示应用的信息,可使用 info.* 的属性自定义 info 端点公开的数据
2 Eureka Netflix开源的服务发现组件
本身是一个基于REST的服务,包含Server和Client两部分
3 Ribbon Netflix开源的负载均衡器
有助于控制HTTP和TCP客户端的行为,机遇负载均衡算法进行Consumer调用Provider,如轮询、随机等算法
4 Feign Netflix开源的申明式、模板化的HTTP客户端
将Consumer的Controller与Provider的Controller的监听路径URL进行解耦,所有的Consumer的相关服务请求URL由特定的Feign接口进行维护
5 Hystrix Netflix开源的延迟和容错库
用于隔离访问远程系统、服务或第三方库(相当于电路中的保险丝)
在跨服务访问异常时停止再发起无效请求,由Consumer直接处理请求并返回
6 Hystrix Dashboard 可视化的Hystrix监控平台
7 Turbine 聚合监控Hystrix监控平台
8 RabbitMQ 消息中间件,在微服务与Turbine网络不通时,收集消息等待处理
9 Zuul Netflix开源的微服务网关
核心是一系列过滤器:
- 身份认证安全
- 审查与监控
- 动态路由
- 压力测试
- 附再分配
- 静态响应处理
- 多区域弹性
10 Zuul过滤器 主要为4种标准类型:
- PRE:在请求被路由之前调用
- ROUTING:这种过滤器将请求路由到微服务
- POST:在路由到微服务以后执行
- ERROR:在其他阶段发生错误时自信该过滤器
生命周期请看表格下方图片
11 Sleuth 为Spring Cloud 提供了分布式跟踪的解决方案,它大量借助了Google Dapper、Twitter Zipkin 和 Apache HTrace的设计。
Sleuth的术语:span(跨度)trace(跟踪)annotation(标注)
Spring Cloud学习笔记:名词解释列表【持续更新】_第1张图片
Zuul请求的生命周期

分布式计算机的八大误区
Peter Deutsch 的文章 The Eight Fallacies of Distributed Computing 中提到:
1、 网络可靠;2、延迟为0;3、带宽无限;4、网络绝对安全;5、网络拓扑不会改变;6、必须有一名管理员;7、传输成本为0;8、网络同质化(由Java之父Golsing补充)

你可能感兴趣的:(Spring Cloud学习笔记:名词解释列表【持续更新】)