- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章:引导Netty应用程序.pdf
九章:引导Netty应用程序
目录 [-]
1. 不同的引导类型
2. 引导客户端和无连接协议
1. 引导客户端的方法
2. 怎么引导客户端
3. 选择兼容通道实现
3. 使用ServerBootstrap引导服务器
1. 引导服务器的方法
2. 怎么引导服务器
4. 从Channel引导客户端
5. 添加多个ChannelHandler
6. 使用通道选项和属性
7. Summary
本章介绍
引导客户端和服务器
从Channel引导客户端
添加多个ChannelHandler
使用通道选项和属性
上一章学习了编写自己的ChannelHandler和编解码器并将它们添加到Channel的ChannelPipeline 中。本章将讲解如何将它们结合在
一起使用。
Netty提供了简单统一的方法来引导服务器和客户端。引导是配置Netty服务器和客户端程序的一个过程,Bootstrap允许这些应用程
序很容易的重复使用。Netty程序的客户端和服务器都可 使用Bootstrap,其 的是简化编码过程,Bootstrap还提供了一个机制就是让
一些组件(channels,pipeline,handlers等等)都可 在后台工作。本章将具体结合 下部分一起使用开发Netty程序:
EventLoopGroup
Channel
设置ChannelOption
Channel被注册后将调用ChannelHandler
添加指定的属性到Channel
设置本地和远程地址
绑定、连接(取决于类型)
知道如何使用各个Bootstrap后就可 使用它们配置服务器和客户端了。本章还将学习在什么会后可 共享一个Bootstrap 及为什
么这样做,结合我们之前学习的知识点来编写Netty程序。
9.1 同的引导类型
Netty包含了2个不同类型的引导,第一个是使用服务器的ServerBootstrap,用来接受客户端连接 及为已接受的连接创建子通道;
第二个是用于客户端的Bootstrap,不接受新的连接,并且是在父通道类完成一些操作。
还有一种情况是处理DatagramChannel实例,这些用于UDP协议,是无连接的。换句话说,由于UDP的性质,所 当处理UDP数据
时没有必要每个连接通道与TCP连接一样。因为通道不需要连接后才能发 数据,UDP是无连接协议。一个通道可 处理所有的数据而
不需要依赖子通道。
下图是引导的类关系图:
我们在前面讨论了许多用于客户端和服务器的知识,为了对客户端和服务器之间的关系提供了一个共同点,Netty使用
AbstractBootstrap类。通过一个共同的父类,在本章中讨论的客户端和服务器的引导程序能够重复使用通用功能,而无需复制代码或逻
辑。通常情况下,多个通道使用相同或非常类似的设置时有必要的。而不是为每一个通道创建一个新的引导,Netty使得
AbstractBootstrap可复制。也就是说克隆一个已配置的引导,其返回的是一个可重用而无需配置的引导。Netty 的克隆操作只能浅拷贝引
导的EventLoopGroup,也就是说EventLoopGroup在所有的克隆的通道中是共享的。这是一个好事情,克隆的通道一般是短暂的,例如
一个通道创建一个HTTP请求。
本章主要讲解Bootstrap和ServerBootstrap,首先我们来看看ServerBootstrap。
9.2 引导客户端和无连接协议
当需要引导客户端或一些无连接协议时,需要使用Bootstrap类。
9.2.1 引导客户端的方法
创建Bootstrap实例使用new关键字,下面是Bootstrap的方法:
group(...),设置EventLoopGroup,EventLoopGroup用来处理所有通道的IO事件
channel(...),设置通道类型
channelFactory(...),使用ChannelFactory来设置通道类型
localAddress(...),设置本地地址,也可 通过bind(...)或connect(...)
您可能关注的文档
- 碳纳米管-二氧化锰复合材料.pdf
- 磨粒流加工在航空发动机制造中的应用.pdf
- 磷酸活化法制备梧桐叶活性炭及表征.pdf
- 磷酸甘油酸变位酶.pdf
- 稀土矿石四种前处理方法比较.pdf
- 端口号大全Windows系统.doc
- 竹笋热风薄层干燥特性及动力学分析.pdf
- 第一、二节 可靠性特征量.ppt
- 第三章 地质条件与井身结构设计.pdf
- 第五届大学生物理教学技能展评通知.pdf
- 2025年中国pvdf板行业市场前景预测及投资价值评估分析报告.docx
- 2025年阀门企业市场分析报告.docx
- 中国行星齿轮减速箱行业市场前景预测及投资价值评估分析报告.docx
- 云南省临沧地区中学2025届高三下学期仿真模拟考试数学试卷(含答案解析).docx
- 可靠性分析报告范文.docx
- 2025年聚氨酯项目可行性研究报告(可编辑).docx
- 2025年中国照明电器行业市场专项调研及投资前景可行性预测报告(目.docx
- 2025年中国调节型温控器行业市场前景预测及投资价值评估分析报告.docx
- 2025年中国植物工厂市场监测及发展前景预测报告.docx
- 2025年智能家居系统功能整合方案施工方案(功能整合与用户体验).docx
文档评论(0)