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