Netty学习笔记
netty学习笔记
- 1.BIO NIO 和AIO
- 1.1 BIO
- 1.2 NIO
1.BIO NIO 和AIO
1.1 BIO
1.2 NIO
- selector选择器 channel 通道 Buffer 缓冲区
- ServiceSocketChannel 代表服务端
当客户端跟服务端建立socket连接时 服务端ServiceSocketChannel (ServiceSocketChannelImpl)会为客户端通道建 SocketChannel(SocketChannelImpl) - 常用的 Channel 类有:FileChannel、DatagramChannel、ServerSocketChannel 和 SocketChannel。【ServerSocketChanne 类似 ServerSocket、SocketChannel 类似 Socket】
- RandomAccessFile类—类似于输入输出流 可以进行设定读写操作
- NIO还可以使用多个buffer进行读写操作
- NIO逻辑:
首先会新建ServerSocketChannel 绑定地址 设置非阻塞
当有客户端连接时会ServerSocketChannel 会创建SocketChannel
然后我们将SocketChannel通过register(Selector,qos)方法注册到Selector 并返回一个selectKey
同时 Selector会监听select()方法 返回有事件发生的selectKey 集合
接着我们可以通过selectkey中channel方法得到客户端socketChannel
最后通过socketChannel完成业务
还没有评论,来说两句吧...