Netty 4核心原理与手写RPC框架实战+深入理解ApacheDubbo与实战+分布式微服务架pdf下载

Netty 4核心原理与手写RPC框架实战+深入理解ApacheDubbo与实战+分布式微服务架百度网盘pdf下载

作者:
简介:Netty 4核心原理与手写RPC框架实战+深入理解ApacheDubbo与实战+分布式微服务架
出版社:
出版时间:2019-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

9787121385063  9787121366345 9787302537816 



etty 4核心原理与手写RPC框架实战  



作  译  者:谭勇德(Tom)出版时间:2020-03



千 字 数:634版     次:01-01 页 数:456开       本:16开 装      帧:



I S B N :9787121385063换       版:



纸质书定价:¥108.0



《Netty 4核心原理与手写RPC框架实战》首先从硬件层面深入分析网络通信原理,结合Java对网络I/O的API实现,将理论与实践串联起来,帮助大家透彻理解网络通信的起源,然后介绍Netty产生的背景并基于Netty手写Tomcat和RPC框架,帮助大家初步了解Netty的作用,接着分析Netty的核心原理和核心组件,基于Netty手写一个消息推送并进行性能调优,后介绍设计模式在Netty中的应用和经典的面试题分析。如果你想深入了解网络通信原理,如果你还不知道Netty能做什么,如果你想深入了解Netty的实现原理,如果你看源码找不到入口,无从下手,如果你想了解设计模式在Netty中的应用,本书都能帮到你。





基本信息



书名:深入理解Apache Dubbo与实战



定价:79.00元



作者:诣极



出版社:电子工业出版社



出版日期:2019-07-01



ISBN:9787121366345



字数:



页码:



版次:



装帧:平塑勒



开本:16开



商品重量:





内容提要



本书首先介绍Dubbo的简史、后续的规划和整体架构大图;接着介绍Dubbo环境配置,并基于Dubbo开发*款应用程序;然后介绍Dubbo内置的常用注册中心的实现原理,Dubbo扩展点加载的原理和实现,Dubbo的启动、服务暴、服务消费和优雅停机的机制,Dubbo中RPC协议细节、编解码和服务调用实现原理,Dubbo集容错、路由和负载均衡机制,Dubbo的扩展点相关知识,Dubbo特性的实现和原理,Dubbo常用的Filter的实现原理,Dubbo中新增etcd3注册中心的实战内容和Dubbo服务治理平台的相关知识;*后介绍Dubbo未来生态和Dubbo Mesh的相关知识。





作者介绍



商宗海,花名诣极,开源Dubbo核心开发者之一。曾就职于、金蝶中国。现就职于有赞科技,担任Dubbo框架技术负责人,参与中间件开发,长期活跃在Dubbo社区。


章 Dubbo——高性能RPC通信框架1

1.1 应用架构演进过程1

1.1.1 单体应用1

1.1.2 分布式应用3

1.2 Dubbo简介6

1.2.1 Dubbo的发展历史7

1.2.2 Dubbo是什么7

1.2.3 Dubbo解决什么问题9

1.2.4 谁在使用Dubbo

1.2.5 Dubbo后续的规划11

1.3 Dubbo总体大图11

1.3.1 Dubbo总体分层11

1.3.2 Dubbo核心组件12

1.3.3 Dubbo总体调用过程13

1.4 小结15

2章 开发款Dubbo应用程序16

2.1 配置开发环境16

2.1.1 下载并安装JDK17

2.1.2 下载并安装IDE17

2.1.3 下载并配置Maven18

2.1.4 下载并配置ZooKeeper18

2.1.5 使用IDEA调试Dubbo源码18

2.2 基于XML配置实现21

2.2.1 编写Echo服务器21

2.2.2 编写Echo客户端24

2.3 基于注解实现26

2.3.1 基于注解编写Echo服务器26

2.3.2 基于注解编写Echo客户端28

2.4 基于API实现30

2.4.1 基于API编写Echo服务器30

