Fork me on GitHub
摘要: 主要是用于服务端检测,客户端不显示 1. 服务端 import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelInitializer; 阅读全文
posted @ 2020-06-09 09:44 亲爸爸 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 1.服务器端 import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.*; import io.netty.channel.nio.NioEventLoopGroup; import io.netty.channel.so 阅读全文
posted @ 2020-06-09 09:36 亲爸爸 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 1.Bootstrap、ServerBootstrap 1.1 解释 一个 Netty 应用通常由一个 Bootstrap 开始,主要作用是配置整个 Netty 程序,串联各个组件,Netty 中 Bootstrap 类是客户端程序的启动引导类,ServerBootstrap 是服务端启动引导类; 阅读全文
posted @ 2020-06-09 09:24 亲爸爸 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 1.服务端 public class MyServer { public static void main(String[] args) throws Exception { //创建两个线程组 bossGroup 和 workerGroup,bossGroup 处理连接请求 , // bossGr 阅读全文
posted @ 2020-06-08 12:23 亲爸爸 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 1.异步基本介绍 1. 异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的组件在完成后,通过状态、通知和回调来通知调用者。 2. Netty 中的 I/O 操作是异步的,包括 Bind、Write、Connect 等操作会简单的返回一个 ChannelFutu 阅读全文
posted @ 2020-06-08 12:17 亲爸爸 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 1.工作原理示意图: 说明: 1. Netty抽象出两组线程池 BossGroup 专门负责接收客户端的连接, WorkerGroup 专门负责网络的读写 2. BossGroup 和 WorkerGroup 类型都是 NioEventLoopGroup 3. NioEventLoopGroup 相 阅读全文
posted @ 2020-06-08 11:55 亲爸爸 阅读(395) 评论(0) 推荐(0) 编辑
摘要: 1. Reactor 模式分类 a. 单 Reactor 单线程; b. 单 Reactor 多线程; c. 主从 Reactor 多线程; 1.1. Reactor 模式具有如下的优点: 1. 响应快,不必为单个同步时间所阻塞,虽然 Reactor 本身依然是同步的 2. 可以最大程度的避免复杂的 阅读全文
posted @ 2020-06-08 11:11 亲爸爸 阅读(1836) 评论(0) 推荐(0) 编辑
摘要: 1.线程模型种类 1.1. 传统阻塞 I/O 服务模型 1.2. Reactor 模式 2.传统阻塞 I/O 服务模型 2.1. 工作原理图 2.2 模型特点 2.2.1. 采用阻塞IO模式获取输入的数据 2.2.2. 每个连接都需要独立的线程完成数据的输入,业务处理,数据返回 2.3. 问题分析 阅读全文
posted @ 2020-06-08 10:21 亲爸爸 阅读(736) 评论(0) 推荐(0) 编辑
摘要: 1. 2. 3. 4. 5. 6. 7. 阅读全文
posted @ 2020-06-07 11:45 亲爸爸 阅读(1445) 评论(0) 推荐(0) 编辑
摘要: 1.什么是零拷贝 一种避免 CPU 将数据从一块存储拷贝到另外一块存储的技术。针对操作系统中的设备驱动程序、文件系统以及网络协议堆栈而出现的各种零拷贝技术极大地提升了特定应用程序的性能,并且使得这些应用程序可以更加有效地利用系统资源。这种性能的提升就是通过在数据拷贝进行的同时,允许 CPU 执行其他 阅读全文
posted @ 2020-06-07 10:43 亲爸爸 阅读(796) 评论(0) 推荐(0) 编辑