Klien: ClientWrite - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Klien: ClientWrite

Peristiwa Client:ClientWrite terjadi saat Aurora PostgreSQL menunggu untuk menulis data ke klien.

Versi mesin yang didukung

Informasi peristiwa tunggu ini didukung untuk Aurora PostgreSQL versi 10 dan yang lebih tinggi.

Konteks

Proses klien harus membaca semua data yang diterima dari klaster DB Aurora PostgreSQL sebelum klaster tersebut dapat mengirim lebih banyak data. Waktu saat klaster menunggu sebelum mengirim lebih banyak data ke klien adalah peristiwa Client:ClientWrite.

Throughput jaringan yang berkurang antara klaster DB Aurora PostgreSQL dan klien dapat menyebabkan peristiwa ini. Tekanan CPU dan saturasi jaringan pada klien juga dapat menyebabkan peristiwa ini. Tekanan CPU adalah ketika CPU sepenuhnya digunakan dan ada tugas yang menunggu waktu CPU. Saturasi jaringan adalah saat jaringan antara basis data dan klien membawa lebih banyak data dari yang dapat ditanganinya.

Kemungkinan penyebab peningkatan peristiwa tunggu

Penyebab umum peristiwa Client:ClientWrite muncul dalam peristiwa tunggu teratas mencakup yang berikut:

Peningkatan latensi jaringan

Mungkin terdapat peningkatan latensi jaringan antara klaster DB Aurora PostgreSQL dan klien. Latensi jaringan yang lebih tinggi akan menambah waktu yang diperlukan klien untuk menerima data.

Peningkatan beban pada klien

Mungkin terdapat tekanan CPU atau saturasi jaringan pada klien. Peningkatan beban pada klien menunda penerimaan data dari klaster DB Aurora PostgreSQL.

Data dalam volume besar yang dikirim ke klien

Klaster DB Aurora PostgreSQL mungkin mengirimkan data dalam jumlah besar ke klien. Klien mungkin tidak dapat menerima data secepat klaster mengirimkannya. Aktivitas seperti penyalinan tabel besar dapat mengakibatkan peningkatan peristiwa Client:ClientWrite.

Tindakan

Kami merekomendasikan berbagai tindakan, tergantung pada penyebab peristiwa tunggu Anda.

Menempatkan klien di subnet VPC dan Zona Ketersediaan yang sama seperti klaster

Untuk mengurangi latensi jaringan dan meningkatkan throughput jaringan, tempatkan klien di subnet cloud privat virtual (VPC) dan Zona Ketersediaan yang sama seperti klaster DB Aurora PostgreSQL.

Menggunakan instans generasi saat ini

Dalam kasus tertentu, Anda mungkin tidak menggunakan kelas instans DB yang mendukung frame jumbo. Jika Anda menjalankan aplikasi di Amazon EC2, pertimbangkan untuk menggunakan instans generasi saat ini untuk klien. Selain itu, konfigurasikan unit transmisi maksimum (MTU) pada sistem operasi klien. Teknik ini dapat mengurangi jumlah round trip jaringan dan meningkatkan throughput jaringan. Untuk informasi selengkapnya, lihat Jumbo frame (9001 MTU) di Panduan Pengguna Amazon EC2.

Untuk informasi tentang kelas instans DB, lihat Kelas instans DB Aurora. Untuk menentukan kelas instans DB yang setara dengan jenis instans Amazon EC2, tempatkan db. sebelum nama jenis instans Amazon EC2. Misalnya, instans Amazon EC2 r5.8xlarge setara dengan kelas instans DB db.r5.8xlarge.

Mengurangi jumlah data yang dikirim ke klien

Jika memungkinkan, sesuaikan aplikasi Anda untuk mengurangi jumlah data yang dikirim klaster DB Aurora PostgreSQL ke klien. Penyesuaian ini akan mengurangi pertentangan CPU dan jaringan pada klien.

Skalakan klien Anda

Menggunakan Amazon CloudWatch atau metrik host lainnya, tentukan apakah klien Anda saat ini dibatasi oleh CPU atau bandwidth jaringan, atau keduanya. Jika klien dibatasi, skalakan klien sesuai yang diperlukan.