雲訊息佇列 Kafka 版對某些具體指標進行了約束和規範,您在使用雲訊息佇列 Kafka 版時注意不要超過相應的限制值,以免程式出現異常。
若由於您的執行個體配置超出下列限制導致的任何不穩定情況,不在SLA承諾和賠償範圍內。
使用限制
雲訊息佇列 Kafka 版的限制項和限制值,請參見下表。
|
限制項 |
限制值 |
說明 |
|
限制Topic總數(分區總數) |
支援 |
雲訊息佇列 Kafka 版的儲存和協調機制是以分區為粒度的,Topic總數(分區總數)太多,會導致儲存片段化,叢集效能和穩定性下降。 |
|
Topic分區數最小值 |
|
如果流量過大,單分區可能導致資料扭曲熱點問題。建議合理設定分區數量。 |
|
Topic減少對應分區 |
不支援 |
這是Apache Kafka自身設計所限制的。 |
|
暴露ZooKeeper |
不支援 |
在使用設計層面,Apache Kafka自0.9.0之後已經屏蔽掉ZooKeeper,即用戶端使用無需訪問ZooKeeper。雲訊息佇列 Kafka 版的ZooKeeper是部分共用的,出於安全考慮,不予暴露。您也無需感知到ZooKeeper。 |
|
登入部署雲訊息佇列 Kafka 版的機器 |
不支援 |
無。 |
|
版本 |
支援2.2.x版本~3.3.x版本 |
如需升級版本,請參見升級執行個體版本。 |
|
分區數量和Topic數量的對應關係 |
1∶1 |
可使用的Topic數量與總分區數強相關。例如,您購買了分區數為50、流量規格為alikafka.hw.2xlarge、規格內贈送分區數為1000的執行個體,那麼該執行個體總分區數=購買分區數+規格內贈送分區數=50+1000=1050,可用Topic數量為1050。 說明
僅非Serverless執行個體適用。 |
|
變更執行個體的地區 |
不支援 |
執行個體購買部署之後,其地區與實體資源緊密結合,無法變更。如需變更執行個體的地區,請釋放執行個體,並重新購買。 |
|
變更執行個體網路屬性 |
支援 |
網路屬性可以根據需要變更。具體操作,請參見升級執行個體配置。 |
|
訊息大小 |
10 MB |
訊息大小不得超過10 MB,否則訊息會發送失敗。 |
|
監控警示 |
支援 |
資料延時1分鐘。 |
|
存取點 |
購買規格 |
|
|
雲端儲存單分區 |
宕機和升級時可能導致不可用 |
建議建立的分區數大於1,如果強依賴單分區,可以使用Local儲存。 說明
|
|
單Batch最大訊息條數限制 |
32767 |
如果單條訊息過小時,建議 說明
僅非Serverless執行個體存在此限制。 |
雲訊息佇列 Kafka 版非Serverless執行個體不再支援按照Topic規格購買執行個體,若您的已有執行個體是按照Topic規格購買的,那麼Topic數量與分區數量的對應關係為1∶16,專業版執行個體Topic數量=購買Topic數量×2。
配額限制
下表列舉了雲訊息佇列 Kafka 版使用限制項,超出下列使用限制可能會產生穩定性問題。其他限制中列舉了部分可能對服務端造成不良影響的使用情境,需要謹慎使用避免造成服務端過載引發穩定性問題。
除非另有說明,限制都是針對每個叢集的。如需更大的配額,請提交工單諮詢。
表格中出現的“//”表示整數除法,即向下取整。
|
限制項 |
限制條件 |
說明 |
||
|
訂用帳戶/按小時後付費執行個體 |
Serverless(基礎版) |
Serverless(標準版/專業版) |
||
|
串連數(單節點) |
計算公式:
|
計算公式:
|
單台Broker的TCP串連數。 如需更大串連數上限,請提交工單申請。 |
|
|
公網(SSL)串連數(單節點) |
計算公式:
|
計算公式:
|
單台Broker的公網(SSL)TCP串連數。 |
|
|
建立串連頻率(單節點) |
50次/秒 |
150次/秒 |
150次/秒 |
每秒用戶端與服務端嘗試建立串連次數(包含因鑒權失敗等原因導致的失敗串連)。 |
|
公網(SSL)建立串連頻率(單節點) |
10次/秒 |
每秒用戶端與服務端嘗試建立公網(SSL)串連次數(包含因鑒權失敗等原因導致的失敗串連)。 |
||
|
batch size |
batch size TP50=4 KB以下定義為片段化發送 |
發送用戶端攢批後PRODUCE請求中攜帶的訊息batch大小。推薦使用2.4以上的用戶端版本,提升batch攢批能力,請參見提升發送效能(減少片段化發送請求)。 |
||
|
發送請求頻率(叢集) |
計算公式:
|
計算公式:
|
計算公式:
|
用戶端每秒發送PRODUCE的請求數量。 如需更大請求數上限,請提交工單申請。 |
|
消費請求頻率(叢集) |
計算公式:
|
計算公式:
|
計算公式:
|
用戶端每秒消費FETCH的請求數量。 如需更大請求數上限,請提交工單申請。 |
|
提交消費位點頻率(單節點) |
計算公式:
|
計算公式:
|
用戶端每秒發送 OFFSET_COMMIT 的請求數量。 如需更大請求數,請提交工單申請。 |
|
|
中繼資料request頻率(叢集) |
計算公式:
|
計算公式:
|
服務端收到的用戶端中繼資料request,例如 警告
如果請求過於頻繁,會影響叢集穩定性。 |
|
|
最大分區數 |
各規格執行個體的最大分區數請參見執行個體分區數。 |
分區數包括使用者建立的不同類型Topic的分區。 如需更大分區上限數,請提交工單申請。 |
||
|
建立/刪除分區頻率(叢集) |
900分區(每10秒) |
包含控制台,OpenAPI、Kafka Admin等所有分區操作。 |
||
|
consumer group數量(叢集) |
2000/叢集 Topic和Group的訂閱比建議 1:1,不超過 3:1。 |
使用者使用的Group數量。 如需更大Group上限數,請提交工單申請。 警告
過多的消費者組可能導致服務端協調負載增加、中繼資料管理複雜性提高,從而影響效能和故障恢復。 |
||
|
訊息格式版本 |
發送訊息和消費訊息格式版本需大於V1 |
推薦使用2.4以上的用戶端版本。 警告
使用較低版本的Kafka訊息格式可能導致服務端CPU上升、吞吐效能下降及相容性和安全性等問題。 |
||
|
其他限制 |
|
無 |
||