Netty源码分析
vinceall
这个作者很懒,什么都没留下…
展开
-
Netty源码分析1---服务端绑定流程
前言: 一直自认为水平很差,什么都不懂,想找个源码来看看,无奈时间不够(码农搬砖很辛苦的诶),最近终于抽了点时间,看了一下Netty,感觉代码确实写得干净规范,看着舒服(吐槽一下有些开源代码,简直惨不忍睹,神马代码风格和规范通通木有,无力吐槽)。之前看的Netty源码分析感觉没说透彻,索性干脆自己写,也不知道对不对,和大家分享讨论一下吧,也算是复习巩固,欢迎交流。。。 注: 以下分...原创 2014-05-21 18:10:24 · 211 阅读 · 0 评论 -
Netty源码分析2---服务端读写流程
上次分析了服务端bind流程,今天继续看服务端读写流程。 术语:worker---NioWorker对象,BT---boss线程,IOT---worker线程,UT---用户线程 先说一下前提条件:所有与具体连接相关的IO操作都是由IOT负责完成的,并且handler也是在IOT执行的,所以才说耗时的操作要自己起线程,不要交给IOT,IOT不是拿给你独占的。 一. 服务...2014-06-13 16:00:14 · 183 阅读 · 0 评论 -
Netty源码分析3---服务端线程模型
只看了服务端的线程结构,客户端还没看,不知道是不是一样,所以这篇就叫服务端线程模型吧,以后看了客户端再修改。术语和第二篇一样,不重复写了。 1. Netty与Reactor的关系 Netty是Reactor模型的实现,有关Reactor有一张经典的图: 通过前面的分析,大概能知道: ① main reactor即NioServerBoss,由它的selector负责监听端口,...2014-06-16 14:07:44 · 110 阅读 · 0 评论 -
Netty源码分析4---客户端连接流程
前面看了服务端绑定和读写的流程,再来看客户端,瞬间感觉简单多了~ 客户端和服务端相比,区别主要在NioClientBoss上,worker是一样的。来看一个简单的客户端: ClientBootstrap bootstrap = new ClientBootstrap( new NioClientSocketChannelFactory( Executors.newCa...2014-07-07 10:54:23 · 148 阅读 · 0 评论