![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
netty
文章平均质量分 89
一些仅供自己看的不成套的源码分析文章,菜鸡的自己期望通过多读大师们的开源作品来得到技术的提升-。-,(ง •_•)ง给自己打气
q_j_c
只为记录成长。争取每天输出一点点,日有所积,月有所累。
展开
-
netty下的编码器与解码器,并学习自定义编解码器
netty下的编码器与解码器文章目录netty下的编码器与解码器前言一、为什么要编码解码。二、netty下编码类。2.1MessageToByteEncoder类2.1.1官方用例2.1.2 TypeParameterMatcher类2.1.3 MessageToByteEncoder下的write方法2.1.4 acceptOutboundMessage方法三、netty下解码类。3.1 netty下解码类的用例。3.2 decode方法3.2 callDecode方法3.3 channelRe原创 2021-05-30 14:09:02 · 202 阅读 · 0 评论 -
channel与outboundhandler下的方法
channel与outboundhandler下的方法。文章目录channel与outboundhandler下的方法。前言1.connect方法1.1 寻找outbound connect方法执行执行HeadContext的connect方法。2.close方法2.1连接超时3.write方法3.1 headContext的write方法。3.2最后会执行AbstractChannel的方法3.3 他在写到什么时候才会将数据刷到服务端呢?4.read方法4.1调用unsafe的beginRead方法4.原创 2021-05-26 22:55:37 · 479 阅读 · 0 评论 -
Channel与handler
Channel与handler文章目录Channel与handler前言1.数据从客户端发送给服务端1.1 ChannelRead1.2 ChannelReadComplete1.3 read2.客户端连接异常退出2.1exceptionCaught3.正常关闭客户端连接前言继续学习channel与handler的关系,上一篇写到client 连接到server后会触发channel active的方法,并且调用outboudhandler的read方法,接下来是要模拟client向服务端发送数据。原创 2021-05-19 18:47:55 · 234 阅读 · 0 评论 -
netty之handler与pipeline
handler 与 pipeline文章目录handler 与 pipeline前言一、pipeline与handler的关系1. pipeline下所有的handler1.1 serverchannel对应的pipeline1.1.1先放实验的代码:1.1.1pipeline下有几个handler.1.1.2pipeline,触发channelActive方法总结学习内容:学习时间:学习产出:前言接着继续学习,pipeline与handler的关系以及handler的生命周期,以及关键的接口方原创 2021-05-15 22:01:06 · 258 阅读 · 2 评论 -
Bootstrap连接Server
Netty源码阅读之Bootstrap连接Server1.连接远程服务开始debug看一下啊=客户端的channlel1.连接远程服务还是初始化channel,然后注册,唯一不同的是bootstrap这个类又重写了init方法。private ChannelFuture doResolveAndConnect(final SocketAddress remoteAddress, final SocketAddress localAddress) { final Channe原创 2021-05-11 15:12:26 · 517 阅读 · 1 评论 -
netty源码阅读之NioEventLoop执行server channel注册与绑定任务。
netty源码阅读之EventLoop的执行注册的任务。上一把篇追到了server channel的初始化以及注册但没有真正的完成注册,只是将server channel 包装成一个task 推进队列中,然后启动了EventLoop下的线程。肯定是通过这线程从队列的另一端将task取出来执行,都是这么个套路,现在就继续跟下去看它真正完成注册。文章目录netty源码阅读之EventLoop的执行注册的任务。SingleThreadEventExecutor类下的doStartThread方法NioEven原创 2021-04-18 00:53:46 · 160 阅读 · 0 评论 -
netty源码阅读之ServerChannel初始化与注册。
netty源码阅读之ServerChannel初始化与注册。上一章看了ServerBootstrap类的主要方法大致了解主要干了啥,现在开始顺着demo代码ChannelFuture f = bootstrap.bind(7777).sync();debug下去。仔细看一看这个过程主要做了哪些事情。跟进bind()方法主要看 initAndRegister()方法,看是初始化谁,又注册谁。 public ChannelFuture bind(SocketAddress localAddress) {原创 2021-04-14 13:12:57 · 315 阅读 · 0 评论 -
netty源码阅读之ServerBootStrap类
netty源码阅读之ServerBootStrap实例化的过程在netty中有两个引导器,一个是服务端的引导器,一个是客户端的引导器。本次主要跟踪ServerBootstrap类的实例化在看它搞啥事。调试代码如下:ServerBootStrap类...原创 2021-04-12 13:16:22 · 146 阅读 · 0 评论 -
netty源码阅读之EventLoop实例化过程
netty源码阅读之EventLoop实例化过程继续EventloopGroup的实例化创建过程中给该对象分配多个EventLoop对象的时候会调用到如下方法@Override protected EventLoop newChild(Executor executor, Object... args) throws Exception { return new NioEventLoop(this, executor, (SelectorProvider) args[0],原创 2021-04-02 18:21:42 · 72 阅读 · 0 评论 -
netty源码阅读之EventLoopGroup实例化过程
前言《netty in action》的书也翻了几遍,大佬们的源码分析博客也看了一点。然后看书是真的没有学会,所以是真需要去实践学习~。EventLoopGroup族类EventLoopGroup这不能单个看某个类,netty里面有许多类都得拎起整个族谱看。大师们在继承上的代码组织的很厉害,废话不多说debug走起。EventLoopGroup构造器然后跟着代码执行流程走,最后关于NioEventLoopGroup调到这里 public NioEventLoopGroup(int nThrea原创 2021-04-02 14:59:41 · 102 阅读 · 0 评论