首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
天堂同志
掘友等级
Java工程师
学习
获得徽章 4
动态
文章
专栏
沸点
收藏集
关注
作品
赞
76
文章 76
沸点 0
赞
76
返回
|
搜索文章
赞
文章( 76 )
沸点( 0 )
backlog与TCP三次握手之间不得不说的事
前段时间在学习 netty 源码的时候,遇到了一个知识点:在服务端套接字创建的过程中,可以通过 option() 方法为服务端 channel 设置 TCP 相关的参数,例如:ChannelOption.SO_BACKLOG,该参数就是设置 tcp 的 backlog 属性的值…
Netty源码分析系列之writeAndFlush()下
在上一篇文章中(Netty 源码分析系列之 writeAndFlush()上)分析了 netty 将数据写出流程的前半部分:write()方法源码,知道了在这个过程中,数据只是被存放到了 NioSocketChannel 对象的 ChannelOutboundBuffer 缓冲…
Netty源码分析系列之writeAndFlush()上
前两篇文章中分析了 netty 中解码器相关的源码,解码过程是发生在读数据这一步的,那么读到数据,经过解码器解码后,最终就会交由我们自定义的业务处理中执行,当我们的业务逻辑处理完成后,就需要给客户端响应消息,这就涉及到服务端如何通过 channel 将响应消息写出去的流程了,同…
Netty源码分析系列之常用解码器(下)——LengthFieldBasedFrameDecoder
在上一篇文章中分析了三个比较简单的解码器,今天接着分析最后一个常用的解码器:LengthFieldBasedFrameDecoder,这是一个基于长度字段的解码器。什么意思呢?就是在发送的数据中,使用一个字段来表示数据的长度,这样当接收方接收到数据后,先读出这个长度字段,读到了…
Netty源码分析系列之常用解码器(上)
在上一篇文章中,只分析了 netty 如何通过编解码器解决了 TCP 粘包、半包的问题,没有具体分析解码器是如何来对数据进行解码的,今天本文将具体分析这些解码器的工作原理。 netty 为我们提供了几个十分常用的解码器,这几个解码器几乎能满足我们所有的场景,这几个解码器根据难易…
Netty源码分析系列之TCP粘包、半包问题以及Netty是如何解决的
在上一篇文章中分析到了 Netty 服务端是如何进行新连接的接入的,那么当新连接接入后,就可以开始数据的读写操作了。在进行数据读写操作时,对于 TCP 连接而言,netty 就需要解决 TCP 中粘包、半包的问题,这将是本文今天重点分析的内容。在开始阅读本文之前,可以先思考一下…
Netty源码分析系列之新连接的接入
当 netty 的服务端启动以后,就可以开始接收客户端的连接了。那么在 netty 中,服务端是如何来进行新连接的创建的呢?在开始进行源码阅读之前,可以先思考以下三个问题。 在上一篇文章Netty 源码分析系列之 NioEventLoop 的执行流程中,分析了 NioEvent…
Netty源码分析系列之NioEventLoop的执行流程
在上一篇文章中分析了NioEventLoop的创建以及启动过程的源码,在文章结尾处提到,当NioEventLoop线程启动以后,会一直在一个无限 for 循环中一直循环,至死方休,那么在循环中,NioEventLoop到底在循环处理什么呢?这将是本文分析的重点。同时,还是先思考…
Netty源码分析系列之NioEventLoop的创建与启动
前三篇文章分别分析了 Netty 服务端 channel 的初始化、注册以及绑定过程的源码,理论上这篇文章应该开始分析新连接接入过程的源码了,但是在看源码的过程中,发现有一个非常重要的组件:NioEventLoop,出现得非常频繁,以至于影响到了后面源码的阅读,因此决定先分析下…
Netty源码分析系列之服务端Channel的端口绑定
由于 Netty 是对 JDK 原生 NIO 的封装,对比 JDK 原生 NIO 的写法,我们可以先思考一下以下两个问题。 在 JDK 原生的 NIO 写法中,在将 ServerSocketChannel 注册到多路复用器 Selector 上时,就将 ServerSocket…
下一页
个人成就
优秀创作者
文章被点赞
975
文章被阅读
223,874
掘力值
6,007
关注了
12
关注者
560
收藏集
0
关注标签
55
加入于
2018-11-28