ApsaraMQ for RocketMQ menerapkan batasan pada kuota sumber daya, tipe instans, dan parameter terkait. Pastikan Anda tidak melebihi batas tersebut saat menggunakan layanan ini agar aplikasi tidak mengalami error.
Batas parameter
Batas parameter berikut bersifat tetap. Patuhi spesifikasi ini untuk mencegah error akibat karakter tidak valid atau panjang berlebihan.
Parameter | Nilai | Deskripsi |
Nama instans |
| Tidak ada. |
Nama topik |
Jangan gunakan karakter, awalan, atau akhiran khusus berikut untuk nama topik. | Gunakan karakter pendek dan umum untuk nama topik serta hindari karakter khusus yang dapat menyebabkan error parsing. Nama yang terlalu panjang dapat menyebabkan operasi pesan ditolak. |
Nama LiteTopic |
| Gunakan karakter pendek dan umum untuk nama LiteTopic serta hindari karakter khusus yang dapat menyebabkan error parsing. Nama yang terlalu panjang dapat menyebabkan operasi pesan ditolak. |
Waktu hidup (TTL) LiteTopic |
| Jika tidak ada pesan yang ditulis ke LiteTopic selama periode TTL yang ditentukan, LiteTopic akan kedaluwarsa dan dihapus secara otomatis. Nilai -1 berarti LiteTopic tidak pernah kedaluwarsa. Anda hanya dapat mengatur parameter ini saat jenis pesan adalah Lite. |
Nama kelompok konsumen |
Jangan gunakan karakter atau awalan khusus berikut untuk nama kelompok konsumen. | Tidak ada. |
Keterangan Instance |
| Tidak ada. |
Keterangan topik | ||
Keterangan kelompok konsumen | ||
Kredensial ACL |
| Tidak ada. |
Timeout permintaan |
| Timeout permintaan menentukan berapa lama klien menunggu hingga panggilan sinkron selesai. Atur nilai yang sesuai dengan aplikasi Anda untuk menghindari pemblokiran thread yang berkepanjangan. |
Ukuran pesan | Maksimum: 4 MB. Batas ini hanya berlaku untuk isi pesan dan tidak termasuk kompresi. | Anda dapat mengompresi pesan dan mengontrol ukuran muatan untuk menghindari transfer file besar. Jika pesan melebihi batas ukuran, Anda dapat membagi pesan tersebut atau menggunakan OSS dan mengirimkan URL pesan sebagai gantinya. Dukungan khusus untuk ukuran pesan tersedia. Ajukan tiket untuk mengajukan permohonan. |
Properti pesan kustom |
Jangan gunakan kunci properti khusus berikut sebagai kunci properti kustom. | Tidak ada. |
MessageGroup |
| MessageGroup adalah pengidentifikasi grup untuk pesan terurut. Biasanya diatur ke pengidentifikasi grup pesan yang harus diproses secara berurutan, seperti ID pesanan atau ID pengguna. |
Retries pengiriman pesan |
| SDK klien secara otomatis menangani retries pengiriman pesan berdasarkan kebijakan bawaan yang tidak terlihat oleh aplikasi Anda. Jangan atur nilai ini terlalu tinggi agar tidak memblokir thread bisnis. Jika pesan masih gagal setelah mencapai jumlah maksimum retries, Anda harus menerapkan mekanisme fallback di aplikasi untuk memastikan keandalan. |
Retries konsumsi pesan |
| Anda dapat mengatur nilai yang wajar sesuai kebutuhan. Hindari menggunakan retries yang memicu loop tak terbatas. Jumlah retries yang berlebihan dapat meningkatkan tekanan sistem secara signifikan. |
Interval pemeriksaan resolusi transaksi |
| Interval ini menentukan seberapa sering klien produsen memeriksa status pesan setengah-transaksional yang tidak dikomit karena pengecualian atau restart. Hindari mengatur interval ini terlalu singkat karena pemeriksaan yang terlalu sering dapat menurunkan performa sistem. |
Waktu pemeriksaan pertama untuk pesan setengah-transaksional |
| Tidak ada. |
Timeout maksimum untuk pesan setengah-transaksional |
| Jika pesan setengah-transaksional tidak dikomit karena restart sistem atau pengecualian, klien produsen memeriksa statusnya pada interval pemeriksaan resolusi transaksi yang ditentukan. Jika tidak ada hasil yang dikembalikan setelah periode timeout maksimum, pesan setengah-transaksional tersebut akan diputar balik secara paksa. Anda dapat memantau metrik ini untuk menghindari pengecualian transaksi. |
Delay maksimum untuk pesan terjadwal |
| Anda dapat mengatur delay untuk pesan terjadwal dalam interval per jam. Hindari delay yang terlalu lama. |
Timeout konsumsi PushConsumer |
| Timeout konsumsi PushConsumer dikendalikan oleh server ApsaraMQ for RocketMQ. Jika konsumen tidak memproses pesan dalam waktu timeout ini, sistem akan menandai upaya konsumsi sebagai gagal dan memicu retry. Hal ini dapat menyebabkan sejumlah kecil pesan duplikat. |
Cache lokal PushConsumer |
| Saat tipe konsumen adalah PushConsumer, SDK klien menyimpan beberapa pesan secara lokal untuk meningkatkan throughput dan performa konsumen. Jumlah dan ukuran pesan yang di-cache harus berada dalam batas memori sistem. |
Interval retry PushConsumer |
| Tidak ada. |
Konkurensi konsumsi PushConsumer |
| Tidak ada. |
Ukuran batch maksimum untuk pengambilan pesan |
| Parameter ini menentukan jumlah maksimum pesan yang dapat diambil konsumen dari server sekaligus. Anda dapat mengatur nilai yang wajar sesuai kebutuhan. Mengambil terlalu banyak pesan sekaligus dapat menyebabkan banyak pesan duplikat jika konsumsi gagal. |
Durasi tak terlihat maksimum SimpleConsumer |
| Atur durasi ini sedikit lebih lama dari waktu pemrosesan pesan yang Anda perkirakan, termasuk interval retry potensial. |
Timeout long polling konsumen | Rentang nilai: Minimum: 5 detik. Maksimum: 20 detik. Anda dapat mengkustomisasi nilai ini dalam rentang yang ditentukan. | Dengan long polling, jika tidak ada pesan yang tersedia di server, permintaan klien akan tetap terbuka hingga pesan tiba atau timeout berakhir. Metode ini mengurangi permintaan polling kosong dan menurunkan beban pada klien dan server, terutama saat volume pesan rendah. |
Langganan | Batas panjang ekspresi filter: 4.000 karakter (termasuk filter TAG dan SQL). | Untuk informasi lebih lanjut tentang langganan, lihat Langganan. |
Kuota sumber daya
ApsaraMQ for RocketMQ membatasi metrik seperti permintaan per detik (QPS) dan konkurensi untuk memastikan stabilitas produksi. Kuota ini cukup untuk sebagian besar skenario. Jika kuota ini tidak memenuhi kebutuhan bisnis Anda, hubungi dukungan teknis ApsaraMQ for RocketMQ untuk bantuan.
Batas | Nilai | Deskripsi | |
Instans langganan dan pay-as-you-go | Instans serverless | ||
Jumlah instans per wilayah | Maksimal 1.000 instans semua tipe. | Tidak ada. | |
TPS pengiriman dan penerimaan pesan per instans | Ditentukan oleh tipe instans yang dibeli. Untuk batas spesifik, lihat Batas tipe instans. | Skalabilitas otomatis | TPS pengiriman dan penerimaan pesan mencerminkan performa pemrosesan instans. Jika TPS aktual melebihi batas tipe instans, instans akan mengalami pembatasan kecepatan. Segera lakukan peningkatan tipe instans. |
Periode retensi pesan |
|
| Perpanjang periode retensi pesan selama biaya penyimpanan Anda memungkinkan. Periode yang lebih lama memberikan lebih banyak waktu untuk troubleshooting dan replay pesan. |
Jumlah pesan inflight per kelompok konsumen | Maksimum: 2.500. | Maksimum: 2.500. | Jumlah pesan inflight yang berlebihan dalam kelompok konsumen dapat memperlambat respons konsumen. Pantau metrik ini dan segera atasi penyebabnya. |
Jumlah LiteTopic yang dapat dilanggani satu konsumen | Maksimum: 2.000. | Maksimum: 2.000. | Langganan terhadap jumlah LiteTopic yang berlebihan pada satu konsumen dapat menurunkan performa klien. Untuk meminta peningkatan batas ini, ajukan tiket. |
TPS konsumsi maksimum untuk setiap LiteTopic | 200 | 200 | Anda dapat membuat ratusan ribu hingga jutaan LiteTopic di bawah satu topik. TPS konsumsi total topik tidak terpengaruh. |
Batasan
Message Queue for RocketMQ, platform layanan (PaaS) yang sepenuhnya dikelola, membatasi operasi dan fitur berisiko tinggi tertentu yang tersedia di Apache RocketMQ open-source demi stabilitas sistem. Jika Anda memiliki kebutuhan khusus, hubungi dukungan teknis Message Queue for RocketMQ.
Batasan | Deskripsi |
Kompatibilitas dengan alat Admin Apache RocketMQ | Message Queue for RocketMQ tidak mendukung API Admin Apache RocketMQ atau command-line interface (CLI) untuk mengelola instans, topik, atau grup. Jika Anda perlu mengelola sumber daya secara terprogram, gunakan Alibaba Cloud OpenAPI, yang menyediakan SDK multi-bahasa dan dukungan CLI. |
Pesan Request-Reply Apache RocketMQ | Message Queue for RocketMQ tidak mendukung pengiriman pesan Request-Reply Apache RocketMQ. |
Komponen Streaming Apache RocketMQ | Message Queue for RocketMQ tidak menyediakan komponen Streaming Apache RocketMQ yang dikelola. Anda dapat men-deploy komponen ini sendiri di lingkungan Alibaba Cloud atau menggunakan fitur integrasi data Message Queue for RocketMQ untuk integrasi dan komputasi data ringan. |
Komponen MQTT Apache RocketMQ | Message Queue for RocketMQ tidak menyediakan komponen MQTT Apache RocketMQ yang dikelola. Kami merekomendasikan menggunakan layanan Alibaba Cloud ApsaraMQ for MQTT, yang memiliki lebih banyak fitur. |
Komponen EventBridge Apache RocketMQ | Message Queue for RocketMQ tidak menyediakan komponen EventBridge Apache RocketMQ yang dikelola. Kami merekomendasikan menggunakan layanan Alibaba Cloud EventBridge, yang memiliki lebih banyak fitur. |
Komponen Connector Apache RocketMQ | Message Queue for RocketMQ tidak menyediakan komponen Connector Apache RocketMQ yang dikelola. Anda dapat menggunakan fitur integrasi data Message Queue for RocketMQ untuk input dan output data. |
Batas tipe instans
Instans Edisi Standar, Edisi Node Tunggal, dan Edisi Profesional tidak mendukung TPS elastis. Rencanakan penggunaan sumber daya Anda terlebih dahulu untuk mencegah pembatasan kecepatan instans jika lonjakan lalu lintas tiba-tiba melebihi batas spesifikasi Anda.
Kuota topik dan grup per instans cukup untuk sebagian besar kasus penggunaan produksi skala besar. Sebagai praktik terbaik, isolasi layanan bisnis Anda di instans berbeda berdasarkan departemen atau domain. Praktik ini meningkatkan stabilitas dan manajemen sumber daya.
Spesifikasi TPS pesan didasarkan pada jumlah total pesan normal yang dikirim dan diterima, menggunakan ukuran pesan standar 4 KB sebagai patokan. Pengali berlaku saat Anda menggunakan fitur pesan lanjutan atau mengirim pesan besar. Untuk detail cara perhitungan TPS, lihat Spesifikasi perhitungan.
Jika TPS aktual untuk pengiriman dan penerimaan pesan melebihi batas atas tipe instans yang Anda beli:
Jika TPS elastis diaktifkan, instans Anda dapat beroperasi normal selama TPS berada dalam rentang elastis yang disediakan. Penggunaan yang melebihi spesifikasi dasar ditagih berdasarkan pay-as-you-go. Jika TPS melebihi kapasitas elastis maksimum, instans akan mengalami pembatasan kecepatan.
Untuk informasi lebih lanjut tentang penagihan TPS elastis untuk instans non-Serverless, lihat Biaya TPS Elastis. Untuk informasi lebih lanjut tentang penagihan TPS elastis untuk instans Serverless, lihat Biaya TPS elastis Serverless.
Jika instans Anda tidak mendukung TPS elastis atau fitur tersebut tidak diaktifkan, Message Queue for RocketMQ akan membatasi kecepatan instans.
PentingPerilaku pembatasan kecepatan: Saat pembatasan kecepatan dipicu, server mengembalikan respons kegagalan untuk permintaan yang melebihi batas. Permintaan tidak dimasukkan ke antrean.
Risiko kehilangan pesan: Pembatasan kecepatan tidak membuang pesan di sisi server. Namun, jika klien tidak memiliki mekanisme retry setelah menerima respons kegagalan pembatasan kecepatan, sistem tidak menyimpan pesan tersebut. Hal ini setara dengan kehilangan pesan.
Praktik terbaik: Konfigurasikan kebijakan retry pengiriman pesan yang wajar di klien. Kebijakan ini menangani kegagalan pengiriman akibat pembatasan kecepatan sementara dan memastikan keandalan pesan.
Jumlah koneksi klien yang berlebihan ke instans Message Queue for RocketMQ mengonsumsi sumber daya server yang signifikan dan dapat sangat memengaruhi stabilitas. Oleh karena itu, pastikan jumlah koneksi klien tidak melebihi batas tipe instans Anda.
Instans seri Serverless
Jumlah klien online konkuren: Total jumlah produsen dan konsumen online. Masing-masing dihitung sebagai satu klien.
Jumlah sumber daya: Total jumlah topik dan kelompok konsumen.
Arsitektur penyebaran | Mode kapasitas | Rentang TPS | Maksimum klien konkuren | Kuota klien gratis | Jumlah sumber daya maksimum | Kuota sumber daya gratis | Maks LiteTopics |
Bersama | Penggunaan kumulatif | Semua | 5.000 | 500 | 3.000 | 100 | / |
Reserved + Elastic | [2.000, 20.000] | 5.000 | 1.000 | 3.000 | 200 | ||
(20.000, 50.000] | 8.000 | 2.000 | 3.000 | 200 | |||
(50.000, 100.000] | 10.000 | 3.000 | 3.000 | 200 | |||
(100.000, 200.000] | 20.000 | 5.000 | 3.000 | 200 | |||
Dedicated | Reserved + Elastic | 5.000 | 3.000 | 2.000 | 3.000 | 300 | 300.000 |
10.000 | 6.000 | 4.000 | 4.000 | 300 | 500.000 | ||
15.000 | 8.000 | 6.000 | 6.000 | 500 | 800.000 | ||
[20.000, 50.000] | 10.000 | 8.000 | 6.000 | 500 | 1.200.000 | ||
(50.000, 100.000] | 20.000 | 10.000 | 6.000 | 500 | 3.000.000 | ||
(100.000, 200.000] | 40.000 | 20.000 | 8.000 | 1.000 | 3.600.000 | ||
(200.000, 300.000] | 80.000 | 40.000 | 10.000 | 1.500 | 5.000.000 | ||
(300.000, 500.000] | 100.000 | 50.000 | 16.000 | 2.000 | 6.500.000 | ||
(500.000, 1.000.000] | 200.000 | 100.000 | 40.000 | 3.000 | 11.600.000 |
Instans Non-Serverless (langganan dan pay-as-you-go)
Edisi Standar
Sub-seri instans | Tipe instans | TPS dasar maks (ops/detik) | TPS burst maks (ops/detik) | Koneksi maks | Bandwidth egress (Mbps) | Kuota topik gratis | Kuota topik maks | Kelompok konsumen maks | Max LiteTopics |
Edisi Node Tunggal (Tidak dijual lagi) | rmq.s1.micro | 500 | Tidak berlaku Tipe instans ini tidak mendukung elastisitas burst. | 2.000 | 1 hingga 1.000 Dapat dikustomisasi. | 100 | 100 | 1.000 | / |
Edisi Ketersediaan Tinggi Kluster | rmq.s2.2xlarge | 2.000 | 4.000 | 300 | 50.000 | ||||
rmq.s2.4xlarge | 4.000 | 4.000 | 150.000 | ||||||
rmq.s2.6xlarge | 6.000 | 6.000 | 500 | 300.000 |
Jika kuota topik dan kelompok konsumen untuk instans Edisi Standar tingkat atas (rmq.s2.6xlarge) tidak mencukupi kebutuhan bisnis Anda, lakukan peningkatan ke Edisi Profesional dan pilih tipe instans yang sesuai.
Edisi Profesional
Sub-seri instans | Tipe instans | TPS dasar maks (ops/detik) | TPS burst maks (ops/detik) | Koneksi maks | Bandwidth egress (Mbps) | Kuota topik gratis | Kuota Topik Maksimum | Kelompok konsumen maks | Max LiteTopics |
Edisi Node Tunggal (Tidak dijual lagi) | rmq.p1.micro | 500 | Tidak berlaku Tipe instans ini tidak mendukung elastisitas burst. | 2.000 | 1 hingga 1.000 Dapat dikustomisasi. | 150 | 150 | 1.500 | / |
Edisi Ketersediaan Tinggi Kluster | rmq.p2.4xlarge | 4.000 | 2.000 | 4.000 | 500 | 2.000 | 150.000 | ||
rmq.p2.6xlarge | 6.000 | 3.000 | 6.000 | 300.000 | |||||
rmq.p2.10xlarge | 10.000 | 5.000 | 10.000 | 1.000 | 500.000 | ||||
rmq.p2.20xlarge | 20.000 | 10.000 | 10.000 | 800.000 | |||||
rmq.p2.30xlarge | 30.000 | 15.000 | 12.000 | 2.000 | 1.000.000 | ||||
rmq.p2.40xlarge | 40.000 | 20.000 | 12.000 | 1.200.000 | |||||
rmq.p2.50xlarge | 50.000 | 20.000 | 14.000 | 1.400.000 | |||||
rmq.p2.100xlarge | 100.000 | 30.000 | 26.000 | 2.200.000 | |||||
rmq.p2.120xlarge | 120.000 | 40.000 | 30.000 | 2.700.000 | |||||
rmq.p2.150xlarge | 150.000 | 50.000 | 38.000 | 3.300.000 | |||||
rmq.p2.200xlarge | 200.000 | 60.000 | 50.000 | 4.500.000 |
Jika kuota topik dan kelompok konsumen untuk instans Edisi Profesional rmq.p2.10xlarge atau lebih tinggi tidak mencukupi kebutuhan bisnis Anda, ajukan tiket.
Edisi Platinum
Sub-seri instans | Tipe instans | TPS dasar maks (ops/detik) | TPS burst maks (ops/detik) | Koneksi maks | Bandwidth keluar (Mbps) | Kuota topik gratis | Kuota topik maks | Kelompok konsumen maks | Max LiteTopics |
Edisi Ketersediaan Tinggi Kluster | rmq.u2.10xlarge | 10.000 | 5.000 | 10.000 | 1 hingga 1.000 Dapat dikustomisasi. | 200 | 3.000 | 4.000 | 600.000 |
rmq.u2.20xlarge | 20.000 | 10.000 | 10.000 | 800.000 | |||||
rmq.u2.30xlarge | 30.000 | 15.000 | 12.000 | 1.000.000 | |||||
rmq.u2.40xlarge | 40.000 | 20.000 | 10.000 | 1.200.000 | |||||
rmq.u2.50xlarge | 50.000 | 20.000 | 14.000 | 1.400.000 | |||||
rmq.u2.60xlarge | 60.000 | 22.000 | 16.000 | 1.600.000 | |||||
rmq.u2.70xlarge | 70.000 | 24.000 | 18.000 | 1.700.000 | |||||
rmq.u2.80xlarge | 80.000 | 26.000 | 20.000 | 1.800.000 | |||||
rmq.u2.90xlarge | 90.000 | 28.000 | 24.000 | 2.000.000 | |||||
rmq.u2.100xlarge | 100.000 | 30.000 | 26.000 | 2.200.000 | |||||
rmq.u2.120xlarge | 120.000 | 40.000 | 30.000 | 2.700.000 | |||||
rmq.u2.150xlarge | 150.000 | 50.000 | 38.000 | 3.300.000 | |||||
rmq.u2.200xlarge | 200.000 | 60.000 | 50.000 | 4.500.000 | |||||
rmq.u2.250xlarge | 250.000 | 70.000 | 51.000 | 5.600.000 | |||||
rmq.u2.300xlarge | 300.000 | 80.000 | 52.000 | 6.300.000 | |||||
rmq.u2.350xlarge | 350.000 | 90.000 | 53.000 | 7.500.000 | |||||
rmq.u2.400xlarge | 400.000 | 100.000 | 54.000 | 9.300.000 | |||||
rmq.u2.450xlarge | 450.000 | 120.000 | 60.000 | 10.400.000 | |||||
rmq.u2.500xlarge | 500.000 | 140.000 | 66.000 | 11.600.000 | |||||
rmq.u2.550xlarge | 550.000 | 160.000 | 72.000 | 12.800.000 | |||||
rmq.u2.600xlarge | 600.000 | 200.000 | 80.000 | 14.000.000 | |||||
rmq.u2.1000xlarge | 1.000.000 | 300.000 | 134.000 | 23.200.000 |
Jika kuota topik dan kelompok konsumen untuk instans Edisi Platinum masih tidak mencukupi kebutuhan bisnis Anda, ajukan tiket.