今天我来来看一下整个ChannelConfig的类的继承层次:
整个类结构来说还是比较好理解的,我就将作者的意图分析一下:
整个ChannelConfig的类的继承层次我感觉是非常明了的:
首先在顶层的ChannelConfig,这个里面定义一个Channel可以设置的基本参数,一堆的options,还有相应的bufferFactory和pipelineFactory,以及connectTimeoutMillis参数,这里就不多讲了。
接下来有一个默认的ChannelConfig的实现,叫DefaultChannelConfig,在这个里面提供了默认的bufferFactory和connectTimeoutMillis的实现。
下面的SocketChannelConfig接口提供了设置socket的一些基本参数,比如tcpNoDelay、sendBufferSize等参数。
DefaultSocketChannelConfig类里面在构造函数的时候需要一个socket,然后在设置属性的时候直接将该属性设置到socket上面,这个类实现了SocketChannelConfig接口,同时也继承DefaultChannelConfig类,感觉bio下面直接使用这个就ok了。
然后针对nio的情况,作者又派生了一个NioSocketChannelConfig接口,这个里面有一些参数
"writeBufferHighWaterMark" "writeBufferLowWaterMark" "writeSpinCount" "receiveBufferSizePredictor" "receiveBufferSizePredictorFactory" 以及相应的get/set方法,这个是nio属性设置的重点,打算单独讲解。
处在这个上面最底层的是DefaultNioSocketChannelConfig,这个类实现DefaultSocketChannelConfig,以及NioSocketChannelConfig这个接口,这个在以后详细讲解。
关于UDP的diagram的就不详细讲解了,都差不多。
相关推荐
Netty基础,用于学习Netty,参考黑马程序员的netty教程
Java进阶技术-netty进阶之路
Netty进阶之路,跟着案例学Netty,李林峰大神新作。值得一读。
Netty进阶之路 跟着案例学Netty 整本书无密码,Netty进阶之路 跟着案例学Netty
《Netty进阶之路:跟着案例学Netty》中的案例涵盖了Netty的启动和停止、内存、并发多线程、性能、可靠性、安全等方面,囊括了Netty绝大多数常用的功能及容易让人犯错的地方。在案例的分析过程中,还穿插讲解了Netty...
Netty学习笔记_Springboot实现自定义协议.docx Netty学习笔记_Springboot实现自定义协议.docx Netty学习笔记_Springboot实现自定义协议.docx
《Netty进阶之路 跟着案例学Netty》_李林锋_2018-11-01
在本书中,作者将在过去几年实践中遇到的问题,以及Netty学习者咨询的相关问题,进行了归纳和总结,以问题案例做牵引,通过对案例进行剖析,讲解问题背后的原理,并结合Netty源码分析,让读者能够真正掌握Netty,在...
NULL 博文链接:https://asialee.iteye.com/blog/1768861
netty-3.1官网学习手册,中文版
学习netty源码,为后续rocketmq等学习打下基础
Netty全套学习资源(包括源码、笔记、学习文档等)
代码解压后可看到netty3和netty5实现的心跳处理案例,代码比较简单,适合初学者,欢迎大家交流学习,欢迎下载。。。。。
附件为韩顺平老师的netty教程学习资料。老师教学视频可以在B站去找。个人感觉很不错。如果有需要可以去看看。
Netty实践学习案例
Netty 框架学习 —— 第一个 Netty 应用(csdn)————程序
netty 学习之路 项目笔记 项目说明 1、所谓BIO编程,就是使用JDK1.4之前的api进行编程,在这里我们以ServerSocket和Socket为例进行讲解, 编写一个时间服务的C/S架构应用。 2、client可以发送请求指令"GET CURRENT ...
netty学习文件,实现http,websocket,protobuf方式,实现服务器与客户端通信。
在《Netty进阶之路:跟着案例学Netty》中,作者将在过去几年实践中遇到的问题,以及Netty学习者咨询的相关问题,进行了归纳和总结,以问题案例做牵引,通过对案例进行剖析,讲解问题背后的原理,并结合Netty源码分析...