客户端性能调优
AutoMQ 不依赖本地磁盘,直接将数据写入对象存储。相较于本地磁盘写入,对象存储的文件创建操作具有较高延迟。例如,我们的实测数据显示:向 S3 写入 4MiB 文件时,P99 延迟约 400 毫秒。受此影响,在一些吞吐量优先的场景中,需要适当的调整客户端参数以满足系统性能目标的要求(Little’s Law)。
注意:
本文列举的配置仅供参考,用户需基于自身场景诉求、系统目标综合考虑,合理的调整对应参数值。
如果您的场景对消息读写延迟敏感,可以通过此处表单联系 AutoMQ 团队获取企业版支持。AutoMQ 企业版支持个位数毫秒的低延迟数据读写。
Producer 配置
Producer配置项 | 说明 | 推荐值 |
---|---|---|
linger.ms | Producer 等待消息批量发送的延迟时间,通过累积更多消息提升单次请求效率。 | 100 |
metadata.max.age.ms | 元数据强制刷新时间,避免因元数据过期导致路由错误。 | 60000 |
batch.size | 单个批次的最大字节数,直接影响网络请求次数与吞吐量。 | 1048576 |
max.request.size | 单个请求的最大字节数,限制Producer 能发送的消息大小。 | 16777216 |
Consumer 配置
Consumer 配置项 | 说明 | 推荐值 |
---|---|---|
metadata.max.age.ms | 元数据强制刷新时间,避免因元数据过期导致路由错误。 | 60000 |
max.partition.fetch.bytes | 限制单个分区在 Fetch 请求中返回的最大数据量,与fetch.max.bytes 协同控制拉取粒度。 | 8388608 |