ApsaraDB RDS memastikan transmisi log biner secara real-time antara instans utama dan instansi read-only. Dalam kondisi normal, pembacaan dari instansi read-only mengembalikan data terkini. Namun, replikasi MySQL memiliki keterbatasan inheren: jika penerapan log biner memakan waktu terlalu lama, keterlambatan replikasi menumpuk dan instansi read-only tertinggal. Keterbatasan ini tidak dapat dihilangkan pada tingkat mesin database.
Untuk meminimalkan latensi sinkronisasi saat menerapkan log biner, gunakan instansi read-only dengan spesifikasi yang setara atau lebih tinggi daripada instans utama.
Cara kerja ambang batas latensi
ApsaraDB RDS memungkinkan Anda mengonfigurasi latency threshold untuk pemisahan baca/tulis. Saat sebuah instansi read-only melebihi ambang batas ini:
ApsaraDB RDS menghentikan pengiriman permintaan baca ke instansi tersebut.
Jika semua Instansi hanya baca melebihi ambang batas, ApsaraDB RDS mengarahkan seluruh permintaan ke instans utama—tanpa mempertimbangkan apakah bobot baca yang tidak nol telah ditetapkan untuk instans utama.
Perilaku ini melindungi aplikasi Anda dari pembacaan data usang saat replikasi tertinggal.
Kapan harus memaksa pembacaan ke instans utama
Untuk kueri yang memerlukan data real-time, tambahkan petunjuk /*FORCE_MASTER*/ agar langsung diarahkan ke instans utama, melewati proxy pemisahan baca/tulis:
/*FORCE_MASTER*/ SELECT * FROM table_name;