Springboot+Spring Cloud Stream+Pulsar Binder多绑定器启动失败问题
Spring Cloud Stream多绑定器配置Pulsar启动报错的解决方案
问题分析
这不是Bug,是你对Pulsar Binder在多绑定器场景下的配置方式用错了。在binders.pulsar.environment里嵌套spring.cloud.stream.pulsar.binder.config的结构,会导致Spring没法正确初始化PulsarAdministration这类核心Pulsar Bean,因为这种写法不符合Pulsar Binder的配置预期。
正确配置方式
别用environment属性来配置Pulsar Binder,直接在binders.pulsar节点下用configuration属性指定Pulsar的配置参数,这才是Spring Cloud Stream多绑定器的标准配置方式。
修正后的配置示例:
binders: kafka: type: kafka # 这里放你的Kafka绑定器配置 pulsar: type: pulsar configuration: serviceUrl: pulsar://localhost:6650 adminUrl: http://localhost:8080
额外配置说明
如果需要配置更复杂的Pulsar参数(比如认证、消费者/生产者专属属性),同样直接在configuration下添加即可,举个例子:
binders: pulsar: type: pulsar configuration: serviceUrl: pulsar://localhost:6650 adminUrl: http://localhost:8080 consumer: ackTimeout: 30000 producer: blockIfQueueFull: true
内容的提问来源于stack exchange,提问作者Dagmara
相关产品推荐
相关产品推荐