2.4.2 基于API编写Echo客户端31

2.5 构建并运行32

2.6 小结34

3章 Dubbo注册中心35

3.1 注册中心概述35

3.1.1 工作流程36

3.1.2 数据结构37

3.1.3 ZooKeeper原理概述37

3.1.4 Redis原理概述39

3.2 订阅/发布40

3.2.1 ZooKeeper的实现40

3.2.2 Redis的实现44

3.3 缓存机制48

3.3.1 缓存的加载49

3.3.2 缓存的保存与更新50

3.4 重试机制50

3.5 设计模式51

3.5.1 模板模式51

3.5.2 工厂模式52

3.6 小结54

4章 Dubbo扩展点加载机制55

4.1 加载机制概述55

4.1.1 Java SPI56

4.1.2 扩展点加载机制的改进57

4.1.3 扩展点的配置规范59

4.1.4 扩展点的分类与缓存60

4.1.5 扩展点的特性61

4.2 扩展点注解62

4.2.1 扩展点注解:@SPI62

4.2.2 扩展点自适应注解:@Adaptive63

4.2.3 扩展点自动激活注解:@Activate65

4.3 EtensionLoader的工作原理66

4.3.1 工作流程66

4.3.2 getEtension的实现原理67

4.3.3 getAdaptiveEtension的实现原理70

4.3.4 getActivateEtension的实现原理73

4.3.5 EtensionFactory的实现原理73

4.4 扩展点动态编译的实现76

4.4.1 总体结构77

4.4.2 Javassist动态代码编译78

4.4.3 JDK动态代码编译79

4.5 小结80

5章 Dubbo启停原理解析81

5.1 配置解析81

5.1.1 基于schema设计解析82

5.1.2 基于XML配置原理解析85

5.1.3 基于注解配置原理解析91

5.2 服务暴的实现原理97

5.2.1 配置承载初始化97

5.2.2 远程服务的暴机制97

5.2.3 本地服务的暴机制5

5.3 服务消费的实现原理6

5.3.1 单注册中心消费原理6

5.3.2 多注册中心消费原理113

5.3.3 直连服务消费原理114

5.4 优雅停机原理解析115

5.5 小结116

6章 Dubbo远程调用117

6.1 Dubbo调用介绍117

6.2 Dubbo协议详解119

6.3 编原理122

6.3.1 Dubbo协议编码器123

6.3.2 Dubbo协议128

6.4 Telnet调用原理136

6.4.1 Telnet指令解析原理136

6.4.2 Telnet实现健康监测140

6.5 ChannelHandler141

6.5.1 核心Handler和线程模型141

6.5.2 Dubbo请求响应Handler145

6.5.3 Dubbo心跳Handler148

6.6 小结150

7章 Dubbo集容错151

7.1 Cluster层概述151

7.2 容错机制的实现153

7.2.1 容错机制概述153

7.2.2 Cluster接口关系155

7.2.3 Failover策略157

7.2.4 Failfast策略158

7.2.5 Failsafe策略158

7.2.6 Failback策略159

7.2.7 Available策略160

7.2.8 Broadcast策略160

7.2.9 Forking策略161

7.3 Directory的实现162

7.3.1 总体实现162

7.3.2 RegistryDirectory的实现163

7.4 路由的实现166

7.4.1 路由的总体结构166

7.4.2 条件路由的参数规则167

7.4.3 条件路由的实现168

7.4.4 文件路由的实现169

7.4.5 脚本路由的实现170

7.5 负载均衡的实现171

7.5.1 装后的负载均衡171

7.5.2 负载均衡的总体结构173

7.5.3 Random负载均衡175

7.5.4 RoundRobin负载均衡176

7.5.5 LeastActive负载均衡178

7.5.6 一致性Hash负载均衡179

7.6 Merger的实现181

7.6.1 总体结构181

7.6.2 MergeableClusterInvoker机制183

7.7 Mock185

7.7.1 Mock常见的使用方式185

