最新文章列表

关于netty框架使用的出现的问题

1.framedecode的时候报indexofboundexception 使用FrameDecoder解码的时候报IndexOutOfBoundsException错误。找了好几天 才发现 原来是 netty使用FrameDecoder解码并没有把 一个协议包的内容读完,就调用了后面的业务逻辑代码,造成业务逻辑在解析 包的内容时长度不够,报错. 解决方法: 获得该包的长度之后再分析 如果不够则r ...
RepublicW 评论(0) 有958人浏览 2013-05-07 13:52

NodeJS vs Netty

周末跟朋友聊天, 一个朋友说NodeJS是个不错的东西, 它的非阻塞异步处理模式比用apache的fork的方式高效.   我在想如果是依靠非阻塞异步处理的方式提升性能的话, 其实现在主流的平台上都有相应的东西, 例如Java的NIO. 我想肯定有人做过比较, 于是我上网搜了一下Node.js vs Netty.   用apache benchmark来做的基于HTTP协议上的Hello ...
zjumty 评论(0) 有9620人浏览 2013-05-06 10:09

Netty笔记一(可以运行看到结果的简单例子)

最近一段时间一直研究聊天程序,学习了nio的知识,以后会和大家分享的,今天写了一个可以运行看到结果的netty helloworld程序,这个程序虽然简单,但从这个程序可以知道netty的运行流程,希望对初学者有所帮助。 第一步:建立一个maven项目,或者读者可以自己导入netty依赖包 <dependency> <groupId>io.netty&l ...
xuehanxin 评论(1) 有4781人浏览 2013-04-16 22:21

Netty4更新详解

netty现在应该是java界最流行的网络框架之一了,高性能,可扩展,代码优雅。之前做的页游都是用netty3.x来做网络层通信。最近看到netty4快要出来了, ...
janeky 评论(5) 有22101人浏览 2013-04-09 00:36

douyu小记

  douyu小记   其实douyu这个web容器的小项目比较早前就接触过,今天无意中再次看到这位作者的介绍 ,对这位作者还是很敬佩的,不仅仅是技术方面,更多的是那份毅力呀。 douyu这个项目目前主要包括下面几块 <li>  douyu- ajp </li> <span> 这块是很多web容器都支持的一种协议,通常和apache进行通信来使用& ...
xylong 评论(0) 有1724人浏览 2013-04-03 17:19

Netty ChannelFactory

