![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
netty
rain_Man2018
求知若渴,虚心若愚
展开
-
netty线程模型
1:目前存在的线程模型有: 传统阻塞 I/O 服务模型 Reactor 模式 2:根据 Reactor 的数量和处理资源池线程的数量不同,有 3 种典型的实现 单 Reactor 单线程; 单 Reactor 多线程; 主从 Reactor 多线程 Netty 线程模式(Netty 主要基于主从 Reactor 多线程模型做了一定的改进,其中主从 Reactor 多线程模型有多个 Reactor) 一:传统阻塞 I/O 服务模型 工作原理图 黄色的框表示对象, 蓝色的框表示线程 白色的框表示方法(原创 2020-10-21 16:25:32 · 376 阅读 · 0 评论 -
NIO与零拷贝
传统 IO(4次拷贝,3次切换) Java 传统 IO 和 网络编程的一段代码: File file = new File("test.txt"); RandomAccessFile raf = new RandomAccessFile(file, "rw"); byte[] arr = new byte[(int) file.length()]; raf.read(arr); Socket socket = new ServerSocket(8080).accept(); socket.getOutp原创 2020-10-15 12:42:49 · 295 阅读 · 0 评论 -
netty学习--第二讲:NIO实现群聊系统
一:原理图 二:要求 三:服务端编程 package com.atguigu.nio.qqchat; import java.io.IOException; import java.net.InetSocketAddress; import java.nio.ByteBuffer; import java.nio.channels.*; import java.text.SimpleDateFormat; import java.util.Iterator; public class Gr原创 2020-09-22 16:56:17 · 299 阅读 · 0 评论 -
Netty学习--第一讲:IO模型
一:netty的介绍 Netty是由JBOSS提供的一个java开源框架,现在为github上的独立项目 Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序 Netty是基于NIO的,它封装了jdk的nio TCP/IP -> 原生的JDK IO -> NIO -> Netty 需要理解同步与异步,阻塞与非阻塞 二:netty的应用场景 在分布式系统中,各个节点之间需要远程服务调用,高性能的RPC框架必不可少,netty作为原创 2020-09-16 11:16:11 · 236 阅读 · 0 评论