- 软件大小:3.88MB
- 软件语言:简体中文
- 软件类型:国产软件
- 软件类别:电子阅读
- 更新时间:2018-04-14
- 软件授权:免费版
- 官方网站://www.9553.com
- 运行环境:XP/Win7/Win8/Win10
- 标签:电子书籍 netty教程
Calibre x64(电子书管理器) V3.47.1中文版
127.66MB/简体中文/7.5
30.1MB/简体中文/8.8
gb/t 6728-2017 结构用冷弯空心型钢标准pdf 最新版
1.59MB/简体中文/7.5
4.20MB/简体中文/8.8
15.8MB/简体中文/7.5
netty实战 pdf 中文版pdf对于Java网络方面的新手,是一本必不可少的书籍,该软件附有很多的开发内容,有需要的欢迎下载!
本书是为想要或者正在使用Java 从事高性能网络编程的人而写的,循序渐进地介绍了Netty各个方面的内容。本书共分为4 个部分:
第一部分详细地介绍Netty 的相关概念以及核心组件,
第二部分介绍自定义协议经常用到的编解码器,
第三部分介绍Netty 对于应用层高级协议的支持,会覆盖常见的协议及其在实践中的应用,
第四部分是几个案例研究。此外,附录部分会还简单地介绍Maven,以及如何通过使用Maven 编译和运行本书中的示例。
第一部分 Netty的概念及体系结构
第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
在我们开始之前,如果你了解Netty程序的一般结构和大致用法(客户端和服务器都有一个类似的结构)会更好。
一个Netty程序开始于Bootstrap类,Bootstrap类是Netty提供的一个可以通过简单配置来设置或"引导"程序的一个很重要的类。Netty中设计了Handlers来处理特定的"event"和设置Netty中的事件,从而来处理多个协议和数据。事件可以描述成一个非常通用的方法,因为你可以自定义一个handler,用来将Object转成byte[]或将byte[]转成Object;也可以定义个handler处理抛出的异常。
你会经常编写一个实现ChannelInboundHandler的类,ChannelInboundHandler是用来接收消息,当有消息过来时,你可以决定如何处理。当程序需要返回消息时可以在ChannelInboundHandler里write/flush数据。可以认为应用程序的业务逻辑都是在ChannelInboundHandler中来处理的,业务罗的生命周期在ChannelInboundHandler中。
Netty连接客户端端或绑定服务器需要知道如何发送或接收消息,这是通过不同类型的handlers来做的,多个Handlers是怎么配置的?Netty提供了ChannelInitializer类用来配置Handlers。ChannelInitializer是通过ChannelPipeline来添加ChannelHandler的,如发送和接收消息,这些Handlers将确定发的是什么消息。ChannelInitializer自身也是一个ChannelHandler,在添加完其他的handlers之后会自动从ChannelPipeline中删除自己。
所有的Netty程序都是基于ChannelPipeline。ChannelPipeline和EventLoop和EventLoopGroup密切相关,因为它们三个都和事件处理相关,所以这就是为什么它们处理IO的工作由EventLoop管理的原因。
Netty中所有的IO操作都是异步执行的,例如你连接一个主机默认是异步完成的;写入/发送消息也是同样是异步。也就是说操作不会直接执行,而是会等一会执行,因为你不知道返回的操作结果是成功还是失败,但是需要有检查是否成功的方法或者是注册监听来通知;Netty使用Futures和ChannelFutures来达到这种目的。Future注册一个监听,当操作成功或失败时会通知。ChannelFuture封装的是一个操作的相关信息,操作被执行时会立刻返回ChannelFuture。