Netty实战PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:(美)诺曼·毛瑞尔(Norman Maurer),马文·艾伦·沃尔夫泰尔
- 出 版 社:北京:人民邮电出版社
- 出版年份:2017
- ISBN:9787115453686
- 页数:252 页
第一部分 Netty的概念及体系结构 3
第1章 Netty——异步和事件驱动 3
1.1 Java网络编程 4
1.1.1 Java NIO 5
1.1.2 选择器 6
1.2 Netty简介 6
1.2.1 谁在使用Netty 7
1.2.2 异步和事件驱动 8
1.3 Netty的核心组件 9
1.3.1 Channel 9
1.3.2 回调 9
1.3.3 Future 10
1.3.4 事件和ChannelHandler 11
1.3.5 把它们放在一起 12
1.4 小结 13
第2章 你的第一款Netty应用程序 14
2.1 设置开发环境 14
2.1.1 获取并安装Java开发工具包 14
2.1.2 下载并安装IDE 15
2.1.3 下载和安装Apache Maven 15
2.1.4 配置工具集 16
2.2 Netty客户端/服务器概览 16
2.3 编写Echo服务器 17
2.3.1 ChannelHandler和业务逻辑 17
2.3.2 引导服务器 18
2.4 编写Echo客户端 21
2.4.1 通过ChannelHandler实现客户端逻辑 21
2.4.2 引导客户端 22
2.5 构建和运行Echo服务器和客户端 24
2.5.1 运行构建 24
2.5.2 运行Echo服务器和客户端 27
2.6 小结 29
第3章 Netty的组件和设计 30
3.1 Channel、EventLoop和ChannelFuture 30
3.1.1 Channel接口 31
3.1.2 EventLoop接口 31
3.1.3 ChannelFuture接口 32
3.2 ChannelHandler和ChannelPipeline 32
3.2.1 ChannelHandler接口 32
3.2.2 ChannelPipeline接口 33
3.2.3 更加深入地了解ChannelHandler 34
3.2.4 编码器和解码器 35
3.2.5 抽象类SimpleChannel-InboundHandler 35
3.3 引导 36
3.4 小结 37
第4章 传输 38
4.1 案例研究:传输迁移 38
4.1.1 不通过Netty使用OIO和NIO 39
4.1.2 通过Netty使用OIO和NIO 41
4.1.3 非阻塞的Netty版本 42
4.2 传输API 43
4.3 内置的传输 45
4.3.1 NIO——非阻塞I/O 46
4.3.2 Epoll——用于Linux的本地非阻塞传输 47
4.3.3 OIO——旧的阻塞I/O 48
4.3.4 用于JVM内部通信的Local传输 48
4.3.5 Embedded传输 49
4.4 传输的用例 49
4.5 小结 51
第5章 ByteBuf 52
5.1 ByteBuf的API 52
5.2 ByteBuf类—Netty的数据容器 53
5.2.1 它是如何工作的 53
5.2.2 ByteBuf的使用模式 53
5.3 字节级操作 57
5.3.1 随机访问索引 57
5.3.2 顺序访问索引 57
5.3.3 可丢弃字节 58
5.3.4 可读字节 58
5.3.5 可写字节 59
5.3.6 索引管理 59
5.3.7 查找操作 60
5.3.8 派生缓冲区 60
5.3.9 读/写操作 62
5.3.10 更多的操作 64
5.4 ByteBufHolder接口 65
5.5 ByteBuf分配 65
5.5.1 按需分配:Byte-BufAllocator接口 65
5.5.2 Unpooled缓冲区 67
5.5.3 ByteBufUtil类 67
5.6 引用计数 67
5.7 小结 68
第6章 ChannelHandler和ChannelPipeline 70
6.1 ChannelHandler家族 70
6.1.1 Channel的生命周期 70
6.1.2 ChannelHandler的生命周期 71
6.1.3 ChannelInboundHandler接口 71
6.1.4 ChannelOutboundHandler接口 73
6.1.5 ChannelHandler适配器 74
6.1.6 资源管理 74
6.2 ChannelPipeline接口 76
6.2.1 修改ChannelPipeline 78
6.2.2 触发事件 79
6.3 ChannelHandlerContext接口 80
6.3.1 使用Channel-HandlerContext 82
6.3.2 ChannelHandler和ChannelHandlerContext的高级用法 84
6.4 异常处理 86
6.4.1 处理入站异常 86
6.4.2 处理出站异常 87
6.5 小结 88
第7章 EventLoop和线程模型 89
7.1 线程模型概述 89
7.2 EventLoop接口 90
7.2.1 Netty 4中的I/O和事件处理 92
7.2.2 Netty 3中的I/O操作 92
7.3 任务调度 93
7.3.1 JDK的任务调度API 93
7.3.2 使用EventLoop调度任务 94
7.4 实现细节 95
7.4.1 线程管理 95
7.4.2 EventLoop/线程的分配 96
7.5 小结 98
第8章 引导 99
8.1 Bootstrap类 99
8.2 引导客户端和无连接协议 101
8.2.1 引导客户端 102
8.2.2 Channel和EventLoop-Group的兼容性 103
8.3 引导服务器 104
8.3.1 ServerBootstrap类 104
8.3.2 引导服务器 105
8.4 从Channel引导客户端 107
8.5 在引导过程中添加多个ChannelHandler 108
8.6 使用Netty的Channel-Option和属性 110
8.7 引导DatagramChannel 111
8.8 关闭 112
8.9 小结 112
第9章 单元测试 113
9.1 EmbeddedChannel概述 113
9.2 使用EmbeddedChannel测试ChannelHandler 115
9.2.1 测试入站消息 115
9.2.2 测试出站消息 118
9.3 测试异常处理 119
9.4 小结 121
第二部分 编解码器 125
第10章 编解码器框架 125
10.1 什么是编解码器 125
10.2 解码器 125
10.2.1 抽象类ByteTo-MessageDecoder 126
10.2.2 抽象类ReplayingDecoder 127
10.2.3 抽象类Message-ToMessageDecoder 128
10.2.4 TooLong-FrameException类 130
10.3 编码器 131
10.3.1 抽象类Message-ToByteEncoder 131
10.3.2 抽象类Message-ToMessageEncoder 132
10.4 抽象的编解码器类 133
10.4.1 抽象类Byte-ToMessageCodec 133
10.4.2 抽象类Message-ToMessageCodec 134
10.4.3 CombinedChannel-DuplexHandler类 137
10.5 小结 138
第11章 预置的ChannelHandler和编解码器 139
11.1 通过SSL/TLS保护Netty应用程序 139
11.2 构建基于Netty的HTTP/HTTPS应用程序 141
11.2.1 HTTP解码器、编码器和编解码器 141
11.2.2 聚合HTTP消息 143
11.2.3 HTTP压缩 144
11.2.4 使用HTTPS 145
11.2.5 WebSocket 146
11.3 空闲的连接和超时 148
11.4 解码基于分隔符的协议和基于长度的协议 150
11.4.1 基于分隔符的协议 150
11.4.2 基于长度的协议 153
11.5 写大型数据 155
11.6 序列化数据 157
11.6.1 JDK序列化 157
11.6.2 使用JBoss Marshalling进行序列化 157
11.6.3 通过Protocol Buffers序列化 159
11.7 小结 160
第三部分 网络协议 163
第12章 WebSocket 163
12.1 WebSocket简介 163
12.2 我们的WebSocket示例应用程序 164
12.3 添加WebSocket支持 165
12.3.1 处理HTTP请求 165
12.3.2 处理WebSocket帧 168
12.3.3 初始化Channel-Pipeline 169
12.3.4 引导 171
12.4 测试该应用程序 173
12.5 小结 176
第13章 使用UDP广播事件 177
13.1 UDP的基础知识 177
13.2 UDP广播 178
13.3 UDP示例应用程序 178
13.4 消息POJO:LogEvent 179
13.5 编写广播者 180
13.6 编写监视器 185
13.7 运行LogEvent-Broadcaster和LogEventMonitor 187
13.8 小结 189
第四部分 案例研究 193
第14章 案例研究,第一部分 193
14.1 Droplr——构建移动服务 193
14.1.1 这一切的起因 193
14.1.2 Droplr是怎样工作的 194
14.1.3 创造一个更加快速的上传体验 194
14.1.4 技术栈 196
14.1.5 性能 199
14.1.6 小结——站在巨人的肩膀上 200
14.2 Firebase——实时的数据同步服务 200
14.2.1 Firebase的架构 201
14.2.2 长轮询 201
14.2.3 HTTP 1.1 keep-alive和流水线化 204
14.2.4 控制SslHandler 205
14.2.5 Firebase小结 207
14.3 Urban Airship——构建移动服务 207
14.3.1 移动消息的基础知识 207
14.3.2 第三方递交 208
14.3.3 使用二进制协议的例子 209
14.3.4 直接面向设备的递交 211
14.3.5 Netty擅长管理大量的并发连接 212
14.3.6 Urban Airship小结——跨越防火墙边界 213
14.4 小结 214
第15章 案例研究,第二部分 215
15.1 Netty在Facebook的使用:Nifty和Swift 215
15.1.1 什么是Thrift 215
15.1.2 使用Netty改善Java Thrift的现状 216
15.1.3 Nifty服务器的设计 217
15.1.4 Nifty异步客户端的设计 220
15.1.5 Swift:一种更快的构建Java Thrift服务的方式 221
15.1.6 结果 221
15.1.7 Facebook小结 224
15.2 Netty在Twitter的使用:Finagle 224
15.2.1 Twitter成长的烦恼 224
15.2.2 Finagle的诞生 224
15.2.3 Finagle是如何工作的 225
15.2.4 Finagle的抽象 230
15.2.5 故障管理 231
15.2.6 组合服务 232
15.2.7 未来:Netty 232
15.2.8 Twitter小结 233
15.3 小结 233
附录 Maven介绍 234
- 《Maya 2018完全实战技术手册》来阳编著 2019
- 《Python3从入门到实战》董洪伟 2019
- 《大数据Hadoop 3.X分布式处理实战》吴章勇,杨强 2020
- 《星空摄影后期实战》阿五在路上著 2020
- 《半小时漫画股票实战法》财经杂质著 2019
- 《深度学习与飞桨PaddlePaddle Fluid实战》于祥 2019
- 《数字插画实战 人像创作30例》王鲁光著 2019
- 《2017国家执业药师资格考试 全考点实战通关必备 中药学综合知识与技能 第3版》国家执业药师资格考试命题研究专家组 2017
- 《微软Azure实战参考》李竞,陈勇华编著 2019
- 《Cocos Creator微信小游戏开发实战》王绍明编著 2020
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019