7.7.2 Mock的总体结构186

7.7.3 Mock的实现原理187

7.8 小结189

8章 Dubbo扩展点190

8.1 Dubbo核心扩展点概述190

8.1.1 扩展点的背景191

8.1.2 扩展点整体架构191

8.2 RPC层扩展点192

8.2.1 Proy层扩展点192

8.2.2 Registry层扩展点194

8.2.3 Cluster层扩展点195

8.3 Remote层扩展点198

8.3.1 Protocol层扩展点199

8.3.2 Echange层扩展点202

8.3.3 Transport层扩展点203

8.3.4 Serialize层扩展点206

8.4 其他扩展点207

9章 Dubbo特性2

9.1 Dubbo特性概述2

9.2 服务分组和版本211

9.3 参数回调214

9.4 隐式参数217

9.5 异步调用218

9.6 泛化调用219

9.7 上下文信息220

9.8 Telnet作221

9.9 Mock调用224

9. 结果缓存226

9.11 小结226

章 Dubbo过滤器227

.1 Dubbo过滤器概述227

.1.1 过滤器的使用228

.1.2 过滤器的总体结构228

.2 过滤器链初始化的实现原理231

.3 服务提供者过滤器的实现原理233

.3.1 AccessLogFilter的实现原理233

.3.2 EecuteLimitFilter的实现原理234

.3.3 ClassLoaderFilter的实现原理235

.3.4 ContetFilter的实现原理237

.3.5 EceptionFilter的实现原理237

.3.6 TimeoutFilter的实现原理238

.3.7 TokenFilter的实现原理238

.3.8 TpsLimitFilter的实现原理239

.4 消费者过滤器的实现原理240

.4.1 ActiveLimitFilter的实现原理240

.4.2 ConsumerContetFilter的实现原理242

.4.3 DeprecatedFilter的实现原理242

.4.4 FutureFilter的实现原理243

.5 小结243

1章 Dubbo注册中心扩展实践245

11.1 etcd背景介绍245

11.2 etcd数据结构设计246

11.3 构建可运行的注册中心248

11.3.1 扩展Transporter实现248

11.3.2 扩展RegistryFactory实现249

11.3.3 新增JEtcdClient实现250

11.3.4 扩展FailbackRegistry实现260

11.3.5 编写单元测试263

11.4 搭建etcd集并在Dubbo中运行263

11.4.1 单机启动etcd264

11.4.2 集启动etcd265

11.5 小结266

2章 Dubbo服务治理平台267

12.1 服务治理平台总体结构267

12.2 服务治理平台的实现原理269

12.3 小结273

3章 Dubbo未来展望274

13.1 Dubbo未来生态274

13.1.1 开源现状274

13.1.2 后续发展275

13.2 云原生281

13.2.1 面临的挑战281

13.2.2 Service Mesh简介283

13.2.3 Dubbo Mesh284

13.3 小结285



分布式微服务架构:原理与实战

89

978-7-302-53781-6

黄文毅

分布式;架构;微服务架构;Java编程 程序设计







随着互联网技术的发展,架构由单体架构、垂直MVC架构、SOA服务化、分布式服务演变到分布式微服务架构,这是互联网企业架构的必经之路。分布式微服务架构涵盖的技术面广,知识点多。本书旨在让更多计算机从业者熟悉一个完整的分布式微服务架构所涉及的基础概念、涵盖的技术以及实战开发。

本书蕴含的知识体系甚广,1~2章主要讲解架构是如何向前演化发展的以及阅读本书之前需要准备的环境。3~5章主要讲解服务之间的RPC调用、通信协议等。6~7章主要讲解服务路由以及服务注册中心的原理和实践。8章主要讲解服务调用。9章主要讲解服务容器化以及如何部署和发布服务。10~11章主要讲解服务限流、降级、容错以及熔断等技术。12~13章主要讲解如何搭建服务日志和监控体系。15章主要讲解配置中心的原理以及如何搭建配置中心。16章主要讲解分布式数据库、分布式缓存、分布式事务、分布式Session以及服务如何通过Kafka解耦。17章主要讲解微服务如何测试。18章主要讲解目前主流的分布式微服务架构案例。

