NestJS-Kafka group id 在代码中更新后没有变化
NestJS-Kafka group id unchanged after I updated it in the code
我正在使用 Kafka JS 连接到 kafka。在我的消费者中,最初我将我的组 ID 命名为 'orderable-test',后来当我将此组 ID 更新为 'orderable-test-1' 并重新运行我的代码时,组 ID 仍然是 'orderable-test'。即使我完全注释掉这个消费者并在另一个文件中编写另一个具有不同组 ID 的消费者,它仍然给我这个 'orderable-test' 作为组 ID 而不是新组 ID。我想知道是什么原因造成的,我该如何解决。
下面是我写的代码示例。
const consumer = kafka.consumer({ groupId: 'order-create-test' });
export class OrderInfoController {
constructor(private readonly OrderInfoService: OrderInfoService) {}
async onModuleInit() {
await consumer.connect();
this.CreateOrderConsumer(consumer);
}
async onModuleDestroy() {
await consumer.disconnect();
}
async CreateOrderConsumer(consumer){
await consumer.subscribe({ topic: 'test-order', fromBeginning: true });
await consumer.run({
eachMessage: async ({ topic, partition, message }) => {
console.log({
topic, partition,
message:{
key: message.key.toString(),
value: message.value.toString(),
}})
},
});
}
我自己想出来了。我认为对于 NestJS Kafka,热重载功能效果不佳。设置 Kafka Group ID 时,它似乎会被写入 node_module.
要解决这个问题,我需要删除 node_modules 和 dist 文件夹并执行 npm install
和 npm rebuild
以反映我的代码更改。
我正在使用 Kafka JS 连接到 kafka。在我的消费者中,最初我将我的组 ID 命名为 'orderable-test',后来当我将此组 ID 更新为 'orderable-test-1' 并重新运行我的代码时,组 ID 仍然是 'orderable-test'。即使我完全注释掉这个消费者并在另一个文件中编写另一个具有不同组 ID 的消费者,它仍然给我这个 'orderable-test' 作为组 ID 而不是新组 ID。我想知道是什么原因造成的,我该如何解决。
下面是我写的代码示例。
const consumer = kafka.consumer({ groupId: 'order-create-test' });
export class OrderInfoController {
constructor(private readonly OrderInfoService: OrderInfoService) {}
async onModuleInit() {
await consumer.connect();
this.CreateOrderConsumer(consumer);
}
async onModuleDestroy() {
await consumer.disconnect();
}
async CreateOrderConsumer(consumer){
await consumer.subscribe({ topic: 'test-order', fromBeginning: true });
await consumer.run({
eachMessage: async ({ topic, partition, message }) => {
console.log({
topic, partition,
message:{
key: message.key.toString(),
value: message.value.toString(),
}})
},
});
}
我自己想出来了。我认为对于 NestJS Kafka,热重载功能效果不佳。设置 Kafka Group ID 时,它似乎会被写入 node_module.
要解决这个问题,我需要删除 node_modules 和 dist 文件夹并执行 npm install
和 npm rebuild
以反映我的代码更改。