Mengelola ukuran transaksi
Saat Anda bekerja dengan transaksi, penting untuk menjaga transaksi Anda sesingk mungkin. Mode default autocommit, yang dapat Anda aktifkan atau nonaktifkan dengan menggunakan metode setAutoCommit , akan menerapkan setiap tindakan untuk Anda. Mode ini adalah mode term mudah untuk dikerjakan bagi sebagian besar pengembang.
Saat Anda menggunakan transaksi manual, pastikan kode Anda melakukan transaksi secepat mungkin. Menahan pembukaan transaksi memblokir pengguna lain untuk mengakses data. Misalnya, praktik pemrograman yang baik mungkin adalah melakukan panggilan putar kembali di blok tangkapan Anda dan panggilan penerapan dalam finally
blok. Namun, praktik ini tergantung pada desain aplikasi Anda.
Jaga ukuran transaksi Anda tetap kecil untuk meningkatkan konkurensi. Misalnya, jika Anda memulai transaksi manual dan memodifikasi 10.000 baris dalam tabel 20.000 baris, Anda akan memiliki setengah tabel yang diblokir dari semua pengguna lain, bahkan jika mereka hanya membaca data. Mengurangi modifikasi Anda menjadi 2.000 baris membuat 90 persen tabel tersedia.
Selain itu, pastikan untuk menggunakan pengaturan batas waktu kunci jika aplikasi Anda mengharapkan beberapa masalah pemblokiran. Anda dapat mengatur waktu habis dengan menggunakan metode setLockTimeout . Default untuk batas waktu kunci adalah -1, yang berarti akan memblokir tanpa batas waktu saat menunggu kunci. Anda dapat mengatur batas waktu penguncian menjadi 30 detik, yang akan menyebabkan waktu koneksi yang diblokir habis dalam 30 detik jika diblokir oleh koneksi lain.
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk