- 最新动态
- 功能总览
- 服务公告
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
- 最佳实践
- 开发指南
- API参考
- SDK参考
-
常见问题
-
实例问题
- 为什么可用区不能选择2个?
- 创建实例时为什么无法查看子网和安全组等信息?
- 如何选择Kafka实例的存储空间?
- Kafka实例的超高IO和高IO如何选择?
- 如何选择Kafka实例存储容量阈值策略?
- Kafka服务端支持版本是多少?
- Kafka实例的ZK地址是什么?
- 创建的Kafka实例是集群模式么?
- Kafka实例是否支持修改访问端口?
- Kafka实例的SSL证书有效期多长?
- 如何将Kafka实例中的数据同步到另一个Kafka实例中?
- Kafka实例的SASL_SSL开关如何修改?
- SASL认证机制如何修改?
- 如何修改安全协议?
- 修改企业项目,是否会导致Kafka重启?
- Kafka服务和ZK是部署在相同的虚拟机中,还是分开部署?
- Kafka包周期实例支持删除吗?
- Kafka支持哪些加密套件?
- 购买实例时选择的单AZ,怎样可以扩展为多AZ?
- Kafka是否支持跨AZ容灾?已经购买的实例在哪里查看是否为跨AZ?
- Kafka支持磁盘加密吗?
- Kafka实例创建后,能修改VPC和子网吗?
- 有没有Kafka Stream的案例?
- Kafka实例版本可以升级吗?
- 怎样重新绑定公网IP?
- 实例规格变更问题
-
连接问题
- 选择和配置安全组
- Kafka实例是否支持公网访问?
- Kafka实例的连接地址默认有多少个?
- 是否支持跨Region访问?
- Kafka实例是否支持跨VPC访问?
- Kafka实例是否支持不同的子网?
- Kafka是否支持Kerberos认证,如何开启认证?
- Kafka实例是否支持无密码访问?
- 开启公网访问后,在哪查看公网IP地址?
- Kafka支持服务端认证客户端吗?
- 连接开启SASL_SSL的Kafka实例时,ssl truststore文件可以用PEM格式的吗?
- 下载的证书JKS和CRT有什么区别?
- Kafka支持哪个版本的TLS?
- Kafka实例连接数有限制吗?
- 客户端单IP连接的个数为多少?
- Kafka实例的内网连接地址可以修改吗?
- 不同实例中,使用的SSL证书是否一样?
- 为什么不建议使用Sarama客户端收发消息?
- Topic和分区问题
- 消费组问题
- 消息问题
-
Kafka Manager问题
- 登录Kafka Manager的账号是否可以设置为只读账号?
- 登录到Kafka Manager页面,为什么获取不到节点信息?
- Yikes! Insufficient partition balance when creating topic : projectman_project_enterprise_project Try again.
- Kafka Manager能否查询到消息的正文?
- Kafka Manager WebUI的端口能否修改?
- 在Kafka Manager上支持修改Topic的哪些属性?
- Kafka Manager和云监控显示的信息不一致
- Kafka Manager如何修改Topic的分区Leader?
- 实例版本在控制台和Kafka Manager上显示不一致?
- 为什么实例中存在默认名为__trace和__consumer_offsets的Topic?
- 客户端删除消费组后,在Kafka Manager中仍可以看到此消费组?
- 监控告警问题
-
实例问题
- 故障排除
-
更多文档
-
用户指南 (阿布扎比区域)
- 产品简介
- 快速入门
- 权限管理
- 准备实例依赖资源
- 购买实例
- 连接Kafka
- 实例管理
- Topic管理
- 消息管理
- 用户管理
- 消费组管理
- 流控管理
- 修改配置参数
- 调整资源配额
- 监控
- 云审计服务支持的关键操作
-
常见问题
-
实例问题
- 为什么可用区不能选择2个?
- 创建实例时为什么无法查看子网和安全组等信息?
- 如何选择Kafka实例的存储空间?
- Kafka实例的超高IO和高IO如何选择?
- 如何选择Kafka实例存储容量阈值策略?
- Kafka服务端支持版本是多少?
- Kafka实例的ZK地址是什么?
- 创建的Kafka实例是集群模式么?
- Kafka实例是否支持修改访问端口?
- Kafka实例的SSL证书有效期多长?
- 如何将Kafka实例中的数据同步到另一个Kafka实例中?
- Kafka实例的SASL_SSL开关如何修改?
- SASL认证机制如何修改?
- 修改企业项目,是否会导致Kafka重启?
- Kafka服务和ZK是部署在相同的虚拟机中,还是分开部署?
- Kafka支持哪些加密套件?
- 购买实例时选择的单AZ,怎样可以扩展为多AZ?
- Kafka是否支持跨AZ容灾?已经购买的实例在哪里查看是否为跨AZ?
- Kafka支持磁盘加密吗?
- Kafka扩容会影响业务吗?
- Kafka实例创建后,能修改VPC和子网吗?
- 有没有Kafka Stream的案例?
- Kafka实例版本可以升级吗?
- 实例版本在控制台和Kafka Manager上显示不一致?
- 怎样重新绑定公网IP?
-
连接问题
- 选择和配置安全组
- Kafka实例是否支持公网访问?
- Kafka实例的连接地址默认有多少个?
- 是否支持跨Region访问?
- Kafka实例是否支持跨VPC访问?
- Kafka实例是否支持不同的子网?
- Kafka是否支持Kerberos认证,如何开启认证?
- Kafka实例是否支持无密码访问?
- 开启公网访问后,在哪查看公网IP地址?
- Kafka支持服务端认证客户端吗?
- 连接开启SASL_SSL的Kafka实例时,ssl truststore文件可以用PEM格式的吗?
- 下载的证书JKS和CRT有什么区别?
- Kafka支持哪个版本的TLS?
- Kafka实例连接数有限制吗?
- 客户端单IP连接的个数为多少?
- Kafka实例的内网连接地址可以修改吗?
- 不同实例中,使用的SSL证书是否一样?
-
Topic和分区问题
- Kafka实例的Topic数量是否有限制?
- 为什么限制Topic的总分区数?
- Kafka支持增加减少分区数吗?
- Kafka实例创建Topic失败
- Kafka实例支持批量导入Topic功能么?或者是自动生成Topic功能?
- 为什么删除Topic不生效?删除后该Topic仍然存在
- Kafka实例是否支持查看单个Topic占用磁盘空间?
- Topic是否支持ACL权限配置?
- 消息被消费后,没有删除,导致Kafka存储空间占满?
- 如何扩总分区?
- 修改自动创建Topic的配置,会触发重启吗?
- 如何关闭自动创建Topic功能?
- Kafka可以删除消费组下不用的Topic吗?
- 消费者消费Topic失败,提示没有权限?
- 为什么实例中存在默认名为__trace和__consumer_offsets的Topic?
- 消费组问题
- 消息问题
-
Kafka Manager问题
- 登录Kafka Manager的帐号是否可以设置为只读帐号?
- 登录到Kafka Manager页面,为什么获取不到节点信息?
- Yikes! Insufficient partition balance when creating topic : projectman_project_enterprise_project Try again.
- Kafka Manager能否查询到消息的正文?
- Kafka Manager WebUI的端口能否修改?
- 在Kafka Manager上支持修改Topic的哪些属性?
- Kafka Manager和云监控显示的信息不一致
- Kafka Manager如何修改Topic的分区Leader?
- 监控告警问题
-
实例问题
- 故障排除
- 修订记录
- API参考(阿布扎比区域)
-
用户指南(巴黎区域)
- 产品简介
- 快速入门
- 权限管理
- 准备实例依赖资源
- 创建实例
- 连接Kafka
- 实例管理
- Topic管理
- 消息管理
- 用户管理
- 消费组管理
- 流控管理
- 修改配置参数
- 调整资源配额
- 监控
- 云审计服务支持的关键操作
-
常见问题
-
实例问题
- 为什么可用区不能选择2个?
- 创建实例时为什么无法查看子网和安全组等信息?
- 如何选择Kafka实例的存储空间?
- Kafka实例的超高IO和高IO如何选择?
- 如何选择Kafka实例存储容量阈值策略?
- Kafka服务端支持版本是多少?
- Kafka实例的ZK地址是什么?
- 创建的Kafka实例是集群模式么?
- Kafka实例是否支持修改访问端口?
- Kafka实例的SSL证书有效期多长?
- 如何将Kafka实例中的数据同步到另一个Kafka实例中?
- Kafka实例的SASL_SSL开关如何修改?
- SASL认证机制如何修改?
- 修改企业项目,是否会导致Kafka重启?
- Kafka服务和ZK是部署在相同的虚拟机中,还是分开部署?
- Kafka支持哪些加密套件?
- 创建实例时选择的单AZ,怎样可以扩展为多AZ?
- Kafka是否支持跨AZ容灾?已经创建的实例在哪里查看是否为跨AZ?
- Kafka支持磁盘加密吗?
- Kafka实例创建后,能修改VPC和子网吗?
- 有没有Kafka Stream的案例?
- Kafka实例版本可以升级吗?
- 实例版本在控制台和Kafka Manager上显示不一致?
- 怎样重新绑定公网IP?
- 实例规格变更问题
-
连接问题
- 选择和配置安全组
- Kafka实例是否支持公网访问?
- Kafka实例的连接地址默认有多少个?
- 是否支持跨Region访问?
- Kafka实例是否支持跨VPC访问?
- Kafka实例是否支持不同的子网?
- Kafka是否支持Kerberos认证,如何开启认证?
- Kafka实例是否支持无密码访问?
- 开启公网访问后,在哪查看公网IP地址?
- Kafka支持服务端认证客户端吗?
- 连接开启SASL_SSL的Kafka实例时,ssl truststore文件可以用PEM格式的吗?
- 下载的证书JKS和CRT有什么区别?
- Kafka支持哪个版本的TLS?
- Kafka实例连接数有限制吗?
- 客户端单IP连接的个数为多少?
- Kafka实例的内网连接地址可以修改吗?
- 不同实例中,使用的SSL证书是否一样?
- 为什么不建议使用Sarama客户端收发消息?
-
Topic和分区问题
- Kafka实例的Topic数量是否有限制?
- 为什么限制Topic的总分区数?
- Kafka支持减少分区数吗?
- Kafka实例创建Topic失败
- Kafka实例支持批量导入Topic功能么?或者是自动生成Topic功能?
- 为什么删除Topic不生效?删除后该Topic仍然存在
- Kafka实例是否支持查看单个Topic占用磁盘空间?
- Topic是否支持ACL权限配置?
- 消息被消费后,没有删除,导致Kafka存储空间占满?
- 如何扩总分区?
- 修改自动创建Topic的配置,会触发重启吗?
- 如何关闭自动创建Topic功能?
- Kafka可以删除消费组下不用的Topic吗?
- 消费者消费Topic失败,提示没有权限?
- 为什么实例中存在默认名为__trace和__consumer_offsets的Topic?
- 消费组问题
- 消息问题
- Kafka Manager问题
- 监控告警问题
-
实例问题
- 故障排除
- 修订记录
- API参考(巴黎区域)
- 开发指南(巴黎区域)
-
用户指南(吉隆坡区域)
- 产品简介
- 快速入门
- Kafka业务使用流程
- 权限管理
- 购买Kafka实例
- 配置Topic
- 连接实例
- 管理消息
- 管理消费组
- 配置流控
- 管理实例
- 变更Kafka实例规格
- 迁移数据
- 申请扩大Kafka配额
- 查看监控指标与配置告警
- 查看Kafka审计日志
-
常见问题
-
实例问题
- 为什么可用区不能选择2个?
- 创建实例时为什么无法查看子网和安全组等信息?
- 如何选择Kafka实例的存储空间?
- Kafka实例的超高IO和高IO如何选择?
- 如何选择Kafka实例存储容量阈值策略?
- Kafka服务端支持版本是多少?
- Kafka实例的ZK地址是什么?
- 创建的Kafka实例是集群模式么?
- Kafka实例是否支持修改访问端口?
- Kafka实例的SSL证书有效期多长?
- 如何将Kafka实例中的数据同步到另一个Kafka实例中?
- Kafka实例的SASL_SSL开关如何修改?
- SASL认证机制如何修改?
- 修改企业项目,是否会导致Kafka重启?
- Kafka服务和ZK是部署在相同的虚拟机中,还是分开部署?
- Kafka支持哪些加密套件?
- 购买实例时选择的单AZ,怎样可以扩展为多AZ?
- Kafka是否支持跨AZ容灾?已经购买的实例在哪里查看是否为跨AZ?
- Kafka支持磁盘加密吗?
- Kafka实例创建后,能修改VPC和子网吗?
- 有没有Kafka Stream的案例?
- Kafka实例版本可以升级吗?
- 实例版本在控制台和Kafka Manager上显示不一致?
- 实例规格变更问题
-
连接问题
- 选择和配置安全组
- Kafka实例是否支持公网访问?
- Kafka实例的连接地址默认有多少个?
- 是否支持跨Region访问?
- Kafka实例是否支持跨VPC访问?
- Kafka实例是否支持不同的子网?
- Kafka是否支持Kerberos认证,如何开启认证?
- Kafka实例是否支持无密码访问?
- Kafka支持服务端认证客户端吗?
- 连接开启SASL_SSL的Kafka实例时,ssl truststore文件可以用PEM格式的吗?
- 下载的证书JKS和CRT有什么区别?
- Kafka支持哪个版本的TLS?
- Kafka实例连接数有限制吗?
- 客户端单IP连接的个数为多少?
- Kafka实例的内网连接地址可以修改吗?
- 不同实例中,使用的SSL证书是否一样?
- 为什么不建议使用Sarama客户端收发消息?
-
Topic和分区问题
- Kafka实例的Topic数量是否有限制?
- 为什么限制Topic的总分区数?
- Kafka支持减少分区数吗?
- Kafka实例创建Topic失败
- Kafka实例支持批量导入Topic功能么?或者是自动生成Topic功能?
- 为什么删除Topic不生效?删除后该Topic仍然存在
- Kafka实例是否支持查看单个Topic占用磁盘空间?
- Topic是否支持ACL权限配置?
- 消息被消费后,没有删除,导致Kafka存储空间占满?
- 如何扩总分区?
- 修改自动创建Topic的配置,会触发重启吗?
- Kafka可以删除消费组下不用的Topic吗?
- 消费者消费Topic失败,提示没有权限?
- 为什么实例中存在默认名为__trace和__consumer_offsets的Topic?
- 消费组问题
- 消息问题
-
Kafka Manager问题
- 登录Kafka Manager的账号是否可以设置为只读账号?
- 登录到Kafka Manager页面,为什么获取不到节点信息?
- Yikes! Insufficient partition balance when creating topic : projectman_project_enterprise_project Try again.
- Kafka Manager能否查询到消息的正文?
- Kafka Manager WebUI的端口能否修改?
- 在Kafka Manager上支持修改Topic的哪些属性?
- Kafka Manager和云监控显示的信息不一致
- Kafka Manager如何修改Topic的分区Leader?
- 监控告警问题
-
实例问题
- 故障排除
- 修订记录
- API参考(吉隆坡区域)
-
用户指南 (阿布扎比区域)
- 通用参考
链接复制成功!
Java开发环境搭建
基于收集连接信息的介绍,假设您已经获取了实例连接相关的信息,以及配置好客户端的网络环境。本章节以生产与发送消息的Demo为例,介绍Kafka客户端的环境配置。
开发环境
- Maven
Apache Maven 3.0.3及以上版本,可至Maven官方下载页面下载。
- JDK
Java Development Kit 1.8.111及以上版本,可至Oracle官方下载页面下载。
安装后注意配置JAVA的环境变量。
- IntelliJ IDEA
获取并安装IntelliJ IDEA,可至IntelliJ IDEA官方网站下载。
操作步骤
- 下载Demo包。
下载后解压,有如下文件:
表1 Kafka Demo文件清单 文件名
路径
说明
DmsConsumer.java
.\src\main\java\com\dms\consumer
消费消息的API。
DmsProducer.java
.\src\main\java\com\dms\producer
生产消息的API。
dms.sdk.consumer.properties
.\src\main\resources
消费消息的配置信息。
dms.sdk.producer.properties
.\src\main\resources
生产消息的配置信息。
client.jks
.\src\main\resources
SSL证书,用于SASL_SSL方式连接。
DmsConsumerTest.java
.\src\test\java\com\dms\consumer
消费消息的测试代码。
DmsProducerTest.java
.\src\test\java\com\dms\producer
生产消息的测试代码。
pom.xml
.\
maven配置文件,包含Kafka客户端引用。
- 打开IntelliJ IDEA,导入Demo。
Demo是一个Maven构建的Java工程,因此需要配置JDK环境,以及IDEA的Maven插件。图1 选择“导入工程”图2 选择“Maven”图3 选择Java环境
其他选项可默认或自主选择。然后单击Finish,完成Demo导入。
导入后Demo工程如下:
- 配置Maven路径。
打开“File > Settings”,找到“Maven home directory”信息项,选择正确的Maven路径,以及Maven所需的settings.xml文件。
- 修改Kafka配置信息。
以生产消息为例,具体修改请参考生产消息配置文件。
- 在IDEA工具的左下角,打开Terminal窗口,执行mvn test命令体验demo。
图4 IDEA的Terminal窗口位置
生产消息会得到以下回显信息:
------------------------------------------------------- T E S T S ------------------------------------------------------- Running com.dms.producer.DmsProducerTest produce msg:The msg is 0 produce msg:The msg is 1 produce msg:The msg is 2 produce msg:The msg is 3 produce msg:The msg is 4 produce msg:The msg is 5 produce msg:The msg is 6 produce msg:The msg is 7 produce msg:The msg is 8 produce msg:The msg is 9 Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 138.877 sec
消费消息会得到以下回显信息:
------------------------------------------------------- T E S T S ------------------------------------------------------- Running com.dms.consumer.DmsConsumerTest the numbers of topic:0 the numbers of topic:0 the numbers of topic:6 ConsumerRecord(topic = topic-0, partition = 2, offset = 0, CreateTime = 1557059377179, serialized key size = -1, serialized value size = 12, headers = RecordHeaders(headers = [], isReadOnly = false), key = null, value = The msg is 2) ConsumerRecord(topic = topic-0, partition = 2, offset = 1, CreateTime = 1557059377195, serialized key size = -1, serialized value size = 12, headers = RecordHeaders(headers = [], isReadOnly = false), key = null, value = The msg is 5)