架构探险:从零开始写分布式服务框架 9787121319594pdf下载

架构探险:从零开始写分布式服务框架 9787121319594百度网盘pdf下载

作者:
简介:架构探险:从零开始写分布式服务框架 9787121319594
出版社:
出版时间:2017-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

书名:架构探险:从零开始写分布式服务框架

定价:79.00元

作者:李业兵

出版社:电子工业出版社

出版日期:2017-07-01

ISBN:9787121319594

字数:

页码:

版次:1

装帧:平装-胶订

开本:16开

商品重量:0.4kg

编辑推荐


★一个长期战斗在一线的美团-大众点评技术专家

★详细讲述了分布式服务框架的底层实现细节

★清楚梳理了分布式服务框架周边的知识点

★从零开始构建了一个分布式服务框架

★实战操练的代码透漏出作者身经百战的深厚功力

★技术原理和内部实现分析提升技术理解和洞察力

★目前企业真正使用微服务非常少,而使用分布式服务框架比较多,实现相对简单,作者所在公司美团在分布式服务框架实现方面具有丰富的经验。

★《架构探险:从零开始写分布式服务框架》能顺利地带领你走出架构险境,让你对分布式服务框架所涉及的技术了然于胸,并能合理地利用这些技术,搭建符合自身需求的分布式服务框架。

内容提要


分布式服务框架目前已经是互联网公司实现SOA服务化架构的基础设施,对于一般的开发而言,自己要独立实现一个分布式服务框架,还是有相当的难度的。本书围绕如何从零开始实现一个可用的分布式服务框架,介绍了实现分布式服务框架所需技术的方方面面。对于从事开发行业的程序员有很大的现实价值。能够从中学习到很多的实用技术,了解并掌握实现分布式服务框架所需的思想以及技术。

目录


章 常用的RPC框架1
1.1 RPC框架原理1
1.2 RMI介绍2
1.2.1 原生RMI代码示例3
1.2.2 RMI穿透防火墙5
1.3 CXF/Axis2介绍7
1.3.1 CXF介绍7
1.3.2 Axis2介绍14
1.4 Thrift介绍21
1.4.1 Thrift工作原理介绍23
1.4.2 Thrift IDL语法说明26
1.4.3 基于Apache Thrift的Java版完整案例28
1.4.4 基于Java注解的简化实现36
1.5 gRPC介绍42
1.5.1 protobuf3语法介绍43
1.5.2 gRPC使用示例45
1.6 Client介绍53
1.6.1 构建HttpClient对象54
1.6.2 构建URI对象55
1.6.3 构建请求对象(HttpGet、HttpPost)56
1.6.4 HttpClient发起调用及获取调用返回结果56
1.7 实现自己的RPC框架61
1.8 RPC框架与分布式服务框架的区别68
1.9 本章小结68
第2章 分布式服务框架总体架构与功能69
2.1 面向服务的体系架构(SOA)69
2.1.1 面向服务架构范式69
2.1.2 服务拆分原则71
2.2 分布式服务框架现实需求72
2.3 分布式服务框架总体架构及所需的技术概述72
2.4 本章小结74
第3章 分布式服务框架序列化与反序列化实现75
3.1 序列化原理及常用的序列化介绍75
3.2 Java默认的序列化77
3.3 XML序列化框架介绍80
3.4 JSON序列化框架介绍82
3.5 Hessian序列化框架介绍87
3.6 protobuf序列化框架介绍88
3.7 protostuff序列化框架介绍93
3.8 Thrift序列化框架介绍98
3.9 Avro序列化框架介绍100
3.9.1 Avro介绍100
3.9.2 Avro IDL语言介绍101
3.9.3 Schema定义介绍103
3.9.4 Maven配置及使用IDL与Schema自动生成代码103
3.9.5 Avro序列化/反序列化实现105
3.10 JBoss Marshalling序列化框架介绍110
3.11 序列化框架的选型112
3.12 实现自己的序列化工具引擎113
3.13 本章小结118
第4章 实现分布式服务框架服务的发布与引入119
4.1 Spring Framework框架概述119
4.1.1 Spring Framework介绍119
4.1.2 Spring Framework周边生态项目介绍121
4.2 FactoryBean的秘密122
4.2.1 FactoryBean的作用及使用场景123
4.2.2 FactoryBean实现原理及示例说明124
4.3 Spring框架对于已有RPC框架集成的支持127
4.3.1 Spring支持集成RPC框架介绍127
4.3.2 基于RmiProxyFactoryBean 实现RMI与Spring的集成128
4.3.3 基于HttpInvokerProxyFactoryBean实现 Invoker与Spring的集成131
4.3.4 基于HessianProxyFactoryBean实现Hessian与Spring的集成133
4.4 实现自定义服务框架与Spring的集成136
4.4.1 实现远程服务的发布136
4.4.2 实现远程服务的引入144
4.5 在Spring中定制自己的XML标签150
4.6 本章小结158
第5章 分布式服务框架注册中心159
5.1 服务注册中心介绍159
5.2 ZooKeeper实现服务的注册中心原理161
5.2.1 ZooKeeper介绍161
5.2.2 部署ZooKeeper161
5.2.3 ZkClient使用介绍164
5.2.4 ZooKeeper实现服务注册中心173
5.3 集成ZooKeeper实现自己的服务注册与发现175
5.3.1 服务注册中心服务提供方175
5.3.2 服务注册中心服务消费方176
5.3.3 服务注册中心实现178
5.4 本章小结189
第6章 分布式服务框架底层通信实现190
6.1 Java I/O模型及I/O类库的进化190
6.1.1 Linux下实现的I/O模型190
6.1.2 Java语言实现的I/O模型194
6.1.3 Java Classic I/O(Blocking I/O)介绍194
6.1.4 Java Non-blocking I/O(NIO)介绍211
6.1.5 NIO2及Asynchronous I/O介绍233
6.2 Netty使用介绍255
6.2.1 Netty开发入门256
6.2.2 Netty粘包/半包问题解决265
6.3 使用Netty构建服务框架底层通信320
6.3.1 构建分布式服务框架Netty服务端320
6.3.2 构建分布式服务框架服务调用端Netty客户端330
6.4 本章小结347
第7章 分布式服务框架软负载实现348
7.1 软负载的实现原理348
7.2 负载均衡常用算法349
7.2.1 软负载算法实现349
7.2.2 软负载加权算法实现350
7.2.3 软负载轮询算法实现351
7.2.4 软负载加权轮询算法实现352
7.2.5 软负载源地址hash算法实现354
7.3 实现自己的软负载机制355
7.4 软负载在分布式服务框架中的应用357
7.5 本章小结361
第8章 分布式服务框架服务治理362
8.1 服务治理介绍362
8.2 服务治理的简单实现364
8.2.1 服务分组路由实现364
8.2.2 简单服务依赖关系分析实现374
8.2.3 服务调用链路跟踪实现原理380
8.3 本章小结380
附录A 如何配置运行本书完成的分布式服务框架381

作者介绍


李业兵

先后在支付宝运营支撑事业部、去哪儿网酒店事业部任职高级开发工程师。于2015年加入猫眼电影(原美团网旗下电影事业部),负责交易业务线架构与开发工作。

擅长电商交易领域系统设计与架构,在电商交易领域系统架构设计方面积累了较为丰富的实践经验。

对高并发系统设计、服务化架构、互联网中间件开发保持着浓厚的兴趣。

文摘


序言