nbcio-boot项目内存溢出问题分析和解决

更多ruoyi-nbcio功能请看演示系统

gitee源代码地址

前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio

演示地址:RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/

更多nbcio-boot功能请看演示系统

gitee源代码地址

后端代码: https://gitee.com/nbacheng/nbcio-boot

前端代码:https://gitee.com/nbacheng/nbcio-vue.git

在线演示(包括H5) : http://218.75.87.38:9888

1、下面ruoyi-nbcio相对内存正常,特别是FGC比较小,一般为4左右

2、但nbcio-boot运行一天后出现下面情况

3、FGC比较高,都已经497了,还在不断增加,所以是有内存溢出现象了,后三项都比较高,正常应该都比较低了

4、正常情况应该比较少,而且比较稳定,不增加,重启上面的服务后出现下面,开始比较少,但一直在增加就不正常了

5、jmap -dump:live,format=b,file=nbcio-boot.hprof 28904

生成文件进行分析,打开内存分析器,如下:

6、点击跟内存泄漏相关的内容Leak Suspects

主要应该还是hashmap的内存溢出问题,因为这个很多编程都没注意到,特别是哪种频繁使用的代码,更要注意hashmap的内存泄漏问题。

实际公司生产系统可以通过jmeter进行模拟压力测试来再现相关内存溢出问题

FGC:从应用程序启动到采样时old代(全gc)gc次数

FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT:从应用程序启动到采样时gc用的总时间(s)

7、经过修正运行一天后,内存泄漏问题解决

相关推荐
道可到13 分钟前
淘宝面试原题 Java 面试通关笔记 02|从编译到运行——Java 背后的计算模型(面试可复述版)
java·后端·面试
DKPT19 分钟前
JVM如何管理直接内存?
java·笔记·学习
SimonKing20 分钟前
GitHub 标星 370k!免费编程资源大合集,从此自学不花一分钱
java·后端·程序员
kfepiza31 分钟前
Java的任务调度框架之Quartz 笔记250930
java·java ee
自由的疯32 分钟前
Java(32位)基于JNative的DLL函数调用方法
java·后端·架构
咖啡Beans36 分钟前
SpringBoot+Ehcache使用示例
java·spring boot
自由的疯39 分钟前
Java 使用Jackson进行深拷贝:优化与最佳实践
java·后端·架构
毕设源码-郭学长44 分钟前
【开题答辩全过程】以 springboot+美食电子商城的设计与实现为例,包含答辩的问题和答案
java·eclipse·美食
王嘉俊92544 分钟前
Kafka 和 RabbitMQ 使用:消息队列的强大工具
java·分布式·中间件·kafka·消息队列·rabbitmq·springboot
渣哥1 小时前
事务没生效还以为成功了?Spring 事务失效的雷区你中招了吗?
java