随笔分类 - Netty
重庆Linux C方面很少,基本没有(游戏除外),而我不想游戏了,在机缘巧合下,面试一家公司,面试的C++,但是在公司里,主要是java服务器,所以学了这个
    
摘要:关于UDP的介绍,这里不在阐述。相比于TCP而言,UDP不存在客户端和服务端的实际链接,因此不需要为连接(ChannelPipeline)设置handler。服务端: 1 public void run(int port)throws Exception{ 2 EventLoopGr...
        阅读全文
                
摘要:protobuf是google序列化的工具,主要是把数据序列化成二进制的数据来传输用的。它主要优点如下:1.性能好,效率高;2.跨语言(java自带的序列化,不能跨语言)protobuf参考文档:Protobuf详解其实,在netty中使用Protobuf需要注意的是:protobufDecoder...
        阅读全文
                
摘要:TCP以流的形式进行数据传输,上层的应用协议为了对消息进行划分,往往采用如下的4种方式。(1)消息长度固定,累计读到长度总和为定长len的报文后,就认为读取到了一个完整的消息;然后重新开始读取下一个“完整”的数据包;(2)将回车换行符作为消息结束符,如ftp协议;(3)将特殊的分隔符作为消息的结束标...
        阅读全文
                
摘要:tcp是一个“流”的协议,一个完整的包可能会被TCP拆分成多个包进行发送,也可能把小的封装成一个大的数据包发送,这就是所谓的TCP粘包和拆包问题。粘包、拆包问题说明假设客户端分别发送数据包D1和D2给服务端,由于服务端一次性读取到的字节数是不确定的,所以可能存在以下4种情况。1.服务端分2次读取到了...
        阅读全文
                
摘要:在上篇《Netty(一)引题》中,分别对AIO,BIO,PIO,NIO进行了简单的阐述,并写了简单的demo。但是这里说的简单,我也只能呵呵了,特别是NIO、AIO(我全手打的,好麻烦)。在开始netty开发TimeServer之前,先回顾下NIO进行服务端开发的步骤:1.创建ServerSocke...
        阅读全文
                
摘要:本文介绍Java BIO(同步阻塞IO),伪异步IO,NIO(非阻塞IO),AIO(异步IO)这四种IO的情况,并对不同IO模型作比较。目录1.BIO2.伪异步IO3.NIO4.AIO5.四种IO比较6.BIO\伪异步IO\NIO\AIO源码下载1.BIO采用BIO通信模型的服务器,通常由一个独立的...
        阅读全文
                
 
                    
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号