Kemungkinan besar Anda juga
- Membuka soket dan tidak menutupnya. Seiring waktu jumlah soket terbuka menjadi terlalu besar dan aplikasi macet.
- Anda membuka terlalu banyak soket secara bersamaan. Mungkin karena Anda memiliki banyak topik.
Saya akan menebak itu #1. Periksa kembali kode Anda dan pastikan Anda menutup semua objek Connection dan objek ResultSet.
Jika Anda mengalami #2 maka Anda mungkin ingin mempertimbangkan untuk menggunakan lebih sedikit utas (setelah titik tertentu memiliki terlalu banyak utas lebih berbahaya daripada baik) atau menggunakan kumpulan koneksi seperti c3p0 yang hanya akan membuat sejumlah koneksi dan memungkinkan utas Anda untuk membagikannya. Menggunakan c3p0 adalah ide yang bagus secara umum dan juga memungkinkan Anda mendeteksi #1 lebih cepat.
Opsi ketiga adalah menggunakan abstraksi tingkat yang lebih tinggi seperti JPA atau JDO yang akan menangani manajemen koneksi untuk Anda.