【问题标题】:Nest.js Inject kafka client to the serviceNest.js 将 kafka 客户端注入服务
【发布时间】:2021-05-22 07:59:46
【问题描述】:

我有一个 Nest.js 微服务应用程序。对于 MS 之间的消息代理,我使用的是 kafka。

现在我想在健康服务中注入同样的连接来测试它的状态。我不想创建新客户端和新连接。我需要在 main.ts 中创建的那个。

const microserviceOptions = {
  transport: Transport.KAFKA,
  options: {
    client: {
      clientId: `id`,
      brokers: [brokers],
    },
    consumer: {
      groupId: 'group-id',
    },
  },
};

理想情况下,我希望直接从 nestjs 获取 kafkajs 客户端,以创建生产者和消费者。

【问题讨论】:

    标签: apache-kafka microservices nestjs kafkajs


    【解决方案1】:

    如果有人一直在寻找这个。我将现有的 kafka transprot 策略扩展为自定义传输器并将其导入。

    我将 ServerKafka 扩展为一个新的类 CustomServerKafka。新类只有 getConsumer 和 getProducer,因为消费者和生产者在 ServerKafka 中受到保护。

    我使用单例类创建器来访问活跃的消费者

    【讨论】:

    • 如果你能发布一些非常有用的例子
    猜你喜欢
    • 2022-08-24
    • 2019-03-22
    • 1970-01-01
    • 2019-10-19
    • 2021-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-22
    相关资源
    最近更新 更多