最近在用Netty帮助业务开发封装一个通讯组件的时候,关于ChannelFactory发现了一些问题,暂时纪录如下:   1 - 内存泄漏问题 梁飞的博客中提到了Netty的ChannelFactory在不断的销毁和创建过程中,会出现内存泄漏的问题,从而在dubbo中采用静态化的方式来规避这个问题(原文:http://javatar.iteye.com/blog/1138527)。但是我的开 ...
asticx 评论(0) 有1829人浏览 2013-03-11 15:45

Netty对象传输

转自:http://www.xiaoyaochong.net/wordpress/?p=363 我们知道,Netty使用二进制协议传输对象,那怎么通过Netty进行POJO对象传输呢?我们需要提供一种至支持对象传输的协议,这种协议依然是使用ChannelBuffer作为载体。我们要使用ChannelHandler作为编码和反编码的切入。   假设我们现在只需要读取32位整数,虽然这并不是使 ...
tigerlchen 评论(1) 有3135人浏览 2013-03-06 15:45

Netty概念之ChannelEvent

ChannelEvent       一个i/o事件关联一个Channel,ChannelEvent在ChannelPipeline中被一系列的ChannelHandler处理。 每个事件要么是upstream event(上游事件),要么是downstream event(下游事件),如果一个事件从管道中的第一个处理器游向最后一个处理器,我们叫它上游事件;如果一个事件从管道中的最后一个事件游向第一 ...
zong.jianhui06 评论(2) 有1533人浏览 2013-03-05 15:09

netty源码分析之ReplayingDecoder

           在看了FrameDecoder后,我们接下来再看ReplayingDecoder,我们首先分析下为什么我们已经有了功能非常强大的FrameDecoder了,还行ReplayingDecoder呢,就从下面的例子看起。          假设消息结构是这样的:            VERSION - 1 byte TYPE - 1 ...
asialee 评论(1) 有5277人浏览 2013-02-06 01:27

netty源码分析之FrameDecoder(LengthFieldBasedFrameDecoder)

        我们接下来看一个也是比较重要的的解码器LengthFieldBasedFrameDecoder,这个和DelimiterBasedFrameDecoder比起来没有那么难理解,所以我们简单的看一下。        和之前一样,我们先来看一下局部变量。   private final int maxFrameLength; private final int ...
asialee 评论(0) 有21521人浏览 2013-02-02 21:44

netty源码分析之FrameDecoder(DelimiterBasedFrameDecoder)

          前面我们分析了FrameDecoder的实现,我们接下来看看它的子类实现吧!           我们首先来看DelimiterBasedFrameDecoder的实现,个人认为这个类实现的真的很牛,有些变量的含义作者没有增加注释,有时候可能不容易猜到意图。首先我们来看一下这个类的成员变量:   private final ChannelBuffer[] delimi ...
asialee 评论(0) 有12631人浏览 2013-02-02 20:05

netty源码分析之FrameDecoder

         我们接下来就看和业务息息相关的解码器,首先我们来看FrameDecoder,这个东西应该是所有的解码器都会实现这个,所以我们来重点看一下。         FrameDecoder产生的根源就是TCP/IP数据包的传输方式决定的,包在传输的过程中会分片和重组, 正如javadoc里面所说的:     客户端在发送的时候的序列如下: +-----+-----+-----+ ...
asialee 评论(0) 有7546人浏览 2013-01-27 12:57

netty源码分析之ChannelFuture

           在netty里面所有的nio相关的操作都是异步的,返回一个channelfuture对象,这个里面可以添加一些listener,然后再相关操作完成后进行触发,最主要的是通过这个对象可以查询相关操作的执行情况,是成功了,还是失败了。          我们来就来看看DefaultChannelFuture的实现就好,我们应该能猜到netty的思想,里面有一个listener ...
asialee 评论(0) 有10704人浏览 2013-01-26 19:42

netty源码分析之ChannelPipeline

         看了ChannelHandler我们就来看ChannelPipeline,这个类实现了责任链模式,我们就直接来看这个类的实现吧,看完后我们再看看javadoc的,这个写的很详细。         static final InternalLogger logger = InternalLoggerFactory.getInstance(DefaultChannelPipe ...
asialee 评论(0) 有12989人浏览 2013-01-26 19:07

netty源码分析之ChannelHandler

         netty里面最重要的应该是ChannelHandler,这个里面也是用户编程直接打交道的接口,也是串行于ChannelPipeLine里面执行相应的业务逻辑。         从类结构来看,一个handler应该有一个ChannelHandlerContext,ChannelHandler是处在上层的一个标识接口,下面有两个接口分别来处理Upstream event和一个D ...
asialee 评论(0) 有11267人浏览 2013-01-26 18:02

netty学习之ChannelSink(NioClientSocketPipelineSink)

       这个东西应该是netty里面最难理解的,或者最关键的组件了,这个我会慢慢的进行分析。在Pipeline传送完后,都必须都通ChannelSink进行处理。Sink ...
asialee 评论(0) 有5254人浏览 2013-01-14 21:58

netty学习之ChannelEvent

        netty里面ChannelEvent是非常重要的一个概念,在这个里面我们来重点分析一下。                       ChannelEvent应该是netty里面比较重要的概念了,这个是在ChannelPipeline的ChannelHandlers里面传递的对象。event分为两种,一种是upstream event,另外一种是downstream ev ...
asialee 评论(6) 有2692人浏览 2013-01-14 19:18

netty源码分析系列文章

            想在年终之际将对netty研究的笔记记录下来,先看netty3,然后有时间了再写netty4的,希望对大家有所帮助,这个是一个博客的目录页面,未完待续,希望在大家的鼓励下将这个框架的细节、注意事项、代码技巧等都记录下来。   netty源码分析之ChannelBuffer netty源码分析之Channel接口 netty源码分析之Serve ...
asialee 评论(12) 有11848人浏览 2013-01-14 16:20

netty学习之ChannelConfig

         今天我来来看一下整个ChannelConfig的类的继承层次:           整个类结构来说还是比较好理解的,我就将作者的意图分析一下:          ...
asialee 评论(0) 有5097人浏览 2013-01-14 16:13

netty学习之ServerChannel

首先我们先来看serverchannel的类继承层次,然后再一个一个的研究。    现在我们来挨个的介绍各个类。     AbstractChannel应该是整个Channel子类的父类,这个里面有一个static的变量allChannels,这个里面放着所有的channel,现在还不能体会放这个得好处。里面感觉没有什么特殊的,allocateId这个方法应该是给channel分配一个id, ...
asialee 评论(1) 有5433人浏览 2013-01-13 10:45

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics