【问题标题】:how to create multiple EmbeddedKafka beans on the same test spec如何在同一测试规范上创建多个 EmbeddedKafka bean
【发布时间】:2022-01-07 14:27:39
【问题描述】:

如何创建多个 EmbeddedKafka,目前我在 EmbeddedKafka 上定义了两个主题。

@EmbeddedKafka(
    partitions = 1,
    topics = [Constants.TEST_TOPIC_one, Constants.TEST_TOPIC_two],
    controlledShutdown = false,
    brokerProperties = [
        "offsets.topic.replication.factor=1",
        "transaction.state.log.replication.factor=1",
        "transaction.state.log.min.isr=1"
    ]
)
but i need to have two instance like below,

@EmbeddedKafka(
        partitions = 1,
        topics = [Constants.TEST_TOPIC_one],
        controlledShutdown = false,
        brokerProperties = [
            **"offsets.topic.replication.factor=1",
            "transaction.state.log.replication.factor=1",
            "transaction.state.log.min.isr=1"**
        ]
    )

@EmbeddedKafka(
        partitions = 1,
        topics = [Constants.TEST_TOPIC_two],
        controlledShutdown = false,
        brokerProperties = [
            **"offsets.topic.replication.factor=2",**
            "transaction.state.log.replication.factor=1",
            "transaction.state.log.min.isr=1"
        ]
    )

在上述区块中,我将更改 replication.factor

【问题讨论】:

    标签: spring apache-kafka integration-testing spring-kafka embedded-kafka


    【解决方案1】:

    如果是这种情况,您需要手动创建一个EmbeddedKafkaBroker,而不是依赖注释处理(并且可能不是作为一个bean):https://docs.spring.io/spring-kafka/docs/current/reference/html/#testing

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-18
      • 1970-01-01
      相关资源
      最近更新 更多