Netty框架
文章平均质量分 84
Netty
小佘同学の記録
感谢关注,csdn已经不上线了,不会在更新了。 csdn都是个人在大二到大四期间学习的笔记,有些内容可能并不是正确的,请理解下,技术文章在掘金(持续更新) https://juejin.cn/user/4248168663101239
展开
-
Netty学习----Netty实现RPC基础小案例
Netty实现 dubbo RPC一. RPC 基本介绍二. RPC 调用流程图三. RPC 调用流程说明四. 实现 dubbo RPC(基于 Netty)一. RPC 基本介绍RPC(Remote Procedure Call)— 远程过程调用,是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程两个或多个应用程序都分布在不同的服务器上,它们之间的调用都像是本地方法调用一样(如图)3) 常见的 RPC 框架有: 比较知名的如原创 2021-02-06 10:00:51 · 378 阅读 · 0 评论 -
Netty学习----TCP 粘包和拆包
TCP 粘包和拆包一. TCP 粘包和拆包介绍二. TCP 粘包和拆包现象实例三. TCP 粘包和拆包解决方案四. 编写实例进行测试五. Github下载源码进行测试一. TCP 粘包和拆包介绍TCP 是面向连接的,面向流的,提供高可靠性服务。收发两端(客户端和服务器端)都要有一一成对的 socket,因此,发送端为了将多个发给接收端的包,更有效的发给对方,使用了优化方法(Nagle 算法),将多次间隔较小且数据量小的数据,合并成一个大的数据块,然后进行封包。这样做虽然提高了效率,但是接收端就难于分原创 2021-02-06 09:28:51 · 362 阅读 · 1 评论 -
Netty学习目录--2021~2022年
Netty学习目录Netty学习----Java_BIO_知识点Netty学习----Java_NIO_知识点(一)Netty学习----Java_NIO_知识点(二)Netty学习----Java_NIO_知识点(三)Netty学习---- Netty_高性能架构设计Netty学习---- Netty_模型+Tcp服务Netty学习----异步模型+HTTP服务测试(含代码)Netty学习----Netty核心模块组件+Netty群聊系统测试(含代码)Netty学习----心跳检测机制原创 2021-02-05 09:56:25 · 322 阅读 · 0 评论 -
Netty学习----Netty 编解码器和 handler 的调用机制
一. Netty 编解码器和 handler 的调用机制netty 的组件设计:Netty 的主要组件有 Channel、EventLoop、ChannelFuture、ChannelHandler、ChannelPipe 等ChannelHandler 充当了处理入站和出站数据的应用程序逻辑的容器。例如,实现 ChannelInboundHandler 接口(或ChannelInboundHandlerAdapter),你就可以接收入站事件和数据,这些数据会被业务逻辑处理。当要给客户端发 送 响 应原创 2021-02-05 09:49:25 · 456 阅读 · 1 评论 -
Netty学习----Google的Protobuf
Google的Protobuf一. 编码和解码的基本介绍二. Netty 本身的编码解码的机制和问题分析三. Protobuf介绍四. Protobuf 快速入门实例编写程序五. Protobuf 快速入门实例 2六. 源代码太长,直接放Github一. 编码和解码的基本介绍编写网络应用程序时,因为数据在网络中传输的都是二进制字节码数据,在发送数据时就需要编码,接收数据时就需要解码codec(编解码器) 的组成部分有两个:decoder(解码器)和 encoder(编码器)。encoder原创 2021-02-04 23:01:59 · 175 阅读 · 0 评论 -
Netty学习----心跳检测机制和WebSocket编程实现服务器和客户端长连接案例(含源码)
心跳检测机制和WebSocket编程实现服务器和客户端长连接案例一. 心跳检测机制案例二. WebSocket编程实现服务器和客户端长连接案例一. 心跳检测机制案例MyServer 服务端package com.xizi.netty_heartBeat;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.ChannelInitiali原创 2021-02-04 22:26:19 · 1507 阅读 · 0 评论 -
Netty学习----Netty核心模块组件+Netty群聊系统测试(含代码)
Netty核心模块组件一. Bootstrap和ServerBootstrap二. Future和ChannelFuture三. Channel四. Selector五. ChannelHandler 及其实现类六. Pipeline 和 ChannelPipeline七. ChannelHandlerContext八. ChannelOption九. EventLoopGroup 和其实现类 NioEventLoopGroup十. Unpooled 类copiedBuffer()方法+案例测试十一. N原创 2021-02-04 22:01:29 · 255 阅读 · 0 评论 -
Netty学习----异步模型+HTTP服务测试(含代码)
5.9.1基本介绍异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的组件在完成后,通过状态、通知和回调来通知调用者。Netty 中的 I/O 操作是异步的,包括 Bind、Write、Connect 等操作会简单的返回一个 ChannelFuture。调用者并不能立刻获得结果,而是通过 Future-Listener 机制,用户可以方便的主动获取或者通过通知机制获得IO 操作结果Netty 的异步模型是建立在 future 和 callback 的之上的原创 2021-02-04 20:33:42 · 225 阅读 · 0 评论 -
Netty学习---- Netty_模型+Tcp服务
Netty 模型一. Netty 模型工作原理示意图-简单版二. Netty 模型工作原理示意图-详细版三. Netty 快速入门实例-TCP 服务+源代码四. Task 任务五. 总结一. Netty 模型工作原理示意图-简单版Netty 主要基于主从 Reactors 多线程模型(如图)做了一定的改进,其中主从 Reactor 多线程模型有多个 ReactorBossGroup 线程维护 Selector , 只关注 Accecpt当接收到 Accept 事件,获取到对应的 SocketCh原创 2021-02-03 23:53:17 · 247 阅读 · 0 评论 -
Netty学习---- Netty_高性能架构设计
Netty_高性能架构设计一. Netty 概述1. 原生 NIO 存在的问题2. Netty 的优点二. Netty 高性能架构设计1. 传统阻塞 I/O 服务模型2. Reactor 模式①. 单 Reactor 单线程②. 单 Reactor 多线程③. 主从 Reactor 多线程一. Netty 概述1. 原生 NIO 存在的问题NIO 的类库和 API 繁杂,使用麻烦:需要熟练掌握 Selector、ServerSocketChannel、SocketChannel、ByteBuff原创 2021-02-03 23:11:03 · 261 阅读 · 0 评论 -
Netty学习----Java_NIO_知识点(三)
NIO 与零拷贝一. NIO 与零拷贝二. 传统 IO 数据拷贝三. 传统 IO 模型四. mmap 优化五. sendFile 优化六. 零拷贝总结七. mmap 和 sendFile 的区别八. NIO零拷贝案例(比较原生IO拷贝文件速度)一. NIO 与零拷贝零拷贝基本介绍零拷贝是网络编程的关键,很多性能优化都离不开。在 Java 程序中,常用的零拷贝有 mmap(内存映射) 和 sendFile。传统 IO 数据读写Java 传统 IO 和 网络编程的一段代码二. 传统 IO 数原创 2021-02-01 21:11:39 · 285 阅读 · 0 评论 -
Netty学习----Java_NIO_知识点(二)
Java_NIO_知识点二一.Selector(选择器)二. Selector 类相关方法三. NIO 非阻塞 网络编程原理分析图四. 实现服务器端和客户端之间的数据简单通讯(非阻塞)五. SelectionKey六. ServerSocketChannel七. SocketChannel八. NIO 网络编程应用实例-群聊系统一.Selector(选择器)Java 的 NIO,用非阻塞的 IO 方式。可以用一个线程,处理多个的客户端连接,就会使用到 Selector(选择器)Selector原创 2021-02-01 20:19:40 · 300 阅读 · 0 评论 -
Netty学习----Java_NIO_知识点(一)
Java_NIO_编程一. NIO介绍二. NIO 和 BIO 的比较三. NIO 三大核心原理示意图四. 缓冲区(Buffer)五 Buffer 类详细解释1. Buffer 是一个顶层父类2. Buffer 的四个属性3. Buffer 类相关方法六. ByteBuffer类详细解释七.通道(Channel)1. Channel详细介绍2. FileChannel 类八. Buffer缓冲区测试案例(带源码)1.本地文件写数据2.本地文件读数据3.使用一个 Buffer 完成文件读取、写入4. 拷贝文原创 2021-01-31 21:34:56 · 320 阅读 · 0 评论 -
Netty学习----Java_BIO_知识点
BIO编程一. Netty 的介绍二. Java BIO 基本介绍三. Java BIO 工作机制四. Java BIO 执行流程解析五. Java BIO 应用实例六. Java BIO 问题分析一. Netty 的介绍Netty 是由 JBOSS 提供的一个 Java 开源框架,现为 Github 上的独立项目。Netty 是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络 IO 程序Netty 主要针对在 TCP 协议下,面向 Clients 端的高并发应用,或者原创 2021-01-31 20:17:41 · 234 阅读 · 0 评论
分享