NIO and Netty
高并发IO的底层原理和Netty的原理分析
Forlogen
无论世事如何,你都要成为一个更优秀的人。
展开
-
从BIO、NIO到Linux下的IO多路复用
文章目录一、传统BIO、NIO对比1.1 传统BIO模型分析1.2 NIO是怎么工作的1.2.1 结合事件模型使用NIO同步非阻塞特性1.3. 小结:两者的主要区别1.3.1 面向流与面向缓冲1.3.2 阻塞与非阻塞IO二、NIO的核心部分2.1 Channel2.2 Buffer2.3 Selectors2.4 Proactor与Reactor2.5 NIO存在的问题2.6 适用范围三、Linux系统IO多路复用 select、poll与epoll3.1 前言:系统层面概念说明3.1.1 用户空间与内核空转载 2020-10-31 15:21:33 · 445 阅读 · 1 评论 -
Java nio中flip方法如何实现写到读的模式转换?
flip方法如何实现写到读的模式转换?Buffer本质上就是一块可以重复进行读写的内存空间,为了理解它是如何使用内存来进行读写,需要理解如下的三个概念:capacity:容量,缓冲区的总长度,如果缓冲区已满还需要写入数据,就需要先清空再写入position:位置,下一个要操作的数据元素的位置。起始位置为0,随着数据的写入不断的后移,最大为capacity - 1。当从buffer中读取数据时,position重置回0,记录下一个要读取数据的位置limit:缓冲区中不可操作的下一个元素的位置,用于原创 2020-10-25 16:16:13 · 1073 阅读 · 0 评论 -
一文理解nio中的三大核心要素Channel、Buffer和Selector
文章目录1. Overview2. Channel3. Buffer4. Scater、Gather5. Selector6. 参考1. OverviewJava中的NIO主要包括三个核心概念:Channels:管道Buffers:缓冲区Selectors:选择器当然nio中还有很多其他的类和成分,但是上述的三个是其他所有实现的核心,其他的实现更像是一些工具类,用于粘合Channels、Buffers和Selectors。其中Channel可以看做是一个流,程序可以从Channel中读取数原创 2020-10-25 16:30:00 · 1021 阅读 · 0 评论