本书适用于所有Java编程语言开发人员、分布式微服务架构爱好者以及计算机的学生等。







本书是一本关于分布式服务架构的专著,采用Intellij IDEA新版本进行概念讲解与代码开发。

分布式服务架构是大型互联网公司采用的架构。本书依托工作实践,结合大量案例全方位剖析了分布式服务框架的设计原则和原理,涵盖服务架构演进、服务注册、服务路由、服务治理、服务限流、服务降级与容错等内容;同时,对基于Docker部署微服务和基于微服务架构开发、部署及运维业务进行了详细的论述。

本书注重理论与实战相结合,涵盖分布式服务架构开发中常用的知识点,内容详尽,代码可读性及可作性强。在概念讲解上尽可能通俗易懂,避免艰深。在内容编排上,力图使各章节有机结合起来,给读者一个完整的分布式服务的架构蓝图。

本书主要面向架构师、设计师、软件开发工程师、测试开发工程师以及对互联网分布式架构感兴趣的相关人士阅读









黄文毅,CSDN博客专家,CSDN学院、网易学院和腾讯学院等网络学院讲师。曾就职于厦门星耀蓝图科技有限公司(为浦发银行、兴业银行、南京银行、湖南农信银行等银行开发)和上海美团(从事美团和大众点评后端开发工作),目前就职于厦门美图科技有限公司,从事美图秀秀和美拍后端开发工作。 本书注重理论与实战相结合,涵盖分布式服务架构开发中常用的知识点,内容详尽,代码可读性及可作性强



















目   录



1章  从架构演进启程 1

1.1  水平分层架构 1

1.1.1  应用架构概述 1

1.1.2  MVC架构/水平分层架构 2

1.2   SOA服务化架构 3

1.2.1  SOA概述 4

1.2.2  SOA的特征 4

1.2.3  SOA面临的问题 5

1.3  分布式微服务架构 5

1.3.1  微服务概述 5

1.3.2  SOA与微服务 5

1.3.3  微服务架构的特点 6

1.3.4  微服务架构的缺点 6

1.3.5  微服务架构全景图 7

1.3.6  微服务类型 8

1.3.7  微服务拆分原则与步骤 9

2章  微服务开发框架 11

2.1  环境准备 11

2.1.1  安装JDK 11

2.1.2  安装 Intellij IDEA 14

2.1.3  安装 Apache Maven 14

2.2  一分钟快速搭建Spring Boot项目 15

2.2.1  使用Spring Initializr新建项目 15

2.2.2  测试 18

2.3  Spring Boot简单介绍 18

2.3.1  Spring Boot核心功能及特性 19

2.3.2  Spring Boot的缺点 20

2.4  Spring Boot目录介绍 20

2.4.1  Spring Boot工程目录 20

2.4.2  Spring Boot入口类 21

2.4.3  Spring Boot测试类 22

2.4.4  pom文件 23

2.5  Spring Boot生产级特性 24

2.5.1  应用监控 24

2.5.2  健康检查 28

2.5.3  跨域访问 29

2.5.4  外部配置 30

3章  分布式RPC框架 31

3.1  RPC框架概述 31

3.1.1  RPC的定义 31

3.1.2  RPC核心组件 31

3.1.3  RPC调用过程 32

3.1.4  RPC框架调用分类 33

3.1.5  RPC框架性能 35

3.1.6  RPC框架与分布式服务框架 35

3.2  RPC框架 36

3.2.1  RMI远程方法调用 36

3.2.2  Thrift 37

3.2.3  Hessian 38

3.2.4  Avro-RPC 38

3.2.5  gRPC 38

3.2.6  其他RPC框架 39

4章  序列化与反序列化 40

4.1  序列化与反序列化 40

