检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本文汇总了基于分布式消息服务Kafka版常见应用场景的操作实践,为每个实践提供详细的方案描述和操作指导,帮助用户轻松使用Kafka。 表1 Kafka最佳实践一览表 最佳实践 说明 提高Kafka消息处理效率 本章节提供了生产者和消费者对于消息的使用建议,以提高消息发送和消息消费的效率与可靠性。 优化消费者轮询(Polling)
可以减少应用程序的体积和依赖关系。 Kafka-go相对于Confluent-Kafka-go来说,功能较为有限,不支持一些高级特性和复杂的配置选项。 性能和吞吐量较低,适用于一些对性能要求不高的简单应用场景。 Sarama Sarama采用原生Golang语言编写,对于异步以及高并发操作支持度较好。
具体网络要求请参考连接Kafka网络要求。 已配置正确的安全组。 客户端访问关闭SASL的Kafka实例前,Kafka实例需要配置正确的安全组规则,否则会连接失败。安全组规则的配置请参考表2。 已获取连接Kafka实例的地址。 在Kafka控制台的“基本信息 > 连接信息”中获取
描述 error_code String 错误码。 error_msg String 错误描述。 请求示例 升级id为instance_id的实例。 POST https://{endpoint}/v2/{project_id}/kafka/instances/{instance_id}/upgrade
Manager的用户名。只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。 kafka_manager_password String 是 表示登录Kafka Manager的密码。 复杂度要求: 输入长度为8到32位的字符串。 必须包含如下四种字符中的三种组合: 小写字母
对于管理员创建IAM用户接口,您可以从接口的请求部分看到所需的请求参数及参数说明,将消息体加入后的请求如下所示,其中加粗的字段需要根据实际值填写。 accountid为IAM用户所属的账号ID。 username为要创建的IAM用户名。 email为IAM用户的邮箱。 **********为IAM用户的登录密码。
在分布式消息服务Kafka版提供的原生Kafka SDK中,消费者可以自定义拉取消息的时长,如果需要长时间的拉取消息,只需要把poll(long)方法的参数设置合适的值即可。但是这样的长连接可能会对客户端和服务端造成一定的压力,特别是分区数较多且每个消费者开启多个线程的情况下。 如图1所示,
随机后缀。 磁盘写满的处理措施: 扩容磁盘,使磁盘具备更大的存储空间。 迁移分区,将已写满的磁盘中的分区迁移到本节点的其他磁盘中。 合理设置Topic的数据老化时间,减少历史数据的容量大小。 在CPU资源情况可控的情况下,使用压缩算法对数据进行压缩。 常用的压缩算法包括:ZIP,
数量)计算的费用。 存储空间费用:磁盘类型和总磁盘存储空间(单个代理的存储空间*代理数量)的费用。 计费周期 包年/包月Kafka实例的计费周期是根据您购买的时长来确定的(以UTC+8时间为准)。一个计费周期的起点是您开通或续费资源的时间(精确到秒),终点则是到期日的23:59:59。
Kafka不能保证消费重复的消息,业务侧需保证消息处理的幂等性。 消费线程退出要调用consumer的close方法,避免同一个组的其他消费者阻塞session.timeout.ms的时间。 消费组名称开头不使用特殊字符(如#),使用特殊字符可能会导致云监控无法展示此消费组的监控数据。 producer使用建议
返回该状态码,表明客户端尝试创建的资源已经存在,或者由于冲突请求的更新操作不能被完成。 410 Gone 客户端请求的资源已经不存在。 返回该状态码,表明请求的资源已被永久删除。 411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息。 412
服务韧性 DMS for Kafka提供了3级可靠性架构,通过跨AZ容灾、AZ内实例容灾、实例数据多副本技术方案,保障服务的持久性和可靠性。 表1 DMS for Kafka可靠性架构 可靠性方案 简要说明 跨AZ容灾 DMS for Kafka提供跨AZ类型实例,支持跨AZ容灾
1年3月20日后创建的实例,支持的加密套件为TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256。 2020年7月以及之后购买的实例,Kafka实例的每个代理允许客户端单IP连接的个数默认为1000个,在此之前购买的实例,Kafka实例的每个代理允许客户端单
通过以下几个场景,测试不同实例规格的TPS。 测试场景一(实例是否开启SASL):相同的Topic,实例分为开启SASL和未开启SASL 测试场景二(同步/异步复制):相同的实例,不同复制机制的Topic 测试场景三(是否同步落盘):相同的实例,不同落盘机制的Topic 测试场景四(不同
new_password 否 String 用户新密码。 重置用户密码时,为必选参数; 不能与名称或倒序的名称相同。 复杂度要求: 输入长度为8到32位的字符串。 必须包含如下四种字符中的三种组合: 小写字母 大写字母 数字 特殊字符包括(`~!@#$%^&*()-_=+|[{}]:'"
然后采取针对性的优化措施。 监控资源利用率,评估当前配置是否过高。例如:CPU、内存、云硬盘等资源的利用率。 监控闲置的资源,避免浪费。例如:未挂载的云硬盘、未绑定的EIP等。 计费模式优化 不同类型的业务对资源使用周期有不同的要求,为每一类业务确定合适的计费模式,灵活组合以达到最优效果。
实例规格和网络带宽说明 Kafka实例的网络带宽主要由以下两个部分组成: 实例Broker对应的网络带宽 实例Broker的磁盘所对应的带宽值(不同类型的磁盘对应的带宽值不同,具体参考:如何选择磁盘类型) 注意事项: Kafka默认情况下测试均为尾读场景(即仅消费最新生产的数据),而不是冷读场景(即从头开始消费历史数据的场景)。
60000 ms错误 问题现象 多可用区的Kafka实例,在某个可用区故障后,Kafka客户端在生产或消费消息时,可能会报Topic {{topic_name}} not present in metadata after 60000 ms的错误,如下图所示。 问题解决措施 以下三
创建用户 功能介绍 创建Kafka实例的用户,用户可连接开启SASL的Kafka实例。 2023年7月15日前创建的Kafka实例,一个实例最多创建20个用户。2023年7月15日及以后创建的Kafka实例,一个实例最多创建500个用户。 调用方法 请参见如何调用API。 URI
是否必选 参数类型 描述 new_password 否 String 用户新密码。 不能与名称或倒序的名称相同。 复杂度要求: 输入长度为8到32位的字符串。 必须包含如下四种字符中的三种组合: 小写字母 大写字母 数字 特殊字符包括(`~!@#$%^&*()-_=+|[{}]:'"