gpt4 book ai didi

java - Hibernate session 中的内存泄漏?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:51:22 25 4
gpt4 key购买 nike

我在 Hibernate session 中遇到内存泄漏。

一个长时间运行的线程不断加载和更新数据。当线程定期调用 entityManager.clear() 时,我观察到:

1.) Session 大小的增长(自应用程序启动以来的线性增长)

2.) 执行时间的增长(自应用程序开始以来呈指数增长)

唯一似乎有帮助的是 close() entitymanager 并重新打开它。我在几个未连接的应用程序中看到过这种行为,一些使用 spring,一些不使用,一些使用 jpa-frontend,一些使用原生的 hibernate。

很奇怪:虽然我从未遇到过没有这个问题的 hibernate 应用程序,但在互联网上搜索却一无所获。我(和许多其他开发人员)做错了什么?

最佳答案

hibernate 中有一个 bug 会阻止 clear 以干净地清除 session 。见:

它应该在 4.3 中修复。

我的解决方法是使用短期 session 。

关于java - Hibernate session 中的内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18253638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com