4.1.1  序列化/反序列化概念 40

4.1.2  序列化/反序列化特性 41

4.2  常用序列化框架 41

4.2.1  Java默认序列化 41

4.2.2  XML序列化框架 46

4.2.3  JSON序列化框架 48

4.2.4  ProtoBuf序列化框架 50

5章  微服务底层通信与协议 54

5.1  Java网络通信 54

5.1.1  传统BIO编程 54

5.1.2  伪异步I/O编程 60

5.1.3  NIO编程 62

5.2  Netty框架 78

5.2.1  Netty概述 78

5.2.2 个Netty应用程序 78

5.2.3  Netty架构设计 84

5.3  分布式服务框架协议 89

5.3.1  主流公有协议 89

5.3.2  私有协议设计 90

6章  服务路由与负载均衡 94

6.1  服务路由概述 94

6.1.1  服务路由的定义 94

6.1.2  服务信息存放方式 94

6.2  负载均衡概述 95

6.2.1  Ngin的定义 95

6.2.2  负载均衡的实现 95

6.2.3  负载均衡算法 98

7章  微服务注册中心 103

7.1  了解微服务注册中心 103

7.1.1  注册中心几个概念 103

7.1.2  注册中心 104

7.2  ZooKeeper实现服务注册中心 104

7.2.1  ZooKeeper概述 104

7.2.2  ZooKeeper的原理 105

7.2.3  ZooKeeper的安装 106

7.2.4  ZooKeeper搭建集环境 109

7.2.5  ZooKeeper集总体架构 110

7.2.6  命令行客户端zkCli.sh 112

7.2.7  ZkClient连接ZooKeeper 116

7.2.8  ZooKeeper实现服务注册与发现 120

8章  微服务框架服务调用与容错 122

8.1  服务调用概述 122

8.2  服务调用方式 123

8.2.1  同步服务调用 123

8.2.2  异步服务调用 125

8.2.3  并行服务调用 130

8.2.4  泛化调用 132

9章  分布式微服务封装与部署 133

9.1  微服务封装技术 133

9.1.1  Docker概述 133

9.1.2  Docker的基本概念 135

9.1.3  Docker架构 135

9.1.4  Docker的安装 137

9.1.5  Docker的常用命令 138

9.1.6  制作镜像 142

9.1.7  使用Dockerfile构建镜像 144

9.1.8  Spring Boot集成Docker 147

9.2  微服务部署概述 150

9.2.1  蓝绿部署 150

9.2.2  滚动发布 152

9.2.3  灰度发布/金丝雀部署 154

10章  分布式服务限流 155

10.1  服务限流概述 155

10.1.1  限流定义 155

10.1.2  限流算法 155

10.2  限流设计 157

10.2.1  限流设计原理 157

10.2.2  分级限流 158

11章  服务降级、熔断、调度 159

11.1  服务降级概述 159

11.2  服务降级方式 159

11.2.1  服务降级开关 159

11.2.2  自动降级 160

11.2.3  读服务降级 161

11.2.4  写服务降级 161

11.3  服务容错策略 161

11.3.1  失败转移(Failover) 162

11.3.2  失败自动恢复(Failback) 162

11.3.3  快速失败(Failfast) 162

11.3.4  失败缓存(FailCache) 162

11.4  Hystri降级、熔断 162

11.4.1  Hystri简介 162

11.4.2  Hystri实现降级/熔断 164

11.5  服务优先级设计 165

11.5.1  服务实例数量调整 165

11.5.2  加权优先级队列 166

11.5.3  线程调度器 167

12章  服务版本与服务发布 168

12.1  服务概述 168

12.2  服务版本 168

12.2.1  服务版本概述 168

12.2.2  Snapshot和Release 169

12.3  服务发布 169
..........


暂时没有内容介绍,请见谅!


暂时没有目录,请见谅!



^_^:b74e08257bc3a1966053906085d74e4a



^_^:c56ea5458c32199620726cfbc3fcf467