Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Manajemen sesi dengan Amazon RDS Data API
RDS Data API memelihara kumpulan koneksi database dan menggunakannya kembali di seluruh panggilan untuk mengurangi overhead koneksi. Sebelum menggunakan kembali koneksi, RDS Data API me-reset status sesi. Reset berbeda menurut mesin database: pada PostgreSQL, RDS Data API menjalankan DISCARD ALL pernyataan untuk menghapus status sesi seperti tabel sementara, pernyataan yang disiapkan, dan parameter tingkat sesi; di MySQL, RDS Data API me-reset koneksi (setara dengan). COM_RESET_CONNECTION
Reset ini mencakup atribut tingkat sesi yang dimiliki mesin, tetapi status yang dibuat oleh ekstensi tidak dijamin untuk disertakan. Ekstensi mungkin tidak berperilaku dengan cara yang sama seperti atribut tingkat sesi lainnya ketika pembersihan ini dijalankan, dan statusnya dapat bertahan pada koneksi database setelah reset. Karena RDS Data API menggunakan kembali koneksi, status yang ditinggalkan oleh ekstensi tidak terbatas pada panggilan yang membuatnya dan masih dapat hadir ketika panggilan selanjutnya menggunakan kembali koneksi yang sama.
dblinkadalah salah satu contoh perilaku ini: DISCARD ALL tidak menutup koneksi yang dibuka oleh dblink ekstensi, sehingga dblink koneksi bernama yang dibuka dalam satu panggilan dapat tetap terbuka ketika koneksi digunakan kembali. Ekstensi lain yang menyimpan sumber daya di luar status sesi mesin dapat berperilaku serupa.
Jika Anda menggunakan ekstensi dengan RDS Data API, jangan mengandalkan reset sesi untuk merilis status milik ekstensi. Buat dan lepaskan status itu dalam transaksi yang sama, menggunakan fungsi teardown ekstensi itu sendiri. Untukdblink, tutup setiap koneksi dengandblink_disconnect.