![](https://img-blog.csdnimg.cn/20210206215607268.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
网络
文章平均质量分 94
网络
湘水友独
coding
展开
-
Netty学习笔记
Netty 和NIO比有什么优点 API简单,开发门槛低 功能强大,支持多种主流协议,可靠性强 定制能力强,可以通过ChannelHandler对通信框架进行灵活的定制 成熟,稳定,修复了NIO的epoll 空轮询 bug 社区活跃,版本迭代周期短 经历了大规模商业应用的考验,质量高 Netty内存模型 主从Reactor模型 NioEventLoopGroup boss = new NioEventLoopGroup(1); NioEventLoopGroup worker = new NioEven原创 2021-05-05 21:11:06 · 144 阅读 · 1 评论 -
网络学习笔记
网络模型 OSI七层网络模型 自上向下分别为:应用层、表示层、会话层、运输层、网络层、数据链路层、物理层 一次HTTP请求流程 第一阶段:客户端发送数据 浏览器中输入一个网址,根据DNS服务器解析出域名所在服务器所在的IP和端口 应用层将请求数据组装成HTTP报文 传输层接收应用层的报文,加上TCP首部,用来区分应用进程,实现可靠传输 网络层接收传输层的数据报,加上IP首部,组成IP数据报 数据链路层接收网络层的IP数据报,加上数据报头尾加上帧头帧尾,组成帧 物理层把帧看做是比特流,加上前导码,让目的原创 2021-05-02 14:42:41 · 276 阅读 · 0 评论 -
一个简单的伪异步IO程序
为了解决同步阻塞IO面临的一个请求需要一个线程处理的问题,后来有人对它的线程模型进行了优化,通过一个线程池来处理多个客户端的请求接入,形成客户端个数M:线程池最大线程数N的比例关系,其中M可以远大于N。通过线程池可以灵活的调配线程资源,设置线程的最大值,防止由于海量请求并发接入导致线程耗尽。 下面我们通过一个示例来说明 服务端代码 TimeServer public class TimeServer { public static void main(String[] args) throws I原创 2020-07-19 16:54:09 · 170 阅读 · 0 评论 -
一个简单的BIO通信程序
简介 同步阻塞I/O(Blocking )原创 2020-07-18 23:29:35 · 225 阅读 · 0 评论