问题描述
鉴于整个 kafka 管道相当繁重, 并且需要相当多的资源。
我想模拟一个话题, 以便我可以独立/单独地测试和开发消费者。
我真的找不到太多, 我也是 Kafka 的新手。
我想我们可以有类似的东西:
docker run fake-topic -v stubs:/messages -it localhost:12345
然后, 稍后在消费者代码中:
import { ConsumerGlobalConfig,ConsumerTopicConfig } from 'node-rdkafka';
const consumer: Kafka.KafkaConsumer = new Kafka.KafkaConsumer({
'Metadata.broker.list': 'localhost:12345',},topicConfig);
这样我们的假货就会发送一些硬编码在 stubs/*.txt
解决方法
这是一个非常轻量级的自包含 Kafka 的 Docker 配置。您可以从中构建映像并轻松运行和重新启动它:https://github.com/up9inc/async-ms-demo/tree/main/kafka
此外,您会发现围绕 Kafka 的 Mockintosh 项目功能很有用:https://www.youtube.com/watch?v=6x2rLFMdiOI