ApsaraMQ for RocketMQ menerapkan kuota dan batas pada instans, tipe, serta parameter terkait. Patuhi batasan ini saat menggunakan ApsaraMQ for RocketMQ untuk menghindari error pada aplikasi.
Batasan parameter
Batas untuk nama resource dan keterangan pada parameter berikut bersifat tetap dan tidak dapat disesuaikan. Anda harus mematuhi spesifikasi secara ketat guna mencegah error pemrosesan sistem akibat penggunaan karakter khusus atau panjang yang melebihi batas.
Parameter | Batas | Deskripsi |
Nama instans |
| Tidak ada. |
Nama topik |
Karakter sistem yang dicadangkan: Jangan gunakan karakter cadangan berikut atau karakter dengan awalan atau akhiran khusus sebagai nama topik. | Gunakan karakter pendek dan umum untuk nama topik serta hindari karakter khusus. Karakter khusus dapat menyebabkan error parsing, sedangkan nama yang terlalu panjang dapat menyebabkan pesan ditolak. |
Nama LiteTopic |
| Gunakan karakter pendek dan umum untuk nama LiteTopic serta hindari karakter khusus. Karakter khusus dapat menyebabkan error parsing, sedangkan nama yang terlalu panjang dapat menyebabkan pesan ditolak. |
LiteTopic time-to-live (TTL) |
| Ini adalah waktu kedaluwarsa untuk resource LiteTopic di bawah topik saat ini. Jika tidak ada pesan baru yang ditulis ke LiteTopic mana pun di bawah topik tersebut selama periode yang mencapai TTL yang ditentukan, LiteTopic akan kedaluwarsa dan dihapus secara otomatis. Nilai -1 menunjukkan bahwa LiteTopic tidak pernah kedaluwarsa dan tidak dihapus. Anda dapat mengatur bidang ini ketika tipe pesan adalah Lite. |
Nama kelompok konsumen |
Karakter sistem yang dicadangkan: Jangan gunakan karakter cadangan berikut atau karakter dengan awalan khusus sebagai nama kelompok konsumen. | Tidak ada. |
Keterangan instans |
| Tidak ada. |
Keterangan topik | ||
Keterangan kelompok | ||
ACL credentials |
| Tidak ada. |
Waktu tunggu permintaan |
| Request timeout adalah waktu tunggu untuk panggilan sinkron pada klien. Anda dapat mengatur nilai yang wajar berdasarkan aplikasi Anda untuk menghindari pemblokiran thread dalam jangka waktu lama. |
Ukuran pesan | Maksimal 4 MB. Perhitungan hanya didasarkan pada ukuran isi pesan dan tidak termasuk kompresi pesan. | Anda dapat mengompresi dan mengontrol ukuran muatan untuk transmisi pesan serta menghindari transfer file berukuran besar. Jika sebuah pesan melebihi batas ukuran, Anda dapat membagi pesan tersebut atau menggunakan OSS untuk penyimpanan dan mengirimkan URL pesan sebagai gantinya. |
Custom message properties |
Properti sistem yang dicadangkan: Jangan gunakan properti cadangan berikut sebagai kunci untuk properti kustom. | Tidak ada. |
MessageGroup |
| MessageGroup adalah pengidentifikasi grup untuk pesan terurut. Biasanya diatur ke pengidentifikasi untuk sekelompok pesan yang memerlukan pengurutan, seperti ID pesanan atau ID pengguna. |
Pengiriman ulang pesan |
| Retry pengiriman pesan adalah kebijakan retry yang tertanam dalam kit pengembangan perangkat lunak (SDK) klien dan transparan bagi aplikasi. Jangan mengatur nilai ini terlalu tinggi karena dapat memblokir thread bisnis. Jika pesan gagal dikirim setelah jumlah maksimum retry tercapai, Anda harus mengimplementasikan mekanisme fallback di sisi bisnis untuk memastikan keandalan pesan. |
Percobaan ulang konsumsi pesan |
| Anda dapat mengatur nilai retry konsumsi yang wajar sesuai kebutuhan. Hindari menggunakan retry yang memicu loop tak hingga karena terlalu banyak retry dapat meningkatkan tekanan sistem secara signifikan. |
Abnormal Transaction Check Interval |
| Interval pemeriksaan resolusi transaksi adalah periode setelahnya klien produsen memeriksa resolusi transaksi jika pesan setengah-transaksional tidak dikomit karena restart sistem atau pengecualian. Jangan mengatur interval terlalu pendek karena panggilan pemeriksaan yang sering dapat memengaruhi performa sistem. |
Waktu pemeriksaan pertama untuk pesan setengah-transaksional |
| Tidak ada. |
Waktu tunggu maksimum untuk pesan setengah-transaksional |
| Jika pesan setengah-transaksional tidak dikomit karena restart sistem atau pengecualian, klien produsen melakukan pemeriksaan pada interval pemeriksaan resolusi transaksi yang ditentukan. Jika tidak ada hasil yang dikembalikan setelah waktu maksimum untuk pesan setengah-transaksional tercapai, pesan tersebut dipaksa rollback. Anda dapat memantau metrik ini untuk mencegah pengecualian transaksi. |
Penundaan maksimum untuk pesan terjadwal |
| Anda dapat mengatur penundaan untuk pesan terjadwal dalam satuan jam. Hindari mengatur penundaan yang terlalu lama. |
Waktu tunggu konsumsi PushConsumer |
| Timeout konsumsi PushConsumer dikontrol secara seragam oleh sisi server ApsaraMQ for RocketMQ. Jika sebuah pesan tidak diproses dalam periode timeout konsumsi, sistem secara paksa menandai konsumsi sebagai gagal dan memulai retry. Hal ini dapat menyebabkan sejumlah kecil pesan dikirim ulang. |
Cache lokal PushConsumer |
| Ketika tipe konsumen adalah PushConsumer, klien menyimpan cache pesan secara lokal di SDK untuk meningkatkan throughput dan performa konsumen. Jumlah dan ukuran pesan yang di-cache harus berada dalam batas memori sistem. |
Interval pengiriman ulang PushConsumer |
| Tidak ada. |
PushConsumer consumption concurrency |
| Tidak ada. |
Ukuran batch maksimum untuk pengambilan pesan |
| Ini adalah jumlah maksimum pesan yang dapat diambil konsumen dari server sekaligus. Anda dapat mengatur nilai yang wajar berdasarkan bisnis Anda. Mengambil terlalu banyak pesan sekaligus dapat menyebabkan banyak pengiriman ulang jika konsumsi gagal. |
SimpleConsumer maximum invisibility duration |
| Durasi ketidak-terlihatan adalah total waktu untuk pemrosesan pesan ditambah interval retry setelah kegagalan. Anda harus mengatur nilai ini sedikit lebih lama dari waktu aktual yang diperlukan. |
Waktu tunggu long polling konsumen | Rentang nilai: 5 detik hingga 20 detik. Anda dapat menyesuaikan nilai dalam rentang ini. | Setelah Anda mengatur timeout long polling, jika tidak ada pesan yang siap di server, permintaan klien akan diblokir hingga pesan baru tiba atau timeout tercapai. Menggunakan long polling dapat secara signifikan mengurangi permintaan kosong yang tidak valid saat volume pesan rendah. Hal ini mengurangi beban pada klien maupun server. |
Hubungan langganan | Batas panjang ekspresi filter: 4.000 karakter (termasuk filtering TAG dan filtering SQL). | Untuk informasi lebih lanjut tentang hubungan langganan, lihat Langganan. |
Kuota sumber daya
ApsaraMQ for RocketMQ membatasi metrik seperti QPS dan konkurensi untuk operasi tertentu berdasarkan stabilitas lingkungan produksi dan pengalaman operasi dan pemeliharaan (O&M). Kuota ini cukup untuk sebagian besar skenario. Jika kuota yang disediakan oleh ApsaraMQ for RocketMQ tidak memenuhi kebutuhan bisnis Anda dalam skenario khusus, Anda dapat menghubungi dukungan teknis ApsaraMQ for RocketMQ untuk bantuan.
Item batas | Batas | Deskripsi | |
Instans berlangganan dan berbayar sesuai penggunaan | Instans Serverless | ||
Jumlah instans per wilayah | Jumlah total instans semua tipe tidak boleh melebihi 1.000. | Tidak ada. | |
Message sending and receiving TPS per instance | Ditentukan oleh tipe instans yang dibeli. Untuk informasi lebih lanjut tentang batas spesifik, lihat Batas tipe instans. | Elastis dan adaptif | TPS pengiriman dan penerimaan pesan mencerminkan performa pemrosesan instans saat ini. Jika TPS aktual melebihi batas spesifikasi, instans akan mengalami pembatasan kecepatan. Anda harus segera meningkatkan tipe instans. |
Periode retensi pesan |
|
| Anda dapat memperpanjang periode retensi semaksimal mungkin sambil menjaga biaya penyimpanan tetap terkendali. Periode retensi yang lebih lama memberikan jendela yang lebih panjang untuk troubleshooting dan pelacakan data. |
Jumlah pesan inflight per kelompok konsumen | Maksimal 2.500. | Maksimal 2.500. | Jumlah pesan inflight yang berlebihan dalam kelompok konsumen dapat memperlambat respons konsumen. Anda harus memantau metrik ini dan segera menyelidiki penyebabnya. |
Number of LiteTopics a single consumer can subscribe to | Maksimal 2.000. | Maksimal 2.000. | Berlangganan terlalu banyak LiteTopic pada satu konsumen dapat memengaruhi performa klien. Anda dapat mengajukan tiket untuk menambah nilai maksimum jika diperlukan. |
Maximum consumption TPS for each LiteTopic | 200 | 200 | Anda dapat membuat ratusan ribu hingga jutaan LiteTopic di bawah satu topik. TPS konsumsi total topik tidak terpengaruh. |
Batasan operasi
ApsaraMQ for RocketMQ adalah Platform as a Service (PaaS) yang sepenuhnya dikelola. Oleh karena itu, sistem membatasi beberapa operasi O&M berisiko tinggi dan fitur yang tersedia di Apache RocketMQ open source. Untuk kebutuhan khusus, Anda dapat menghubungi dukungan teknis ApsaraMQ for RocketMQ untuk bantuan.
Item batas | Deskripsi |
Apache RocketMQ Admin tool compatibility | ApsaraMQ for RocketMQ tidak mendukung penggunaan API Admin Apache RocketMQ atau command-line interface (CLI) untuk mengelola instans, topik, dan grup. Untuk mengelola resource melalui API, gunakan OpenAPI yang disediakan oleh Alibaba Cloud. OpenAPI Alibaba Cloud mendukung SDK multi-bahasa dan perintah CLI. |
Pesan Request-Reply Apache RocketMQ | ApsaraMQ for RocketMQ tidak mendukung pengiriman pesan Request-Reply Apache RocketMQ. |
Komponen Streaming Apache RocketMQ | ApsaraMQ for RocketMQ tidak menyediakan layanan terkelola untuk komponen Streaming Apache RocketMQ. Anda dapat men-deploy sendiri di lingkungan Alibaba Cloud atau menggunakan fitur integrasi data ApsaraMQ for RocketMQ untuk mengimplementasikan integrasi dan komputasi data ringan. |
Komponen MQTT Apache RocketMQ | ApsaraMQ for RocketMQ tidak menyediakan layanan terkelola untuk komponen MQTT Apache RocketMQ. Gunakan layanan ApsaraMQ for MQTT yang disediakan oleh Alibaba Cloud, yang menawarkan fitur lebih lengkap. |
Komponen EventBridge Apache RocketMQ | ApsaraMQ for RocketMQ tidak menyediakan layanan terkelola untuk komponen EventBridge Apache RocketMQ. Gunakan layanan EventBridge dari Alibaba Cloud, yang menawarkan fitur lebih lengkap. |
Komponen Apache RocketMQ-Connector | ApsaraMQ for RocketMQ tidak menyediakan layanan terkelola untuk komponen Apache RocketMQ-Connector. Anda dapat menggunakan fitur integrasi data ApsaraMQ for RocketMQ untuk mengimplementasikan aliran masuk dan keluar data pesan. |
Batasan tipe instans
Semua instans seri Edisi Standar dan instans Edisi Node Tunggal dari seri Edisi Profesional tidak mendukung komputasi elastis burstable. Anda harus merencanakan penggunaan resource terlebih dahulu untuk mencegah pembatasan kecepatan instans yang disebabkan oleh lonjakan trafik yang melebihi batas spesifikasi selama runtime dengan watermark tinggi.
Kuota topik dan grup untuk satu instans dihitung berdasarkan praktik lingkungan produksi berskala besar dan memenuhi kebutuhan bisnis sebagian besar skenario. Anda harus membagi dan mengisolasi layanan Anda ke instans berbeda berdasarkan departemen dan domain. Hindari menjalankan semua layanan Anda dalam satu instans.
Spesifikasi TPS untuk pengiriman dan penerimaan pesan dihitung berdasarkan jumlah pesan yang dikirim dan diterima, dengan tipe pesan normal dan ukuran pesan 4 KB sebagai acuan. Saat menghitung TPS untuk pesan dengan fitur lanjutan atau pesan besar, Anda harus mengalikan hasilnya dengan laju yang sesuai. Untuk informasi lebih lanjut tentang metode perhitungan, lihat Spesifikasi perhitungan.
Jika TPS aktual untuk pengiriman dan penerimaan pesan melebihi batas atas spesifikasi yang Anda beli:
Jika instans memiliki TPS elastis yang diaktifkan, instans berjalan normal dalam rentang spesifikasi dasar hingga spesifikasi elastis. Penggunaan TPS elastis ditagih berdasarkan skema pay-as-you-go. Jika TPS melebihi batas atas kapasitas elastis, instans akan mengalami pembatasan kecepatan.
Untuk informasi penagihan TPS elastis instans non-Serverless, lihat Biaya TPS elastis. Untuk informasi penagihan TPS elastis instans Serverless, lihat Biaya TPS elastis Serverless.
Jika instans tidak mendukung atau belum mengaktifkan TPS elastis, ApsaraMQ for RocketMQ akan membatasi kecepatan instans tersebut.
Jika terlalu banyak koneksi antara klien dan instans ApsaraMQ for RocketMQ, server akan menghabiskan banyak resource untuk mempertahankan koneksi tersebut. Hal ini sangat memengaruhi stabilitas server. Oleh karena itu, jangan biarkan jumlah koneksi klien melebihi batas atas tipe instans.
Instans seri Serverless
Jumlah client online konkuren: Jumlah objek produsen atau konsumen online. Satu objek produsen atau satu objek konsumen dihitung sebagai satu client.
Jumlah sumber daya: Jumlah total topik dan kelompok konsumen.
Arsitektur penyebaran | Mode kapasitas | Spesifikasi TPS | Jumlah maksimum client online konkuren | Kuota gratis untuk klien online konkuren | Jumlah sumber daya maksimum | Kuota gratis untuk jumlah sumber daya | Jumlah maksimum LiteTopics yang dapat dibuat atau dilanggan |
Bersama | Cumulative | Semua | 5.000 | 500 | 3.000 | 100 | / |
Cadangan + Elastic | [2000, 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 | |||
Khusus | Dicadangkan + Elastis | 5.000 | 3.000 | 2.000 | 3.000 | 300 | 300.000 |
10.000 | 6.000 | 4.000 | 4.000 | 300 | 600.000 | ||
15.000 | 8.000 | 6.000 | 6.000 | 500 | 720.000 | ||
[20.000, 50.000] | 10.000 | 8.000 | 6.000 | 500 | 1.000.000 | ||
(50.000, 100.000] | 20.000 | 10.000 | 6.000 | 500 | 1.500.000 | ||
(100.000, 200.000] | 40.000 | 20.000 | 8.000 | 1.000 | 2.400.000 | ||
(200.000, 300.000] | 80.000 | 40.000 | 10.000 | 1.500 | 4.700.000 | ||
(300.000, 500.000] | 100.000 | 50.000 | 16.000 | 2.000 | 6.300.000 | ||
(500.000, 1.000.000] | 200.000 | 100.000 | 40.000 | 3.000 | 11.600.000 |
Instans seri non-Serverless (langganan dan pay-as-you-go)
Tipe instans Edisi Standar
Instance Subseries | Tipe instans | TPS dasar maksimum (TPS) | Maximum burst TPS (TPS) | Koneksi maksimum | Bandwidth downstream publik (Mbps) | Kuota topik gratis | Kuota topik maksimum | Kuota maksimum kelompok konsumen | Jumlah maksimum LiteTopics yang dapat dibuat atau dilanggan |
Single Node Edition (Tidak dijual lagi) | rmq.s1.micro | 500 | Tidak berlaku. Tipe ini tidak mendukung elastisitas burst. | 2.000 | 1 hingga 1.000 Dapat dikustomisasi. | 100 | 100 | 1.000 | / |
High-availability Edition | rmq.s2.2xlarge | 2.000 | 4.000 | 300 | 150.000 | ||||
rmq.s2.4xlarge | 4.000 | 4.000 | 250.000 | ||||||
rmq.s2.6xlarge | 6.000 | 6.000 | 500 | 300.000 |
Jika spesifikasi tertinggi (rmq.s2.6xlarge) untuk topik dan kelompok konsumen di Edisi Standar tidak memenuhi kebutuhan bisnis Anda, Anda dapat meningkatkan ke Edisi Profesional dan memilih tipe instans yang sesuai.
Tipe instans Edisi Profesional
Instance Subseries | Instance Type | TPS dasar maksimum (TPS) | Maximum burst TPS (TPS) | Koneksi maksimum | Bandwidth downstream publik (Mbps) | Kuota topik gratis | Kuota topik maksimum | Kuota maksimum kelompok konsumen | Jumlah maksimum LiteTopics yang dapat dibuat atau dilanggan |
Single Node Edition (Tidak dijual lagi) | rmq.p1.micro | 500 | Tidak berlaku. Tipe ini tidak mendukung elastisitas burst. | 2.000 | 1 hingga 1.000 Dapat dikustomisasi. | 150 | 150 | 1.500 | / |
High-availability Edition | rmq.p2.4xlarge | 4.000 | 2.000 | 4.000 | 2.000 | 250.000 | |||
rmq.p2.6xlarge | 6.000 | 3.000 | 6.000 | 300.000 | |||||
rmq.p2.10xlarge | 10.000 | 5.000 | 10.000 | 1.000 | 600.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 spesifikasi tertinggi (rmq.p2.10xlarge atau lebih tinggi) untuk topik dan kelompok konsumen di Edisi Profesional tidak memenuhi kebutuhan bisnis Anda, Anda dapat mengajukan tiket untuk bantuan.
Tipe instans Edisi Platinum
Sub-seri instans | Tipe instans | TPS maksimum (transaksi per detik) untuk spesifikasi messaging dasar | TPS burst maksimum (TPS) | Koneksi maksimum | Bandwidth downstream publik (Mbps) | Kuota topik gratis | Kuota topik maksimum | Kuota maksimum kelompok konsumen | Jumlah maksimum LiteTopics yang dapat dibuat atau dilanggan |
High-availability Edition | 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 spesifikasi untuk topik dan kelompok konsumen di Edisi Platinum tidak memenuhi kebutuhan bisnis Anda, Anda dapat mengajukan tiket untuk bantuan.