hibernate - OutOfMemoryError : unable to create new native thread AWS

标签 hibernate grails amazon-web-services amazon-ec2 out-of-memory

我的 Grails 应用程序部署在 AWS EC2 实例中的 Tomcat 6 中。我遇到的问题是它无法启动并不断收到错误:OutOfMemoryError:无法创建新的 native 线程。当我运行 VisualVM 时,似乎创建了很多线程,大约 1,000 多个。我对使用这个工具不太熟悉,似乎无法确定我的代码的哪一部分创建了这么多线程。我注意到的一件事是,当我禁用 hibernate 二级缓存或将 net.sf.ehcache.hibernate.EhCacheProvider 更改为 net.sf.ehcache.hibernate.SingletonEhCacheProvider 时,线程数显着减少。有没有一种工具可以基本上帮助我确定我的代码在哪里导致线程创建的大量增加?

最佳答案

yourkit java profiler在显示堆栈方面做得不错。 NewRelic 也是如此。有一些维护不善的东西,例如 Grails Profiler plugin .

关于hibernate - OutOfMemoryError : unable to create new native thread AWS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30656654/

相关文章:

java - HQL/SQL/Criteria 在选择所有字段时加入匹配给定列表中的所有记录

grails - 在Grails中渲染 map 的最佳方法

mysql - 名称错误 : name 'DATABASES' is not defined with AWS RDS

c# - Amazon EC2 .NET API,启动随机实例

java - 如何在 JPA 中持久保存与其他实体具有多对多关联的实体?

java - Hibernate多对一关系注释

java - Spring引导+ Jersey API+JPA : failed to lazily initialize a collection of role

包含在网页中的 Java 报告库

unit-testing - 使用 Controller 的 Grails Spock 单元测试断言 View

amazon-web-services - AWS Credentials 文件夹位置