博客专栏 -凯发k8国际

netty学习笔记

通过分析源码学习netty,学习基于nio的高性能网络框架的设计。以分析源码为切入点,深入了解框架的设计细节

分享到:

最近更新文章

  今天又看了一遍boyan的《nip trick and trip》,又有一些新的收获。比以前看地更深刻了。其中有一处写到nio的写优化,当nio的channel设置为nonblocking时,写 ...
有6471人浏览 2013-07-12 16:26
   netty也研究了一段时间,实践是对知识掌握的试金石。有些东西只是看了面儿上的东西我觉得懂了,如不去深入,一旦要用它去做点什么东西却又觉� ...
有21795人浏览 2013-01-11 18:21
       这段时间在研究web服务器消息推送,除了html5的websocket,comet是一项很好的方案。comet不是一项专门的技术,更像是一个凯发k8国际娱乐官网入口的解决方案。说来也简单,服务端需要能把connection hold,浏览器也需要特殊的支持保持从服务端获取数据,幸好用xmlhttprequest,ajax的实现也是靠它。comet一般有两种方式long poll和streaming。长轮询是cl ...
有11594人浏览 2013-01-06 17:18
   replayingdecoder的原理是阻塞io,当没有读到足够的数据时,会抛出relayerror,进入以后的loop中不断check是否有足够的数据。因此每次读取时我们倒要check一下buffer的数据。为此netty提供了replayingdecoderbuffer这样一个代理类封装原有的buffer。以readint为例,首先要检查是否有4个字节可读。不满足抛出replayerror ...
 
有6406人浏览 2012-12-11 10:27
  为什么需要replayingdecoder,它和framedecoder有什么不同呢?replayingdecoder是一种特殊framedecoder,它能实现在io阻塞的情况下实现无阻塞的解码。听起来比较拗口而且不好理解,举个例子来说,假设你在用netty设计一个文件传输的模块,采用的header-content的协议,在header中说明文件的长度,我们用一个int来容纳长度,conten ...
 
有9960人浏览 2012-12-08 12:57
    书接上回,上次说到了selector的register和select会有锁冲突,这次再来考虑write的问题。 1. channel.write(bytebuffer)是不是总是可写,当socket的writebuffer满的时候会返回0,说明不能再写进任何字节。假设要写入一个很大的bytebuffer,有可能需要分多次写。 2. channel上执行write操作需要获得锁保证同步,如 ...
 
有2018人浏览 2012-11-27 17:35
研究了一段时间nio框架,有netty和tomcat的nio connector总结了一些共性的问题的凯发k8国际娱乐官网入口的解决方案。     1. selector的register和select有锁冲突,例如tomcat的nio connector,他采用的acceptor和poller的模式,acceptor只负责接收socket,poller是负责读写的io线程,这种模式不用于nginx,poller( ...
 
有2504人浏览 2012-11-26 13:32
     framedecoder是netty protocol decode最关键的decoder,几乎所有和协议解码相关的decoder都继承自它,那到底解决了什么问题?为什么需要这样的一个部件呢?tcp的传输是基于流的,每个数据包都有可能被分片和然后重组,这时候我们就需要协议去界定一个数据包,通常来说用来方式来确定数据包的边界,一个是基于长度,简单一点就是规定数据包的长度,例如规定每个数据包的 ...
 
有11742人浏览 2012-09-29 11:14
  • 专栏创建者:
  • 创建时间:2012-12-08 17:05:11
  • 专栏文章数:8篇
  • 专栏被浏览:72490 次

本专栏热门文章

最新评论

兄弟,程序写好了,股票买了没?要是13年买了,那现在就赚大发了。
xiang37 评论了
哥啊,是nio trick and trip 不是nip trick and trip
zkx1217 评论了
hash 写道可以带吗贴出来看看嘛?谢谢netty中自带的
xiaoz5919 评论了
可以带吗贴出来看看嘛?谢谢
hash 评论了
liyuanchao2004 写道发份源码可以吗[/q加uote] 加我qq吧405919612
xiaoz5919 评论了
发份源码可以吗[/q加uote] 加我qq吧
xiaoz5919 评论了
发份源码可以吗
liyuanchao2004 评论了
楼主,我是说在xp下面, .sh后缀的是 linux下面的东东吧
liulangdeyu999 评论了
liulangdeyu999 写道这个东西怎么运行bin文件夹下有一个runcomet.sh脚本 修改 ...
xiaoz5919 评论了
这个东西怎么运行
liulangdeyu999 评论了
global site tag (gtag.js) - google analytics
网站地图