SUS02-BP06 Mengimplementasikan buffering atau throttling untuk meratakan kurva permintaan - AWS Well-Architected Framework

SUS02-BP06 Mengimplementasikan buffering atau throttling untuk meratakan kurva permintaan

Buffering dan throttling meratakan kurva permintaan dan mengurangi kapasitas tersedia yang diperlukan untuk beban kerja Anda.

Antipola umum:

  • Anda memproses permintaan klien dengan segera walaupun tidak diperlukan.

  • Anda tidak menganalisis persyaratan untuk permintaan klien.

Manfaat menjalankan praktik terbaik ini: Meratakan kurva permintaan mengurangi kapasitas tersedia yang diperlukan untuk beban kerja. Mengurangi kapasitas tersedia artinya konsumsi energi berkurang dan dampak pada lingkungan juga berkurang.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak dijalankan: Rendah

Meratakan kurva permintaan beban kerja dapat membantu Anda mengurangi kapasitas tersedia untuk beban kerja dan mengurangi dampaknya pada lingkungan. Asumsikan beban kerja dengan kurva permintaan yang ditunjukkan pada gambar di bawah ini. Beban kerja ini memiliki dua puncak. Untuk menangani puncak-puncak ini, kapasitas sumber daya sebagaimana ditunjukkan oleh garis oranye disediakan. Sumber daya dan energi yang digunakan untuk beban kerja ini tidak diindikasikan oleh area di bawah kurva permintaan, tetapi oleh area di bawah garis kapasitas tersedia, karena kapasitas tersedia diperlukan untuk menangani kedua puncak ini.

Gelombang kapasitas tersedia dengan dua puncak terpisah yang memerlukan kapasitas dengan ketersediaan tinggi.

Kurva permintaan dengan dua puncak terpisah yang memerlukan penyediaan kapasitas tinggi.

Anda dapat menggunakan buffering atau throttling untuk memodifikasi kurva permintaan dan meratakan puncak, yang berarti konsumsi lebih sedikit energi dan penyediaan kapasitas lebih rendah. Implementasikan throttling ketika klien Anda dapat mencoba ulang. Implementasikan buffering untuk menyimpan permintaan dan menunda pemrosesan ke lain waktu.

Diagram gelombang yang menampilkan beban kerja dengan puncak datar yang dibuat menggunakan buffering atau throttling.

Efek throttling pada kurva permintaan dan kapasitas tersedia.

Langkah implementasi

  • Analisis permintaan klien untuk menentukan cara merespons permintaan. Pertanyaan yang harus dipertimbangkan antara lain:

    • Dapatkah permintaan ini diproses secara asinkron?

    • Apakah klien memiliki kemampuan untuk mencoba ulang?

  • Jika klien memiliki kemampuan untuk coba ulang, maka Anda dapat mengimplementasikan throttling, yang memberi tahu sumber bahwa jika sumber tidak dapat melayani permintaan pada saat ini maka sumber harus mencoba lagi nanti.

  • Untuk klien yang tidak dapat mencoba ulang, buffer harus diimplementasikan untuk meratakan kurva permintaan. Buffer menunda pemrosesan permintaan, sehingga aplikasi yang dijalankan pada tingkat yang berlainan dapat berkomunikasi secara efektif. Pendekatan berbasis buffer menggunakan antrean atau aliran untuk menerima pesan dari produsen. Pesan dibaca oleh konsumen dan diproses, sehingga pesan dapat dijalankan dengan tingkat yang memenuhi persyaratan bisnis konsumen.

  • Analisis permintaan secara keseluruhan, tingkat perubahan, dan waktu respons yang diperlukan untuk ukuran throttle atau buffer yang tepat.

Sumber daya

Dokumen terkait:

Video terkait: