netty
文章平均质量分 84
Nathaniel333
源码爱好者/java八股文总结者/AI爱好者
展开
-
Java BIO,NIO,AIO专题
在BIO模式下,一个线程中。客户端-服务器 链路一一对应模式在传统的BIO中,一个客户端请求服务器后,服务器会经过Sokcet启动一条链路将其连接并且处理,该链路的IO操作的同步阻塞的,所以该客户端和服务器的连接不可被其他客户端所使用,只能够等待当前的客户端操作完成后释放掉当前连接。原创 2023-10-14 08:22:27 · 23 阅读 · 0 评论 -
Proactor模式专题
先来看看,当用户程序执行read,线程会被阻塞,一直等到内核数据准备好,并把数据从内核缓冲区拷贝到应用程序的缓冲区中,当拷贝过程完成,read才会返回。知道了阻塞 I/O ,来看看,非阻塞的 read 请求在数据未准备好的情况下立即返回,可以继续往下执行,此时应用程序不断轮询内核,直到数据准备好,内核将数据拷贝到应用程序缓冲区,read调用才可以获取到结果因此,无论 read 和 send 是阻塞 I/O,还是非阻塞 I/O。因为。转载 2023-09-23 09:22:20 · 115 阅读 · 0 评论 -
Reactor模型专题
Reactor 模型其核心是围绕事件驱动模型一方面监听并处理IO事件。另一方面将这些处理好的事件分发业务线程处理。而几种 Reactor 模型的演进,不过是在这几个阶段中优化升级、层层递进。我们再重点回顾多线程模式(多线程模式和主从多线程模式将负责数据传输处理的 IOHandler 处理器的执行放入独立的线程池中。这样,业务处理线程与负责新连接监听的反应器线程就能相互隔离,避免服务器的连接监听受到阻塞。如果服务器为多核的 CPU,可以将反应器线程拆分为多个子反应器(SubReactor)线程;原创 2023-09-20 09:45:11 · 29 阅读 · 0 评论 -
Reactor模型专题
网络编程模型通常有如下几种:Reactor, Proactor, Asynchronous, Completion Token, and Acceptor-Connector。通常网络编程模型处理的主要流程如下I/O多路复用可以用作)程序的基础,即整个事件驱动模型是一个状态机,包含了状态(state), 输入事件(input-event), 状态转移(transition), 状态转移即状态到输入事件的一组映射。原创 2023-08-25 21:37:59 · 30 阅读 · 0 评论 -
Netty专题
Netty是一个Java NIO技术的开源异步事件驱动的网络编程框架,用于快速开发可维护的高性能协议服务器和客户端。往通俗了讲,可以将Netty理解为:一个将Java NIO进行了大量封装,并大大降低Java NIO使用难度和上手门槛的超牛逼框架。原创 2023-08-25 21:26:17 · 24 阅读 · 0 评论