![](https://img-blog.csdnimg.cn/40e8a21051df48c59af2ef6a316739bc.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Netty
文章平均质量分 93
网络编程NIO、Netty学习....
长路 ㅤ
24应届毕业,目前入职公司是做大数据数栈平台,Java开发一枚,主要学习方向为Java后端,大数据,算法。
展开
-
08、Netty学习笔记—(基于聊天业务:RPC实现)
文章目录前言踩坑点1、使用gson进行json序列化时,无法序列化反序列化 Class 类型,报错!一、RPC实现细节简述(直击要点)二、具体代码实现Message客户端RpcRequestMessageRpcResponseMessageHandlerClient服务端RpcResponseMessageservice、serviceImpl接口类匹配实现类实例机制(配置文件)RpcRequestMessageHandlerServer三、测试参考文章netty笔记汇总:Netty学习指南(资料、文章原创 2022-01-17 22:55:20 · 842 阅读 · 0 评论 -
07、Netty学习笔记—(聊天业务优化:参数调优)
文章目录Option配置参数①CONNECT_TIMEOUT_MILLIS(连接超时设定)参数说明+代码示例源码分析②SO_BACKLOG(全连接队列中存储连接个数)参数说明+代码示例源码分析backlog其他参数③tcp_nodelay(一次尽可能发出数据,而非缓冲区缓存;禁用nagle算法)④so_sendbuf & so_rcvbuf(发送缓冲区和接收缓冲区)⑤allocator(配置ctx.alloc()分配的类型和开辟内存空间位置)源码调试⑥rcvbuf_allocator(控制netty原创 2022-01-17 22:53:35 · 1461 阅读 · 0 评论 -
06、Netty学习笔记—(聊天业务优化:扩展序列化算法)
文章目录一、实现序列化(JDK、JSON)二、聊天室优化—传输对象编解码(序列化算法指定)netty笔记汇总:Netty学习指南(资料、文章汇总)根据黑马程序员netty视频教程学习所做笔记,部分内容图例来源黑马笔记笔记demo案例仓库地址: Github-【netty-learn】一、实现序列化(JDK、JSON)说明序列化,反序列化主要是用于在消息正文的转换上序列化时,需要将Java对象变为要传输的数据(可以是byte[]或json等,最终都要编程byte[])。反序列化时,需原创 2022-01-17 22:52:34 · 455 阅读 · 0 评论 -
05、Netty学习笔记—(案例:聊天业务)
文章目录坑点说明1、自己实现SimpleChannelInboundHandler的子类不添加@Sharable注解导致第二个客户端连接不上具体业务草稿具体业务实现①登陆业务②客户端根据命令实现业务发送③单聊业务(send [username] [content])④群聊建群拉人处理(gcreate [group name] [m1,m2,m3...])⑤群聊消息发送(gsend [group name] [content])⑥获取群成员信息(gmembers [group name])⑦加入群聊(gjoi原创 2022-01-17 22:51:24 · 848 阅读 · 0 评论 -
04、Netty学习笔记—(黏包半包及协议设计解析)
文章目录一、粘包与半包1.1、现象分析1.1.1、粘包、半包情况分析1.1.2、滑动窗口、MSS限制、Nagle算法介绍1.2、粘包、半包现象复现1.2.1、粘包复现1.2.2、半包复现1.3、解决方案①短链接(连接、停止作为边界)②定长解码器(指定字节长度解码)③行解码器(分割符解决)④LTC解码器(基于长度字段的帧解码器,长度+内容组成)四个基础字段分析实际案例二、协议设计与解析2.1、redis协议示例2.2、HTTP协议示例2.2.1、认识HttpServerCodec2.2.2、案例2.3、自定义原创 2022-01-17 22:49:55 · 1318 阅读 · 1 评论 -
03、Netty学习笔记—(Netty组件学习)
文章目录一、认识Netty1.1 Netty 是什么?1.2 Netty 的作者1.3 Netty 的地位1.4 Netty 的优势二、netty入门程序HelloWorld!2.1、netty入门:客户端->服务端 helloworld2.1.1、服务端2.1.2、客户端2.2、流程梳理2.3、netty-helloworld的各个组件通俗介绍三、组件3.1、EventLoop3.1.1、认识EventLoop和EventLoopGroup3.1.2、执行普通、定时任务3.1.3、执行IO任务(含2原创 2022-01-17 22:47:33 · 930 阅读 · 0 评论 -
02、Netty学习笔记—(NIO网络编程和IO模型)
文章目录一、网络编程1.1、非阻塞VS阻塞1.1.1、阻塞(默认)1.1.2、非阻塞(设置参数)1.1.3、多路复用(selector)1.2、单线程selector实现(多路复用)1.2.1、Selector(课件)创建绑定 Channel 事件监听 Channel 事件select 何时不阻塞1.2.2、代码实现代码实现过程思路(7点)案例1:处理accept()、read()事件案例2:处理write()事件1.3、多线程实现1.3.1、理论说明(多线程带来的问题及解决方案)1.3.2、代码实现二、N原创 2022-01-17 22:46:05 · 1018 阅读 · 0 评论 -
01、Netty学习笔记—(三大组件、bytebuffer、文件编程)
文章目录1.1、Channel & Buffer1.2、Selector二、ByteBufferByteBuffer初应用2.1、ByteBuffer正常使用流程(含源码)2.2、ByteBuffer 结构2.3、ByteBuffer方法演示工具类(图形化显示bytebuffer)2.3.1、allocate()、allocateDirect()(分配空间)2.3.2、put()、flip()、clear()、compact()、get()2.3.3、get()、put()(读取与写入数据)2.3.原创 2022-01-17 22:43:40 · 1357 阅读 · 1 评论 -
Netty学习指南(资料、文章汇总)
文章目录学习资料文章汇总学习资料学习前具备知识:Java基础IO、多线程、部分jvm知识…Netty官网原理知识点:TCP的粘包与粘包(网络):面试题:粘包和拆包、tcp粘包和拆包的处理方案简述同步IO、异步IO、阻塞IO、非阻塞IO之间的联系与区别 文章推荐:netty全过程图解(最详细清晰版)视频:中文字幕版-Netty One Framework to rule them all by Norman Maurer:1小时,项目leader讲解Netty4黑马程序员Net原创 2022-01-17 22:26:26 · 1687 阅读 · 1 评论