如何在springboot应用程序中添加嵌入式kafka

o2rvlv0m  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(401)

我在我的项目中使用kafka和springboot,现在我有了外部kafka集群和springboot微服务项目。
使用yml文件,我成功地创建了Kafka生产者和消费者,然后应用程序和Kafka通信都非常好。
现在我想在我的sprintboot项目中使用嵌入式kafka。类似于嵌入以下activemq代码。

spring:

  # Embedded ActiveMQ Configuration Example
  activemq:
      broker-url: vm://embedded?broker.persistent=false,useShutdownHook=false
      in-memory: true
      non-blocking-redelivery: true

我在谷歌上搜索和阅读了很多关于同一个网站的文章,但没有得到清晰的图片。这里我不希望这个嵌入式服务器只用于junit测试,但是
想要功能测试而不设置任何外部Kafka组件在我的生态系统。
我真的不知道该怎么做,有人能帮我吗。
提前谢谢

i34xakig

i34xakig1#

添加依赖项

<dependency>
        <groupId>org.springframework.kafka</groupId>
        <artifactId>spring-kafka-test</artifactId>
        <scope>test</scope>
    </dependency>

在测试中创建类似的内容

public static KafkaEmbedded embeddedKafka = new KafkaEmbedded(2, true, 2, "messages");

您已经准备好使用它了——不管是功能测试还是单元测试都不重要。
您可以指定代理、分区等的数量。
您可以用其他方法配置生产者和消费者。

相关问题