Nest.js 将kafka客户端注入服务
Nest.js Inject kafka client to the service
我有一个 Nest.js 微服务应用程序。对于 MS 之间的消息代理,我使用的是 kafka。
现在我想在健康服务中注入同样的连接来测试它的状态。我不想创建新客户端和新连接。我需要在 main.ts.
中创建的那个
const microserviceOptions = {
transport: Transport.KAFKA,
options: {
client: {
clientId: `id`,
brokers: [brokers],
},
consumer: {
groupId: 'group-id',
},
},
};
理想情况下,我希望直接从 nestjs 获取 kafkajs 客户端,以创建生产者和消费者。
如果有人在搜索这个时遇到困难。我将现有的 kafka transprot 策略扩展到自定义传输器中并导入了它。
我将 ServerKafka 扩展为一个新的 class CustomServerKafka。新 class 只有 getConsumer 和 getProducer,因为消费者和生产者在 ServerKafka 中受到保护。
我使用单例 class 创建者来访问活跃的消费者
我有一个 Nest.js 微服务应用程序。对于 MS 之间的消息代理,我使用的是 kafka。
现在我想在健康服务中注入同样的连接来测试它的状态。我不想创建新客户端和新连接。我需要在 main.ts.
中创建的那个const microserviceOptions = {
transport: Transport.KAFKA,
options: {
client: {
clientId: `id`,
brokers: [brokers],
},
consumer: {
groupId: 'group-id',
},
},
};
理想情况下,我希望直接从 nestjs 获取 kafkajs 客户端,以创建生产者和消费者。
如果有人在搜索这个时遇到困难。我将现有的 kafka transprot 策略扩展到自定义传输器中并导入了它。
我将 ServerKafka 扩展为一个新的 class CustomServerKafka。新 class 只有 getConsumer 和 getProducer,因为消费者和生产者在 ServerKafka 中受到保护。
我使用单例 class 创建者来访问活跃的消费者