from:http://itindex.net/detail/49964-netty-%E7%B3%BB%E5%88%97-netty 1. 背景 1.1. 惊人的性能数据 最近一个圈内朋友通过私信告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复 ...
分类:
Web程序 时间:
2016-05-02 21:21:57
阅读次数:
255
from: http://www.dozer.cc/2015/05/netty-auto-reconnect.html 自动重连 用 Netty 写 Client 和 Server 的时候必须要去处理自动重连。 Server 端启动时的错误,要去不断重试。 Client 端不仅要处理启动时的错误,还 ...
分类:
Web程序 时间:
2016-05-02 21:20:26
阅读次数:
210
from:http://itindex.net/detail/54161-netty-client 当我们用Netty实现一个TCP client时,我们当然希望当连接断掉的时候Netty能够自动重连。 Netty Client有两种情况下需要重连: 对于第一种情况,Netty的作者在stackov ...
分类:
Web程序 时间:
2016-05-02 21:16:55
阅读次数:
318
这两天再Netty之家看了李老板的一篇文章,主要涉及了NioEventLoop和守护线程,文章最后提出了一个小问题,如下: 按照代码运行了一下,并通过java visualVM监控线程运行状态,截图如下: 可以发现最终JVM进程在bossGroup中的四个线程全部死掉后自动退出。因为此时的5个用户线 ...
分类:
编程语言 时间:
2016-05-02 15:29:59
阅读次数:
261
5.3 Byte-level operations
ByteBuf除了提供基本对数据读写操作之外,它还提供了很多其他的方法,在接下来的这个小节中,我们将讨论这些方法中比较重要的来分析讲解一下
5.3.1 Random access indexing
与正常的java的字节数组一样,ByteBuf的索引下标也是从0开始的,第一个索引下表是0,最后一个字节索引总是它的...
分类:
Web程序 时间:
2016-04-29 19:23:40
阅读次数:
247
这个章节致力于学习Netty的数据容器,容器都是基于ByteBuf的,我们一开始解释了ByteBuf的性能为什么比JDK的高,我们也强调了说明了一个个新的API,并解释了它们使用的每一个场景
以下,是我们刚刚提及过的:
1)read和write两个不同的索引控制这我们对数据的操作
2)不同的内存使用方法---backing arrays 和 direct buffers
3)可以使用CompositeByteBuf来使多种ByteBuf聚集
4)数据接入的方法:searching,slicing和copy...
分类:
Web程序 时间:
2016-04-29 19:21:22
阅读次数:
338
本章内容包括:
1)ChannelHandler和ChannelPipeline的APIs
2)检测内存泄漏
3)异常处理
在之前的一个章节中,我们学习了ByteBuf,Netty的数据容器,在这个章节中,我们将讲解Netty的数据流和对应的处理组件,然后我们将我们已经学过的所有组件整合在一起
你已经知道多个ChannelHandler可以被链式的放入ChannelPip...
分类:
Web程序 时间:
2016-04-29 19:10:50
阅读次数:
199
本章节包括:
1)线程模型总览
2)Event Loop概念和具体实现
3)任务调度
4)实现细节
简单地陈述一下,对于一个操作系统,编程语言,框架,或者应用来说,线程模型对其都是至关重要的一部分,在什么时间如何创建一个线程都会对你的代码执行有很重要的影响,所以对于开发人员而言,懂得在各种线程模型里面权衡利弊就是一个很重要的事情,是直接使用线程模型本身还是通过一些框架或者...
分类:
编程语言 时间:
2016-04-29 19:09:29
阅读次数:
264
6.3 Interface ChannelHandlerContext
一个ChannelHandlerContext代表了一个ChannelHandler和ChannelPipeline之间的关系,ChannelHandlerContext创建于ChannelHandler被载入到ChannelPipeline的时候,ChannelHandlerContext主要功能是管理在同一Cha...
分类:
Web程序 时间:
2016-04-29 19:08:56
阅读次数:
274
第五章 ByteBuf(分四部分翻译)
本章节包括:
1)ByteBuf------Netty的数据容器
2)API介绍
3)使用案例
4)内存分配
我们之前提到过很多次,网络传输数据的最基本的数据单元是byte,Java的NIO提供了ByteBuffer作为字节的容器,但是这个类的使用有些过于复杂和麻烦
Netty对ByteBuffer提供了一个可选方案...
分类:
Web程序 时间:
2016-04-29 19:08:50
阅读次数:
169