随笔分类 - Netty
摘要:1、Netty 是怎么创建服务端Channel的呢? 我们在使用ServerBootstrap.bind(端口)方法时,最终调用其父类AbstractBootstrap中的doBind方法,相关源码如下: 我们继续跟进initAndRegister()这个方法,发现是使用channelFactory
阅读全文
摘要:指数退避 可以理解为每次重连失败时,就把重连时间设置为之前的指数级别。例如 2 秒,4 秒,8 秒...... 亚马逊AWS关于指数退避的两篇文章介绍 "AWS 中的错误重试和指数退避" "Exponential Backoff And Jitter" Netty客户端中使用指数退避方式重连 客户端
阅读全文
摘要:一、什么是Google Protocol Buffer( "protobuf官方网站" ) 下面是官网给的解释: Protocol buffers are a language neutral, platform neutral extensible mechanism for serializin
阅读全文
摘要:解码器Decoder和ChannelHandler的关系 netty的解码器通常是继承自ByteToMessageDecoder,而它又是继承自ChannelInboundHandlerAdapter,其实也是一种ChannelHandler和我们自定义的ChannelHandler一样都是来处理进
阅读全文
摘要:什么是Netty Netty是一个基于Java NIO的编写客服端服务器的框架,是一个异步事件框架。 官网 "https://netty.io/" 为什么选择Netty 由于JAVA NIO编写服务器的过程过于复杂且不易掌控,所以我们选择Netty框架进行开发。 具有很高的的性能。 且比NIO更容易
阅读全文
摘要:传统同步阻塞I/O(BIO) 在NIO之前编写服务器使用的是同步阻塞I/O(Blocking I/O)。下面是一个典型的线程池客服端服务器示例代码,这段代码在连接数急剧上升的情况下,这个服务器代码就会不好使了,因为serverSocket.accept(),以及IO的read(),write()方法
阅读全文