
netty
文章平均质量分 94
NM_IT
it爱好者
展开
-
netty oneCoder
OneCoder总结了一张流程图: 该图是OneCoder通过阅读Netty源码,逐渐记录下来的。基本可以说明Netty服务的启动流程。这里在具体讲解一下。 首先说明,我们这次顺利的流程是基于NioSocketServer的。也就是基于Java NIO Selector的实现方式。在第六讲《Java NIO框架Netty教程(六)-Java NIO Sel原创 2014-05-15 10:55:04 · 994 阅读 · 0 评论 -
Netty4-- NioEventLoopGroup继承层次结构
NioEventLoopGroup继承层次结构图Netty4的NioEventLoopGroup继承结构很复杂,为了理解它如何工作,我画了一张类似UML的图。但是这张图也很巨大,所以我做了以下处理:将位于不同包中的类或接口用不同的颜色加以区分接口名后面的括号里标注了大写字母I(Interface),抽象类名的后面标注了大写字母A(Abstract)转载 2014-07-24 17:24:54 · 1058 阅读 · 0 评论 -
Netty4-- ByteBuf和设计模式
ByteBuf是Netty框架里最重要的类之一,简单的说,ByteBuf就是java.nio.ByteBuffer的Netty版。ByteBuf逻辑结构正如类名所反映出来的,ByteBuf逻辑上就是一个byte容器。ByteBuf里的数据被两个指针划分为三个部分,如下图所示:reader index前面的数据是已经读过的数据,这些数据可以扔掉从reader转载 2014-07-24 17:25:16 · 1344 阅读 · 0 评论 -
Netty4-- Bootstrap
Netty4的代码比我想象的要复杂的多,不过Netty4很好的将这种复杂性隐藏了起来,暴露出来的,是一个相对容易使用的接口。Bootstrap就是Netty试图隐藏这种复杂性的一个例子。bootstrap包bootstrap包是Netty4代码里最简单的一个包,总共只有4个类:Bootstrap继承结构AbstractBootstra转载 2014-07-24 17:14:32 · 994 阅读 · 0 评论 -
Netty源码解读 Netty中的buffer
What: buffer二三事buffer中文名又叫缓冲区,按照维基百科的解释,是”在数据传输时,在内存里开辟的一块临时保存数据的区域”。它其实是一种化同步为异步的机制,可以解决数据传输的速率不对等以及不稳定的问题。根据这个定义,我们可以知道涉及I/O(特别是I/O写)的地方,基本会有buffer的存在。就Java来说,我们非常熟悉的Old I/O–InputStream&Outp原创 2014-07-24 16:55:56 · 748 阅读 · 0 评论 -
netty
Scalable IO in JavaDoug LeaState University of New York at Oswegodl@cs.oswego.eduhttp://gee.cs.oswego.eduhttp://gee.cs.oswego.eduOutline" Scalable network services" Event-driven processi转载 2014-07-25 10:22:28 · 725 阅读 · 0 评论 -
Netty4的ServerBootstrp
这篇文章接着上一篇,分析一下Netty4的ServerBootstrp是如何工作的。EchoServer先看看Netty自带的EchoServer例子:[java] view plaincopy/** * Echoes back any received data from a client. */ public转载 2014-07-24 17:16:31 · 820 阅读 · 0 评论 -
netty ChannelInboundByteHandlerAdapter
这篇文章分析另外一个表重要比较基础的handler : ChannelInboundByteHandlerAdapter当我们编写的服务器程序需要直接处理byte的时候,可以直接扩展它来实现inboundhandler,用于处理传送过来的byte数据。。。例如举一个典型的用法:[java] view plaincopypublic class原创 2014-05-15 13:54:33 · 1084 阅读 · 0 评论 -
java netty之ByteToMessageDecoder
在上面的一篇文章中,有说明ByteToMessageDecoder是怎么使用的,那么这一篇就来讲讲它是怎么实现的。。首先还是来看一下它的继承体系:它直接继承自ChannelInboundByteHandlerAdapter类型,至于说这个类型的介绍,在前面的文章中就已经有了说明,无非是实现了那些inboundhandler的方法,不过实现的都非常的粗糙,另外一些hand原创 2014-05-15 14:29:07 · 2580 阅读 · 0 评论 -
java netty decoder与encoder的使用
在前面的文章中,对netty的使用都是基于byte类型的,但是在实际情况,直接处理byte数据是很少的,一般都是将这些数据转换成自己定义的一些类型。也就是说在实际情况下decoder与encoder都是用到比较多的handler类型,想要了解他们是怎么实现的,我觉得首先应该知道他们是怎么使用的,那么就用官方说明的UnixTime作为例子来简单的说民一下decoder与encoder是怎么使原创 2014-05-15 14:02:07 · 6348 阅读 · 0 评论 -
Netty心跳机制
What 顾名思义, 所谓 心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, 通知对方自己还在线, 以确保 TCP 连接的有效性.Why因为网络的不可靠性, 有可能在 TCP 保持长连接的过程中, 由于某些突发情况, 例如网线被拔出, 突然掉电等, 会造成服务器和客户端的连接中断. 在这些突发情况下, 如果恰好服务器和客户端之间没有交互的话, 那么它们是不能在短时间...转载 2018-06-07 13:50:05 · 311 阅读 · 0 评论