首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Netty源码学习
Emanon
创建于2023-07-13
订阅专栏
Netty学习与源码阅读笔记
等 32 人订阅
共34篇文章
创建于2023-07-13
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
14.Netty源码之模拟简单的HTTP服务器
通过使用Netty模拟简单的HTTP服务器,掌握服务器端的引导器开发的3个步骤:1.配置线程池。2.channel初始化。3.端口绑定。
13.Netty源码之Netty中的类与API
Netty应用通常由一个 Bootstrap开始,主要作用是配置整个 Netty程序,串联各个组件。本篇文章主要是介绍Netty中的组件以及组件对应的类和API。
12.Netty源码之整体架构脉络
Netty 整体架构脉络 Netty 的逻辑处理架构为典型网络分层架构设计,共分为网络通信层、事件调度层、服务编排层,每一层各司其职。
11.Netty源码之线程模型
Netty 主要基于主从 Reactors 多线程模型,抽象出两组线程池 BossGroup 门负责接收客户端的连接, WorkerGroup 专门负责网络的读写。
10.NIO 网络编程应用实例-群聊系统
服务器端可以监测用户上线,离线,并实现消息转发功能。 客户端可以通过 channel 可以无阻塞发送消息给其它所有客户端用户,同时可以接受其它客户端用户通过服务端转发来的消息。
9.NIO非阻塞式网络通信入门
Selector一个 I/O 线程可以并发处理 N 个客户端连接和读写操作,这从根本上解决了传统同步阻塞 I/O 一连接一线程模型。架构的性能、弹性伸缩能力和可靠性都得到极大提升。
8.JAVA NIO核心之选择器(Selector)
选择器是SelectableChannle对象的多路复用器,Selector可以同时监控多个SelectableChannel的IO,利用 Selector可使一个单独的线程管理多个Channel。
7.JAVA NIO核心之通道(Channel)
Channel 表示 IO 源与目标打开的连接。 Channel 类似于传统的"流"。只不过 Channel 本身不能直接访问数据,Channel 只能与 Buffer 进行交互。
6.JAVA NIO核心之缓冲区(Buffer)
一个用于特定基本数据类型的容器。所有缓冲区都是Buffer抽象类的子类,Java NIO中的Buffer主要用于与NIO通道进行交互,数据是从通道读读入缓冲区,也是从缓冲区写入通道中。
5.JAVA NIO三大核心组件简介
传统IO读写只能阻塞执行,线程在读写期只能一直阻塞,比如调用socket.read()时。NIO可配置socket非阻塞模式。NIO三大核心:Channel、Buffer、Selector。
4.BIO多线程即时通信
基于BIO模式下的即时通信,我们需要解决客户端到客户端的通信,也就是需要实现客户端与客户端的端口消息转发逻辑。
3.JAVA BIO深入剖析
BIO编程流程:服务器端启动ServerSocket注册端口调用accpet方法监听客户端连接,客户端启动Socket和服务器进行通信默认情况下服务端需要跟每个客户建立一个线程与之通讯
2.JAVA中的I/O模型
JAVA中的I/O模型 I/O 模型:就是用什么样的通道或者说是通信模式和架构进行数据的传输和接收,很大程度上决定了程序通信的性能。 Java共支持3种IO 模型:BIO、NIO、AIO。
1.IO读写基本原理与IO模型
阻塞IO与非阻塞IO的区别在于内核线程在执行IO操作时是否立即返回结果,立即返回则为非阻塞IO,反之则为阻塞IO。同步IO与异步IO的区别在于内核准备好数据后真正读取数据的时候用户线程是否被阻塞。