Kafka HTTP Topic Producer 配置 acks=all

问题描述

我们如何为 KAFKA HTTP Topic 设置 acks=all?我尝试将下面的 JSON 发送为 "acks":"all" 但它抛出了一个无法识别的属性。我也尝试在标题中设置它。但是在 Header 中,当我设置为 0,1、all 和 abcd 等任何值时。它接受所有的价值观。所以我不能依赖标题。但是从 Java 代码中,我们可以将此属性设置为 ProducerConfig.ACKS_CONfig 作为键值对

{
    "records": [
        {
            "value": { "name": "Firstname,lastname" },"key":"123e4567-e89b-42d3-a456-5566424415123591"
        }
    ]
}

任何建议都有帮助。

解决方法

在 Kafka REST 代理的情况下,生产者实例在客户端之间共享,即客户端将连接到 REST 代理实例,而这些 REST 代理实例将依次连接到 Kafka 集群(代理).

您提供的 json 将仅包含数据记录。

REST 代理层将拥有您正在寻找的生产者的全局设置,而客户最终将共享这些设置。因此,如果您可以访问 REST 代理实例,那么您可以直接在那里修改这些参数。