如何使用${akka.kafka.consumer}?

kyks70gy  于 2022-11-05  发布在  Kafka
关注(0)|答案(1)|浏览(107)

我尝试使用默认的Kafka配置设置,但我不确定${akka.kafka.consumer}是如何设置的。阅读https://doc.akka.io/docs/alpakka-kafka/current/consumer.html#config-inheritance我定义了以下内容:
在application.conf中,我定义了:

our-kafka-consumer: ${akka.kafka.consumer} {
  kafka-clients {
    bootstrap.servers = "kafka-host:9092"
  }
}

但在启动Akka集群时收到错误:

Could not resolve substitution to a value: ${akka.kafka.consumer}

${akka.kafka.consumer}是启动Akka Cluster时需要在外部设置的环境变量,还是已经存在的配置变量?
重点是使用${akka.kafka.consumer},然后根据需要覆盖默认值?

carvr3hs

carvr3hs1#

正如您所注意到的,文档的部分是“configinheritance”,它展示了如何在一个部分定义您的常规配置,然后在另一个部分扩展/替换该配置。(单击“源代码”按钮可查看本节示例).然后,由于HOCON的命名和继承特性,我可以使用${akka.kafka.consumer}从该节继承。实际上不需要使用该继承来配置Alpakka,这只是一个最佳实践。如果您只是尝试使用默认配置,那么它已经是默认配置了。
例如,如果你只是想定义引导服务器,你不需要像在这个例子中那样使用继承,你可以直接指定akka.kafka.consumer.kafka-clients.bootstrap.servers = "yourbootstrap:9092"。继承只是为了让你可以在一个地方指定共享设置。
如果您只是想了解如何配置Alpakka,请查看上面的设置部分。我发现查看参考配置最有帮助,您可以通过单击“重要消费者设置”旁边的reference.conf选项卡来查看。

相关问题