自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Netty源码分析之handler decoder

ChannelHandler是处理业务逻辑的代码所在。下面首先分析下ChannelHandler的体系结构,然后重点分析几个有意思的Handler:IdleStateHandler、ExceptionHandler1.ChannelHandler在Netty中的位置ChannelHandler分upstreamChannelHandler和downstreamChannelHandler,分别...

2013-05-27 14:30:42 193

原创 Netty之模型分析

1.网络模型Netty实现了非常经典的多reactor模型其中mainReactor是对应的Boss类,它负责接收客户端新来的连接。它使用了线程池1,有多个Boss对象供绑定多个地址进行监听,这些地址均匀分配到各个Boss上。默认只使用一个Boss对象监听。 subReactor对应Worker类,它负责监听由Boss类accept的socket的读写事件。它使用了另外一个线程池2...

2013-05-23 14:42:48 119

原创 Netty源码分析之消息的收发

在前面已经说明了在接收新连接时,将向worker注册默认的READ事件。然后worker开始阻塞select监听事件。发送消息的情况。这种情况常常是由DownstreamHandler主动发起,在对接收的消息处理后主动发送消息ctx.sendMessage,由内向外经过由DownstreamHandler和encode组成的过滤链,在链的尽头由NioServerSocketPipeline...

2013-05-22 13:31:21 204

原创 Netty源码分析之accept

处理客户端新连接请求的方法从org.jboss.netty.channel.socket.nio.AbstractNioSelector.run()开始分析。NioServerBoss是AbstractNioSelector的子类,处理服务器端接收新请求的处理类selector。如果有多个selector,可以创建bosspool时设置多个selector实例,新的绑定地址bind任务将依...

2013-05-21 11:29:49 133

原创 Netty源码分析之Server bindAsync

下文将剖析ServerBootstrap.bindAsync()方法所涉及到的流程。1.概念ChannelHandler分ChannelUpstreamHandler和ChanneldownstreamHandler,前者指向服务器接收事件的调用处理器,后者是服务器由内而外发送事件的事件处理器。上下行消息传递方法介绍sendUpstream()方法表发由外向内传递事件,[c...

2013-05-17 16:10:21 282

原创 初识Netty3.6

今天开始接触Netty这个NIO框架,由与MINA同一作者创作的框架,在看过User Guide 3.6之后,API风格与使用方式与MINA2大致类似。作为学习新框架的起始,先来几个Hello World程序吧。看API依然是基于Reactor模型,程序分三部分1.事件处理程序主要包括对具体业务消息的处理,对各种连接状态的响应 [code="java"] publ...

2013-05-16 16:55:47 144

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除