分布式服务框架原理与实践_第1页
分布式服务框架原理与实践_第2页
分布式服务框架原理与实践_第3页
分布式服务框架原理与实践_第4页
分布式服务框架原理与实践_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分布式服务框架原理与实践读书笔记模板01思维导图目录分析读书笔记内容摘要作者介绍精彩摘录目录0305020406思维导图原理框架框架分布式服务实践服务架构原理服务第章设计实践框架架构总结消息注册机制路由本书关键字分析思维导图内容摘要内容摘要本书作者具有丰富的分布式服务框架、平台中间件的架构设计和实践经验,主导设计的华为分布式服务框架已经在全球数十个国家成功商用。书中依托工作实践,从分布式服务框架的架构设计原理到实践经验总结,涵盖了服务化架构演进、订阅发布、路由策略、集群容错和服务治理等多个专题,全方位剖析服务框架的设计原则和原理,结合大量实践案例与读者分享作者对分布式服务框架设计和运维的体会。同时,对基于Docker部署微服务以及基于微服务架构开发、部署和运维业务系统进行了详细介绍。目录分析1.1传统垂直应用架构1.3SOA服务化架构1.2RPC架构第1章应用架构演进1.5总结1.4微服务架构第1章应用架构演进1.1传统垂直应用架构1.1.1垂直应用架构介绍1.1.2垂直应用架构面临的挑战1.2RPC架构1.2.1RPC框架原理1.2.2最简单的RPC框架实现1.2.3业界主流RPC框架1.2.4RPC框架面临的挑战1.3SOA服务化架构1.3.1面向服务设计的原则1.3.2服务治理1.4微服务架构1.4.1什么是微服务1.4.2微服务架构对比SOA2.1分布式服务框架诞生背景2.2业界分布式服务框架介绍2.3分布式服务框架设计2.4总结第2章分布式服务框架入门2.1分布式服务框架诞生背景2.1.1应用从集中式走向分布式2.1.2亟需服务治理2.2业界分布式服务框架介绍2.2.1阿里Dubbo2.2.2淘宝HSF2.2.3亚马逊CoralService2.3分布式服务框架设计2.3.1架构原理2.3.2功能特性2.3.3性能特性2.3.4可靠性2.3.5服务治理3.1关键技术点分析3.2功能设计3.3可靠性设计3.4性能设计第3章通信框架3.6总结3.5最佳实践第3章通信框架3.1关键技术点分析3.1.1长连接还是短连接3.1.2BIO还是NIO3.1.3自研还是选择开源NIO框架3.2功能设计3.2.1服务端设计3.2.2客户端设计3.3可靠性设计3.3.1链路有效性检测3.3.2断连重连机制3.3.3消息缓存重发3.3.4资源优雅释放3.4性能设计3.4.1性能差的三宗罪3.4.2通信性能三原则3.4.3高性能之道4.1几个关键概念澄清4.2功能设计4.3扩展性设计4.4最佳实践4.5总结12345第4章序列化与反序列化4.1几个关键概念澄清4.1.1序列化与通信框架的关系4.1.2序列化与通信协议的关系4.1.3是否需要支持多种序列化方式4.2功能设计4.2.1功能丰富度4.2.2跨语言支持4.2.3兼容性4.2.4性能4.3扩展性设计4.3.1内置的序列化/反序列化功能类4.3.2反序列化扩展4.3.3序列化扩展4.4最佳实践4.4.1接口的前向兼容性规范4.4.2高并发下的稳定性5.1关键技术点分析5.2功能设计5.3可靠性设计5.4安全性设计第5章协议栈5.6总结5.5最佳实践——协议的前向兼容性第5章协议栈5.1关键技术点分析5.1.1是否必须支持多协议5.1.2公有协议还是私有协议5.1.3集成开源还是自研5.2功能设计5.2.1功能描述5.2.2通信模型5.2.3协议消息定义5.2.4协议栈消息序列化支持的字段类型5.2.5协议消息的序列化和反序列化5.2.6链路创建5.2.7链路关闭5.3可靠性设计5.3.1客户端连接超时5.3.2客户端重连机制5.3.3客户端重复握手保护5.3.4消息缓存重发5.3.5心跳机制6.1透明化路由6.3本地路由优先策略6.2负载均衡第6章服务路由6.4路由规则6.5路由策略定制6.6配置化路由6.7最佳实践——多机房路由6.8总结12345第6章服务路由6.1透明化路由6.1.1基于服务注册中心的订阅发布6.1.2消费者缓存服务提供者地址6.2负载均衡6.2.1随机6.2.2轮循6.2.3服务调用时延6.2.4一致性哈希6.2.5粘滞连接6.3本地路由优先策略6.3.1injvm模式6.3.2innative模式6.4路由规则6.4.1条件路由规则6.4.2脚本路由规则7.1集群容错场景7.3总结7.2容错策略第7章集群容错7.1集群容错场景7.1.1通信链路故障7.1.2服务端超时7.1.3服务端调用失败7.2容错策略7.2.1失败自动切换(Failover)7.2.2失败通知(Failback)7.2.3失败缓存(Failcache)7.2.4快速失败(Failfast)7.2.5容错策略扩展8.1几个误区8.2服务调用方式8.3最佳实践8.4总结第8章服务调用8.1几个误区8.1.1NIO就是异步服务8.1.2服务调用天生就是同步的8.1.3异步服务调用性能更高8.2服务调用方式8.2.1同步服务调用8.2.2异步服务调用8.2.3并行服务调用8.2.4泛化调用9.1几个概念9.2关键功能特性设计9.3基于ZooKeeper的服务注册中心设计9.4总结第9章服务注册中心9.1几个概念9.1.1服务提供者9.1.2服务消费者9.1.3服务注册中心9.2关键功能特性设计9.2.1支持对等集群9.2.2提供CRUD接口9.2.3安全加固9.2.4订阅发布机制9.2.5可靠性9.3基于ZooKeeper的服务注册中心设计9.3.1服务订阅发布流程设计9.3.2服务健康状态检测9.3.3对等集群防止单点故障9.3.4变更通知机制10.1服务发布设计10.2服务引用设计10.3最佳实践10.4总结第10章服务发布和引用10.1服务发布设计10.1.1服务发布的几种方式10.1.2本地实现类封装成代理10.1.3服务发布成指定协议10.1.4服务提供者信息注册10.2服务引用设计10.2.1本地接口调用转换成远程服务调用10.2.2服务地址本地缓存10.2.3远程服务调用10.3最佳实践10.3.1对等设计原则10.3.2启动顺序问题10.3.3同步还是异步发布服务10.3.4警惕网络风暴10.3.5配置扩展11.2总结11.1服务灰度发布流程设计第11章服务灰度发布11.1服务灰度发布流程设计11.1.1灰度环境准备11.1.2灰度规则设置11.1.3灰度规则下发11.1.4灰度路由11.1.5失败回滚11.1.6灰度发布总结12.2外部传参12.1内部传参第12章参数传递12.4总结12.3最佳实践第12章参数传递12.1内部传参12.1.1业务内部参数传递12.1.2服务框架内部参数传递12.2外部传参12.2.1通信协议支持12.2.2传参接口定义12.3最佳实践12.3.1防止参数互相覆盖12.3.2参数生命周期管理13.1服务多版本管理设计13.3总结13.2与OSGi的对比第13章服务多版本13.1服务多版本管理设计13.1.1服务版本号管理13.1.2服务提供者13.1.3服务消费者13.1.4基于版本号的服务路由13.1.5服务热升级13.2与OSGi的对比13.2.1模块化开发13.2.2插件热部署和热升级13.2.3不使用OSGi的其他理由14.1静态流控14.2动态流控14.3并发控制14.4连接控制第14章流量控制14.6总结14.5并发和连接控制算法第14章流量控制14.1静态流控14.1.1传统静态流控设计方案14.1.2传统方案的缺点14.1.3动态配额分配制14.1.4动态配额申请制14.2动态流控14.2.1动态流控因子14.2.2分级流控14.3并发控制14.3.1服务端全局控制14.3.2服务消费者流控14.4连接控制14.4.1服务端连接数流控14.4.2服务消费者连接数流控15.2容错降级15.1屏蔽降级第15章服务降级15.4总结15.3业务层降级第15章服务降级15.1屏蔽降级15.1.1屏蔽降级的流程15.1.2屏蔽降级的设计实现15.2容错降级15.2.1容错降级的工作原理15.2.2运行时容错降级16.1设置服务优先级16.2线程调度器方案16.3Java优先级队列16.4加权优先级队列16.5服务迁入迁出16.6总结010302040506第16章服务优先级调度17.1服务治理技术的历史变迁17.2应用服务化后面临的挑战17.3服务治理17.4总结第17章服务治理17.1服务治理技术的历史变迁17.1.1SOAGovernance17.1.2分布式服务框架服务治理17.1.3AWS云端微服务治理17.2应用服务化后面临的挑战17.2.1跨团队协作问题17.2.2服务的上下线管控17.2.3服务安全17.2.4服务SLA保障17.2.5故障快速定界定位17.3服务治理17.3.1服务治理架构设计17.3.2运行态服务治理功能设计17.3.3线下服务治理17.3.4安全和权限管理18.1业务场景分析18.3总结18.2分布式消息跟踪系统设计第18章分布式消息跟踪18.1业务场景分析18.1.1故障的快速定界定位18.1.2调用路径分析18.1.3调用来源和去向分析18.2分布式消息跟踪系统设计18.2.1系统架构18.2.2埋点日志18.2.3采样率18.2.4采集和存储埋点日志18.2.5计算和展示18.2.6调用链扩展19.1服务状态检测19.2服务健康度检测19.3服务故障隔离19.4其他可靠性特性19.5总结12345第19章可靠性设计19.1服务状态检测19.1.1基于服务注册中心状态检测19.1.2链路有效性状态检测机制19.3服务故障隔离19.3.1进程级故障隔离19.3.2VM级故障隔离19.3.3物理机故障隔离19.3.4机房故障隔离19.4其他可靠性特性19.4.1服务注册中心19.4.2监控中心19.4.3服务提供者20.1微服务架构产生的历史背景20.2微服务架构带来的改变20.3微服务架构解析20.4总结第20章微服务架构20.1微服务架构产生的历史背景20.1.1研发成本挑战20.1.2运维成本高20.1.3新需求上线周期长20.2微服务架构带来的改变20.2.1应用解耦20.2.2分而治之20.2.3敏捷交付20.3微服务架构解析20.3.1微服务划分原则20.3.2开发微服务20.3.3基于Docker容器部署微服务20.3.4治理和运维微服务20.3.5特点总结21.1性能和时延问题21.2事务一致性问题21.3研发团队协作问题21.4总结第21章服务化最佳实践21.1性能和时延问题21.1.1RPC框架高性能设计21.1.2业务最佳实践21.2事务一致性问题21.2.1分布式事务设计方案21.2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论