JProfiler (TomCat + hibernate + postgres のテスト) を使用して、パフォーマンスの調査を行いました。次の問題があります。
2 種類のクエリを実行しました。各タイプのリクエスト - 同時に600ユニットを開始しました
試験結果:
最初のタイプのリクエスト:
1) クエリ時間 1 ミリ秒
2) 休止クエリの数 = 500;
3) postgresql クエリの数 = 150;
4) CPU 使用率 = 15%
5)ブロックされたスレッド = 0
2 番目のタイプのリクエスト:
1) クエリ時間 4 ミリ秒
2) 休止クエリの数 = 260;
3) postgresql クエリの数 = 300-400;
4) CPU 使用率 = 30%
5)ブロックされたスレッド = 260
助けてください、私は何をすべきか、ブロックの原因は何ですか..
エラーテキスト:
Caused by: java.net.ConnectException: Connection refused: connect
Caused by: org.postgresql.util.PSQLException:
org.hibernate.exception.JDBCConnectionException: Could not open
connection
スクリーンショットの 2 番目のタイプのクエリ
Hibernate での一連の作業 (2 番目のタイプのクエリ)
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();