JFinal+Druid内存占用问题

发布于 2021-12-01 04:07:00 字数 569 浏览 899 评论 10

使用Jfinal+Druid+mysql5.6,用LoadRunner进行查询的性能测试,100个vuser连续压10分钟左右,发现内存占用持续上升,Tomcat配置的2G内存很快被占完了,且查询响应时间随着内存的占用越来越长,但查询结束以后,内存不释放,仍然继续占用很高的内存,此后如果继续压的话,查询响应时间就很长(好几秒)。

请问,我是需要做什么设置么?

环境如下:

JFinal 1.9,Druid 1.0.25,Mysql5.6(max_connection=1000), Tomcat8.0+Linux服务器

连接池配置如下:

initialSize=100

maxWait=60000

maxActive=1000
filters=stat

minIdle=50

内存占用图:

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

落墨 2021-12-03 22:11:59

请问下是如何处理的?

绝影如岚 2021-12-03 22:08:45

回复
@听_风 : 其实比较简单,就是后来登录的用户把前面的同ID用户的Session删除就可以了

平定天下 2021-12-03 22:05:09

谢谢各位神回复,尤其是JFinal大神。经过我的反复试验,发现其实跟数据库没啥关系,主要是性能测试冲击下大量用户反复登录,shrio session内存不能及时清除,导致内存只增不减,经过一些处理,内存占用情况明显好转,明天再用loadRunner测试一下

后知后觉 2021-12-03 21:54:06

       最重要是要定位不被释放的资源是什么资源,例如,是不是通过查询数据库得到的 List<Model> 对象,这些对象产生的速度是不是很快? 是不是快到远远大于回收的速度? 是不是对些对象的引用一直存在而造成的内存泄漏?

      贴出一下测试用的代码,对测试代码进行下简单分析

羁拥 2021-12-03 21:44:00

druid 监控页面 逻辑和物理连接关闭数看看是多少

回忆凄美了谁 2021-12-03 21:30:16

感谢各位大神,我们还要继续做测试,你们这样说我就心中有底了,应该不会是架构选型有问题

不再见 2021-12-03 21:01:44

mysql 
max_connection=1500.我用没问题。 我的是 50,1500 。mysql 2000 .忙的时候 在线用户 4w+

策马西风 2021-12-03 16:15:28

maxActive配置过多了,配成20吧。initialSize 5个试试

终止放荡 2021-12-03 10:55:57

我也是这么用的,貌似没问题

柳絮泡泡 2021-12-03 07:16:57

执行GC了也不能释放

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文