约束与限制
本章节介绍分布式消息服务Kafka产品功能的约束和限制。
实例
| 
        限制项  | 
      
        约束与限制  | 
     
|---|---|
| 
        Kafka ZooKeeper  | 
      
        Kafka集群依赖ZooKeeper进行管理,开放ZooKeeper可能引发误操作导致业务受损,当前仅Kafka内部使用,不对外提供服务。  | 
     
| 
        版本  | 
      
       
  | 
     
| 
        登录Kafka节点所在机器  | 
      
        不能登录  | 
     
| 
        存储空间  | 
      
       
  | 
     
| 
        基准带宽/代理个数  | 
      
        只支持增加基准带宽/代理个数,不支持减小基准带宽/代理个数。  | 
     
| 
        代理规格  | 
      
       
  | 
     
| 
        修改VPC/子网/可用区  | 
      
        实例创建后,不支持修改VPC/子网/可用区。  | 
     
| 
        是否支持Kerberos认证  | 
      
        不支持  | 
     
| 
        客户端单IP连接数  | 
      
        Kafka实例的每个代理允许客户端单IP连接的个数默认为1000个,如果超过了,会出现连接失败问题。  | 
     
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名称开头包含特殊字符,例如下划线“_”、#号“#”,会导致监控数据无法展示。  | 
     
| 
        是否支持延迟队列  | 
      
        不支持  | 
     
| 
        代理故障场景  | 
      
        实例中部分代理故障时,无法创建、修改和删除Topic,只能查询Topic。  | 
     
消费组
| 
        限制项  | 
      
        约束与限制  | 
     
|---|---|
| 
        是否需要创建消费组、消费者、生产者  | 
      
        不需要单独创建消费组、生产者和消费者,在使用时自动生成,实例创建后,直接使用即可。  | 
     
| 
        重置消费进度  | 
      
        重置消费进度可能会导致重复消费。  | 
     
| 
        消费组名称  | 
      
        消费组名称开头包含特殊字符,例如下划线“_”、#号“#”,会导致监控数据无法展示。  | 
     
| 
        代理故障场景  | 
      
        实例中部分代理故障时,无法创建、删除消费组,以及重置消费进度,只能查询消费组。  | 
     
消息
| 
        限制项  | 
      
        约束与限制  | 
     
|---|---|
| 
        消息大小  | 
      
        生产消息的最大长度为10MB,超过10MB会导致生产失败。  | 
     
用户
| 
        限制项  | 
      
        约束与限制  | 
     
|---|---|
| 
        创建用户的数量  | 
      
        一个Kafka实例最多创建20个SASL_SSL用户。  | 
     
| 
        代理故障场景  | 
      
        实例中部分代理故障时,无法创建、删除用户,以及重置密码,只能查询用户。  |