Broker default Amazon MQ for RabbitMQ - Amazon MQ

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

Broker default Amazon MQ for RabbitMQ

Ketika Anda membuat broker Amazon MQ for RabbitMQ, Amazon MQ menerapkan serangkaian kebijakan broker default dan batas vhost untuk mengoptimalkan performa broker. Amazon MQ menerapkan batas vhost hanya untuk vhost default (/). Amazon MQ tidak akan menerapkan kebijakan default ke vhost yang baru dibuat. Kami merekomendasikan Anda menyimpan default ini untuk semua broker baru dan yang sudah ada. Namun, Anda dapat mengubah, menimpa, atau menghapus default ini kapan saja.

Amazon MQ menciptakan kebijakan dan batas berdasarkan tipe instans dan mode deployment broker yang Anda pilih saat membuat broker. Kebijakan default diberi nama sesuai dengan mode deployment, seperti berikut:

  • Instans tunggalAWS-DEFAULT-POLICY-SINGLE-INSTANCE

  • Deployment klasterAWS-DEFAULT-POLICY-CLUSTER-MULTI-AZ

Untuk broker instans tunggal, Amazon MQ menetapkan nilai prioritas kebijakan ke 0. Untuk menimpa nilai prioritas default, Anda dapat membuat kebijakan kustom Anda sendiri dengan nilai prioritas yang lebih tinggi. Untuk deployment klaster, Amazon MQ menetapkan nilai prioritas ke 1 untuk broker default. Untuk membuat kebijakan kustom Anda sendiri bagi klaster, tetapkan nilai prioritas yang lebih besar dari 1.

catatan

Dalam deployment klaster, kebijakan broker ha-mode dan ha-sync-mode diperlukan untuk pencerminan klasik dan ketersediaan tinggi (HA).

Jika Anda menghapus kebijakan default AWS-DEFAULT-POLICY-CLUSTER-MULTI-AZ, Amazon MQ menggunakan kebijakan ha-all-AWS-OWNED-DO-NOT-DELETE dengan nilai prioritas 0. Hal ini memastikan bahwa kebijakan ha-mode dan ha-sync-mode yang diperlukan masih berlaku. Jika Anda membuat kebijakan kustom Anda sendiri, Amazon MQ secara otomatis menambahkan ha-mode dan ha-sync-mode ke definisi kebijakan Anda.

Deskripsi kebijakan dan batas

Daftar berikut menjelaskan kebijakan default dan batas yang diterapkan Amazon MQ untuk broker yang baru dibuat. Nilai untuk max-length, max-queues, dan max-connections beragam menurut tipe instans dan mode deployment broker Anda. Nilai tersebut tercantum pada bagian Nilai default yang direkomendasikan.

  • queue-mode: lazy (kebijakan) - Memungkinkan antrean malas. Secara default, antrean menyimpan cache dalam memori dari pesan, memungkinkan broker mengirimkan pesan kepada konsumen secepat mungkin. Hal ini dapat menyebabkan broker kehabisan memori dan memicu alarm memori tinggi. Antrean malas mencoba untuk memindahkan pesan ke disk sedini mungkin. Ini berarti bahwa lebih sedikit pesan disimpan dalam memori dalam kondisi operasi normal. Menggunakan antrean malas, Amazon MQ for RabbitMQ dapat mendukung beban olahpesan yang jauh lebih besar dan antrean yang lebih panjang. Perhatikan bahwa untuk kasus penggunaan tertentu, broker dengan antrean malas mungkin memiliki performa yang sedikit lebih lambat. Ini karena pesan dipindahkan dari disk ke broker, berlawanan dengan mengirim pesan dari cache dalam memori.

    Mode deployment

    Instans tunggal, klaster

  • max-length: number-of-messages (klaster) - Menetapkan batas jumlah pesan dalam antrean. Pada deployment klaster, batas mencegah jeda sinkronisasi antrean dalam kasus seperti boot ulang broker, atau mengikuti jendela pemeliharaan.

    Mode deployment

    Klaster

  • overflow: reject-publish (kebijakan) — Menegakkan kebijakan max-length ke antrean untuk menolak pesan baru setelah jumlah pesan dalam antrean mencapai nilai max-length. Untuk memastikan bahwa pesan tidak hilang jika antrian dalam keadaan berlebih, aplikasi klien yang memublikasikan pesan ke broker harus menerapkan konfirmasi penerbit. Untuk informasi tentang mengimplementasikan konfirmasi penerbit, lihat konfirmasi Penerbit di situs web RabbitMQ.

    Mode deployment

    Klaster

  • max-queues: number-of-queues-per-vhost (batas vhost) - Mengatur batas untuk jumlah antrean dalam broker. Mirip dengan definisi kebijakan max-length, membatasi jumlah antrean dalam deployment klaster mencegah jeda sinkronisasi antrean setelah boot ulang broker atau jendela pemeliharaan. Membatasi antrian juga mencegah CPU penggunaan berlebihan untuk mempertahankan antrian.

    Mode deployment

    Instans tunggal, klaster

  • max-connections: number-of-connections-per-vhost (batas vhost) - Mengatur batas untuk jumlah koneksi klien ke broker. Membatasi jumlah koneksi sesuai dengan nilai yang disarankan mencegah penggunaan memori broker yang berlebihan, yang dapat mengakibatkan broker meningkatkan alarm memori tinggi dan menghentikan operasi.

    Mode deployment

    Instans tunggal, klaster

Nilai default yang direkomendasikan

catatan

Batas default max-length dan max-queue diuji dan dievaluasi berdasarkan ukuran pesan rata-rata sebesar 5 kB. Jika ukuran pesan jauh lebih besar dari 5 kB, Anda harus menyesuaikan dan mengurangi batas max-length dan max-queue.

Tabel berikut mencantumkan nilai batas default untuk broker yang baru dibuat. Amazon MQ menerapkan nilai tersebut sesuai dengan tipe instans broker dan mode deployment.

Tipe instans Mode deployment max-length max-queues max-connections
t3.micro Instans tunggal N/A 500 500
m5.large Instans tunggal N/A 20.000 4.000
Klaster 8.000.000 4.000 15.000
m5.xlarge Instans tunggal N/A 30.000 8.000
Klaster 9.000.000 5.000 20.000
m5.2xlarge Instans tunggal N/A 60.000 15.000
Klaster 10.000.000 6.000 40.000
m5.4xlarge Instans tunggal N/A 150.000 30.000
Klaster 12.000.000 10.000 100.000