Netty
wangjimmy1994
这个作者很懒,什么都没留下…
展开
-
通过源码学Netty-业务逻辑
前言 经过了服务启动,建立连接,接收数据,接下来就是要执行业务逻辑了,这一回,我们就来看看Netty是怎么操作业务逻辑的 开始 首先明确一点,操作业务逻辑的前序流程和接收数据其实是一样的,不同之处在于操作业务逻辑是通过fireChannelread方法传播出去之后开始处理,之前我们碰到了fireChannelread方法后都是去找到headContext看源码,其实fireChannelread的调用者是ChannelPipeline,而ChannelPipeline里又是由一个个的ChannelHa原创 2020-09-18 14:21:50 · 353 阅读 · 0 评论 -
通过源码学Netty-接收数据
前言 上一次讲到了建立连接,那么建立完连接之后自然就要开始接收数据了,这一讲我们就来看看接收数据的流程 开始 在开始阅读源码之前我们先来了解一个类:AdaptiveRecvByteBufAllocator,这个类是用来做什么的呢,这个类可以看成是一个自适应的数据大小的分配器,主要是在接收数据的时候分配缓存用的,这个缓冲区的大小有三种分别是默认,最小值和最大值 static final int DEFAULT_MINIMUM = 64; static final int DEFAULT_INITIA原创 2020-09-18 11:55:50 · 527 阅读 · 0 评论 -
通过源码学Netty-建立连接
前言 上一讲,我们通过源码的阅读,了解了Netty服务启动的整个过程,那么服务启动之后,下一步就是要建立与客户端的连接了,这一讲,我们就来通过源码来学习一下Netty建立连接的过程 开始 当服务启动完之后,bossThread也就是bossGroup开始轮询OP_ACCEPT事件,那么OP_ACCEPT事件在什么地方进行的处理呢,答案是在NIOEventLoop里进行处理,因为我们是把事件注册在了NIOEventLoop上,来到NIOEventLoop中,有一个洗循环的run方法 @Overrid原创 2020-09-17 16:57:44 · 1030 阅读 · 0 评论 -
通过源码学Netty-启动服务
前言 都说要学一门技术,要先从基础学起,先学会怎么用,再去研究为什么这么用,再去理解源码,今天我反其道而行之一下,从源码开始,学习一门技术:Netty 众所周知,Netty是一个高性能的网络编程框架,Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。我们常用的框架包括spring,rocketmq,dubbo,elasticsearch等等,这些框架的网络通信部分或多或少都使用到了Netty,那么Netty为什么那么好用,我们从源码开始学起。原创 2020-09-17 14:53:54 · 601 阅读 · 0 评论