- 博客(6)
- 资源 (12)
- 收藏
- 关注
原创 Netty使用案例 -发送队列积压导致内存泄漏(二)
发送队列积压导致内存泄漏上个文章模拟高并发发送消息导致内存泄漏,分析了没有设置高水位导致的内存泄漏,其实并不是在高并发时候才会导致积压,在别的场景下也会导致积压。其他可能导致发送消息队列积压的因素在一些场景下,尽管系统流量不大,但任然可能导致消息积压,可能的场景如下:网络瓶颈导致积压,当发送速度超过网络链接处理能力,会导致发送队列积压。当对端读取速度小于乙方发送速度,导致自身TCP发送...
2019-01-27 18:15:33 3755
原创 Netty使用案例 -发送队列积压导致内存泄漏(一)
Netty发送队列积压案例环境配置//vm参数设置-Xmx1000m -XX:+PrintGC -XX:+PrintGCDetails 对业务性能压测,N个客户端并发访问服务端,客户端基于Netty框架做网络通信,压测一段时间之后,响应时间越来越长,失败率增加,监控客户端内存使用情况,发现使用的内存一直飙升,吞吐量慢慢降为0,最后发生OOM异常,CPU占用居高不下,GC占满CPU。高...
2019-01-24 20:25:48 6540 3
原创 Netty使用案例 -HTTP协议栈中使用ByteBuf
使用Netty开发Restfull应用Http服务端代码public class HttpServer { public static void main(String[] args) { HttpServer httpServer = new HttpServer(); int port = Integer.valueOf(args[0]); ...
2019-01-22 17:12:52 1514
原创 常用JVM配置调试
JMV常用配置-Xms:初始堆大小-Xmx:最大堆大小-XX:NewSize=n:设置年轻代大小-XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Survivor=3...
2019-01-15 18:16:50 362
原创 Netty使用案例 -堆外内存泄漏跟踪
内存池ByteBuf泄漏没有引起堆内存溢出服务端代码入下public class RouterServerHandler extends ChannelInboundHandlerAdapter { static ExecutorService executorService = Executors.newSingleThreadExecutor(); PooledByteBu...
2019-01-15 17:11:40 3000
原创 Netty使用案例 -客户端连接池使用
将Netty强大的NIO当做BIO使用设置启动的poolSize为150 先创建150个线程EventLoopGroup,这里我设置JVM的参数为//由于用的是jdk8,所以好多数据会在元空间存放-XX:MetaspaceSize=8m -XX:MaxMetaspaceSize=60m -Xmx50m//具体代码如下public class InitNettyPool { pu...
2019-01-08 20:28:40 4277 7
ttms-tkk.rar
2021-09-06
阿里巴巴Java开发手册(详尽版).zip
2020-04-30
de4dot-Reactor5.0-janle.7z
2020-03-29
ppassport-ui.zip
2019-08-08
SpringSecurity+OAuth2+SSO.pptx
2019-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人