Saya telah membuat perpustakaan dengan Python yang berisi fungsi untuk mengakses database. Ini adalah pustaka pembungkus di sekitar basis data aplikasi pihak ketiga, ditulis karena fakta bahwa aplikasi pihak ketiga tidak menawarkan API yang layak. Sekarang saya awalnya membiarkan setiap fungsi membuka koneksi database selama durasi panggilan fungsi yang OK, sampai logika program saya menggunakan panggilan bersarang ke fungsi di mana saya kemudian akan memanggil fungsi tertentu beberapa ribu kali. Ini bukan sangat performant. Profiling ini menunjukkan bahwa overhead dalam pengaturan koneksi database - sekali per panggilan fungsi. Jadi saya memindahkan koneksi terbuka dari dalam fungsi ke modul itu sendiri, sehingga koneksi database akan dibuka ketika modul perpustakaan diimpor. Ini memberi saya kinerja yang dapat diterima.
Sekarang saya punya dua pertanyaan tentang ini. Pertama, apakah saya perlu khawatir bahwa saya tidak lagi secara eksplisit menutup koneksi database dan bagaimana saya bisa melakukannya secara eksplisit dengan pengaturan ini? Kedua, apakah yang telah saya lakukan berada di dekat bidang praktik yang baik dan bagaimana saya bisa mendekati ini?
openConn
fungsi dan buat pengguna meneruskannya ke setiap fungsi yang mereka sebut, dengan cara itu mereka dapat mengatur koneksi dalamwith
pernyataan atau apa pun