Saya membaca hibernate dan saya menemukan pernyataan seperti "koneksi JDBC terbuka di beberapa permintaan bukanlah hal yang baik karena itu adalah sumber daya yang mahal".
Apa yang dimaksud dengan sumber daya yang mahal?
Sunting: Saya menambahkan apa yang ditambahkan oleh pengguna yang tidak dikenal sebagai komentar di bawah ini.
Jika membuat koneksi database mahal, lalu mengapa tidak menggunakan hal yang sama lagi dan lagi (bukan caching), alih-alih menutupnya dan membukanya setiap saat?
language-agnostic
Vinoth Kumar CM
sumber
sumber
Jawaban:
Sumber daya yang mahal adalah yang:
Setiap sumber daya yang mahal dapat memberikan masalah skalabilitas . Singkatnya, Anda tidak dapat memiliki terlalu banyak operasi mahal ini terjadi pada saat yang sama atau Anda tidak akan dapat merespons pengguna Anda dengan cukup cepat.
sumber
Ini dapat berupa berbagai hal tergantung pada sumber daya tertentu. Jadi, Anda mungkin memiliki yang berikut:
dan seterusnya.
Hal-hal lain yang dapat membuat sesuatu menjadi mahal adalah jika membutuhkan akses ke hard drive atau jaringan selama operasi dll.
sumber
Mahal harus diawali dengan "komputasi". Biaya komputasi digunakan untuk merujuk pada jumlah waktu atau sumber daya (CPU, memori, disk, bandwidth jaringan) yang diperlukan untuk menyelesaikan operasi, algoritma, atau program.
sumber
Biaya koneksi basis data berasal dari sejumlah faktor.
Yang mengatakan, Anda perlu menjaga koneksi (atau setidaknya transaksi) terbuka cukup lama untuk memastikan transaksi Anda melewati tes ACID . (Konsisten Atom Tahan Lama)
sumber