我有一个全局可用的Redis模块,它创建了一个RedisCluster连接,我正在AppModule中导入。
import { Module, Global } from '@nestjs/common';
import { Redis } from 'ioredis';
@Global()
@Module({
providers: [{
provide: 'REDIS_CONNECTION',
useFactory: () => {
return new Redis.Cluster([
{
host: process.env?.REDIS_HOST,
port: process.env?.REDIS_PORT
? Number(process.env?.REDIS_PORT)
: 6379,
},
], {
redisOptions: {
...(process.env?.REDIS_PASSWORD && {
password: process.env.REDIS_PASSWORD,
}),
maxRetriesPerRequest: null,
enableReadyCheck: false,
},
});
}
}],
exports: ['REDIS_CONNECTION'],
})
export class RedisModule { }
我有另一个名为RedisModule的模块,我需要在其中设置bull的配置,但不确定如何注入相同的全局可用RedisCluster连接
@Module({
imports: [
BullModule.forRootAsync({
**// how to inject connection here?**
}),
],
providers: [QueueProducerService, QueueConsumerService, Logger],
exports: [QueueProducerService],
})
export class QueueModule {}
1条答案
按热度按时间envsm3lx1#
这个应该可以了