![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
netty
tinysakurac
蹒跚学步的猿
展开
-
netty DefaultEventLoopGroup踩坑
踩坑过程大家都知道使用netty时应该尽量不要阻塞i/o线程,而应该把耗时的业务逻辑放在其他线程中等计算出结果后再通过i/o线程提交给请求者,netty 为了隔离这些处理耗时业务的ChannelHandler,在向pipline中添加ChannelHandler时提供了可以同时指定ChannelHandler执行业务线程的api /** * Inserts {@link ChannelHandler}s at the first position of this pipeline. *原创 2020-10-13 17:07:48 · 2142 阅读 · 3 评论 -
Netty NioEventLoop 启动过程源码分析
转载自王维_hz的博客Netty版本:4.1.30在之前分析 Channel绑定 的文章中,提到过下面这段代码,先前只讲了 channel.bind() 绑定逻辑,跳过了execute() 接口,现在我们以这个为例,开始分析NioEventLoop的execute()接口,主要逻辑如下:启动绑定当前线程到EventLoop上调用EventLoop的run()方法private static void doBind0( final ChannelFuture regFuture,转载 2020-10-10 10:59:19 · 133 阅读 · 0 评论 -
netty性能调优
转载自STEPHEN的博客调优思路关于netty的学习和介绍,可以去github看官方文档,这里良心推荐《netty实战》和《netty权威指南》两本书,前者对于新手更友好,原理和应用都有讲到,多读读会发现很多高性能的优化点。netty高性能优化点最近参加了阿里中间价性能比赛,为了提升netty写的servive mesh的网络通信的性能,最近几天查了书、博客(这里强力推荐netty作者的博客,干货真的很多),自己总结了如下一下优化点。如果有错误希望能指正。注:这里所讨论的对应的netty版本为n转载 2020-10-09 15:43:27 · 4684 阅读 · 0 评论 -
netty内存管理
https://www.jianshu.com/p/ce7c6f5cb5f6转载 2020-08-13 19:31:40 · 942 阅读 · 0 评论 -
简单理解一个dubbo服务的完整调用过程
转载自dubbo官网感受学习业内优秀开源分布式框架的底层rpc实现原创 2019-08-02 10:43:33 · 4406 阅读 · 0 评论 -
解决netty重复添加channel handler失败及其带来的反思
前言使用netty作为nio框架开发遇到了一个问题,断线重连时添加自定义channel handler失败,抛出异常ChannelPiplineException:"xxx class is not a @Sharable handler, so can't be added or removed multiple times字面意思上是我们自定义的channel handler不是一个共...原创 2019-07-23 11:09:14 · 2478 阅读 · 0 评论 -
Netty断线重连
转载自易吉欢的博客在Netty中实现重连的操作比较简单,Netty已经封装好了,我们只需要稍微扩展一下即可。启动时连接失败连接的操作是客户端这边执行的,重连的逻辑也得加在客户端,首先我们来看启动时要是连接不上怎么去重试增加一个负责重试逻辑的监听器,代码如下:import java.util.concurrent.TimeUnit;import com.netty.im.client....转载 2019-07-18 17:24:44 · 345 阅读 · 0 评论 -
tcp粘包与拆包问题以及netty下的解决方案
TCP粘包/拆包问题和Netty的解决方案TCP(Transmission Control Protocol传输控制协议)是Internet协议组的主要协议之一。起源于初始的网络实现,补充了IP协议。因此通常称为TCP/IP协议。TCP在运行在IP通信网络的应用程序之间提供稳定的、有序的和错误检查的8字节流分发功能。—— from wiki什么是TCP的粘包和拆包问题?TCP是一个“流...转载 2018-08-17 15:08:11 · 160 阅读 · 0 评论 -
netty核心类-缓冲区ByteBuf
[netty核心类]–缓冲区ByteBuf 本文主要包括以下内容: 1)ByteBuf的三种类型:heapBuffer(堆缓冲区)、directBuffer(直接缓冲区)以及Composite Buffer(复合缓冲区)。2)ByteBuf的工作原理。3)ByteBuf与JDK中ByteBuffer的区别以及对比4)ByteBuf的引用计数器实现类AbstractReferenc...转载 2018-08-10 10:29:13 · 328 阅读 · 0 评论 -
netty中基本组件的作用与关系
Netty中的基本组件及关系 概述 这篇文章主要是用来介绍netty中常用的一些组件,以及这些组件之间的存在关系Channel —-Socket EventLoop —-控制流,多线程处理,并发; ChannelHandler和ChannelPipeline Bootstrap 和 ServerBootstrap Channel 接口 基本的I/O操作,在基于...转载 2018-08-10 15:33:00 · 1418 阅读 · 0 评论