Java hibernate上的阻塞线程
我使用JProfiler(测试TomCat+hibernate+postgres)完成了性能研究。我有以下问题: 我运行了两种类型的查询。每种类型的请求-同时我启动了600个单元 测试结果: 第一类请求: 1) 查询时间1毫秒 2) 休眠查询数=500 3) postgresql查询数=150 4) CPU使用率=15% 5) 阻塞线程=0 第二类请求: 1) 查询时间4毫秒 2) 休眠查询数=260 3) postgresql查询数=300-400 4) CPU使用率=30% 5) 阻塞线程=260 救命啊,我不知道该怎么办,也不知道阻塞的原因是什么 错误文本:Java hibernate上的阻塞线程,java,hibernate,Java,Hibernate,我使用JProfiler(测试TomCat+hibernate+postgres)完成了性能研究。我有以下问题: 我运行了两种类型的查询。每种类型的请求-同时我启动了600个单元 测试结果: 第一类请求: 1) 查询时间1毫秒 2) 休眠查询数=500 3) postgresql查询数=150 4) CPU使用率=15% 5) 阻塞线程=0 第二类请求: 1) 查询时间4毫秒 2) 休眠查询数=260 3) postgresql查询数=300-400 4) CPU使用率=30% 5) 阻塞线程=
Caused by: java.net.ConnectException: Connection refused: connect
Caused by: org.postgresql.util.PSQLException:
org.hibernate.exception.JDBCConnectionException: Could not open
connection
屏幕截图中的第二类查询
Hibernate的工作顺序(第二类查询)
我解决了这个问题。已连接
hibernate-c3p0
-无错误我解决了问题。已连接hibernate-c3p0
-无错误查看查询以及如何运行查询会很有趣。@dcernahoschi-I已更新,请查看您可能无法正确关闭连接。你能展示更多的代码吗,包括如何打开和关闭会话。@artbristol--我更新了Hibernate的工作顺序,请看它你有多个线程吗?每个线程都在更新和删除单个实体吗?您的第二类查询中是否有任何查询?查看这些查询以及如何运行它们会很有趣。@dcernahoschi-I已更新,请查看可能是您未能正确关闭连接。你能展示更多的代码吗,包括如何打开和关闭会话。@artbristol--我更新了Hibernate的工作顺序,请看它你有多个线程吗?每个线程都在更新和删除单个实体吗?在第二类查询中是否有任何查询?
1) session = getFactory().openSession();
2) transaction = session.beginTransaction();
- session.update()
- session.delete()
3) transaction.commit();
4) transaction = session.beginTransaction();
- session.update()
- session.delete()
5) transaction.commit();
6) session.close();