約束與限制
 
                  更新時間 2023-12-22 15:07:06
                    
 
                    最近更新時間: 2023-12-22 15:07:06
                  
   分享文章 
本文介紹分布式消息服務Kafka產品功能的約束和限制。
 實例
表實例約束與限制
限制項 約束與限制 Kafka ZooKeeper Kafka集群依賴ZooKeeper進行管理,開放ZooKeeper可能引發誤操作導致業務受損,當前僅Kafka內部使用,不對外提供服務。 版本 當前服務端版本為1.1.0、2.3.0和2.7。實例創建后,服務端版本不支持升級。
兼容0.10以上的客戶端版本,推薦使用和服務端一致的版本。登錄Kafka節點所在機器 不能登錄 存儲空間 只支持擴大存儲空間,不支持減小存儲空間。 
擴容存儲空間有次數限制,最多擴容20次。基準帶寬/代理個數 只支持增加基準帶寬/代理個數,不支持減小基準帶寬/代理個數。 代理規格 支持擴容/縮容代理規格。 修改VPC/子網/可用區 實例創建后,不支持修改VPC/子網/可用區。 是否支持Kerberos認證 不支持 
Topic
表 Topic約束與限制
| 限制項 | 約束與限制 | 
|---|---|
| Topic總分區數 | Topic總分區數和實例規格有關,具體請參考產品規格。Kafka以分區為粒度管理消息,分區多導致生產、存儲、消費都碎片化,影響性能穩定性。在使用過程中,當Topic的總分區數達到上限后,用戶就無法繼續創建Topic。 | 
| 單個Topic分區數 | 按照開源Kafka現有邏輯,單個Topic分區數只支持增加,不支持減少。 | 
| Topic數量 | Topic數量和Topic總分區數、每個Topic的分區數有關,具體請參考產品規格。 | 
| 是否支持自動創建Topic | 支持。開啟自動創建Topic表示生產或消費一個未創建的Topic時,系統會自動創建此Topic,此Topic的默認參數值如下:分區數為3,副本數為3,老化時間為72小時,不開啟同步復制和同步落盤。如果在“配置參數”中修改“log.retention.hours”、“default.replication.factor”或“num.partitions”的參數值,此后自動創建的Topic參數值為修改后的參數值。例如:“num.partitions”修改為“5”,自動創建的Topic參數值如下:分區數為5,副本數為3,老化時間為72小時,不開啟同步復制和同步落盤。 | 
| 同步復制 | Topic副本數為1時,不能選擇同步復制功能。 | 
| 副本數 | 不建議使用單副本。實例節點出現故障的情況下,單副本Topic查詢消息時可能會報“內部服務錯誤”,因此不建議使用單副本Topic。 | 
| 老化時間 | 如果Topic已經設置了老化時間,此時“配置參數”中的log.retention.hours值將不對此Topic生效。僅在Topic中未設置老化時間時,“配置參數”中的log.retention.hours值才會對此Topic生效。例如:Topic01設置的老化時間為60小時,“配置參數”中的log.retention.hours值為72小時,此時Topic01實際的老化時間為60小時。 | 
| 批量導入/導出Topic | 支持批量導出,不支持批量導入。 | 
| Topic名稱 | Topic名稱開頭包含特殊字符,例如下劃線“_”、#號“#”,會導致監控數據無法展示。 | 
| 是否支持延遲隊列 | 不支持 | 
消費組
表消費組約束與限制
| 限制項 | 約束與限制 | 
|---|---|
| 是否需要創建消費組、消費者、生產者 | 不需要單獨創建消費組、生產者和消費者,在使用時自動生成,實例創建后,直接使用即可。 | 
| 重置消費進度 | 重置消費進度可能會導致重復消費。 | 
| 消費組名稱 | 消費組名稱開頭包含特殊字符,例如下劃線“_”、#號“#”,會導致監控數據無法展示。 | 
消息
表 消息約束與限制
| 限制項 | 約束與限制 | 
|---|---|
| 消息大小 | 生產消息的最大長度為10M,超過10M會導致生產失敗。 | 
用戶
表用戶約束與限制
| 限制項 | 約束與限制 | 
|---|---|
| 創建用戶的數量 | 一個Kafka實例最多創建20個SASL_SSL用戶。 | 
