随笔分类 - Netty系列
摘要:Select 首先什么是多路复用:一个进程监听多个文件描述符,Linux中一切皆文件,也就是一个进程管理多个客户端连接。 Select模型不断扫描文件描述符集合 Select模型缺点: 1.一个进程打开的fd(文件描述符)是有限制的,默认1024,所以select模型最大的并发数就是1024个(还要
阅读全文
摘要:NIO概述 从JDK1.4开始,引入了新的I/O类库,它们位于java.nio包中,其目的在于提高I/O的操作效率。nio是new io的缩写。 参考文章:NIO BIO AIO区别 java.nio包引入了四个关键的数据类型: Buffer:缓冲区,临时存放输入或输出数据。 Charset:把具有
阅读全文
摘要:Socket实现网络通信(阻塞式IO) 阻塞式IO在两个地方会阻塞 在使用IO和Socket构造网络服务时 接收连接:accept(),接收请求数据,发送响应数据都可能引起阻塞的操作。(Handler必须使用多线程异步操作,不然别的连接进不来) 线程从Socket输入流读数据时,如果没有足够的数据就
阅读全文