import { ConfigModule } from '@nestjs/config'; // import { NacosService, NacosModule } from 'nest-nacos'; import { getEnvPath } from './common/helper/env.helper'; const envFilePath: string = getEnvPath(`${__dirname}/common/envs`); const config = ConfigModule.forRoot({ isGlobal: true, envFilePath: envFilePath, }); // const nacosMo = NacosModule.forRoot({ // server: '120.24.144.164:8848', // accessKey: 'testsocket', // secretKey: 'testsocket', // namespace: '4dkankan-v4-test', // config: { // group: 'DEFAULT_GROUP', // dataId: '4dkakan-daikan-dev.yaml', // }, // }); // const nacosMo = NacosModule.forRoot({ // server: '172.20.1.63:8848', // accessKey: 'nacos', // secretKey: 'nacos', // namespace: '4dkankan-v4-prod', // config: { // group: 'DEFAULT_GROUP', // dataId: '4dkakan-daikan.yaml', // }, // }); import { Module, OnModuleInit } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { RedisModule, RedisService } from '@liaoliaots/nestjs-redis'; import { ThrottlerModule } from '@nestjs/throttler'; import { ThrottlerStorageRedisService } from 'nestjs-throttler-storage-redis'; import { RoomModule } from './room/room.module'; // import { SocketModule } from './socket/socket.module'; import { RoomManagerModule } from './room-manager/room-manager.module'; const url = `redis://:${process.env.REDIS_PASSWORD}@${process.env.REDIS_HOST}:${process.env.REDIS_PORT}/${process.env.REDIS_DB}`; const redisMo = RedisModule.forRoot({ config: [ { url: url, }, { namespace: 'sub', url: url, }, ], }); const storeThor = ThrottlerModule.forRootAsync({ useFactory(redisService: RedisService) { const redis = redisService.getClient(); return { ttl: 60, limit: 600, storage: new ThrottlerStorageRedisService(redis), }; }, inject: [RedisService], }); // nacosMo @Module({ imports: [config, redisMo, storeThor, RoomModule, RoomManagerModule], controllers: [AppController], providers: [AppService], exports: [], }) export class AppModule implements OnModuleInit { // constructor(private readonly nacos: NacosService) { } async onModuleInit() { // await this.nacos.register('4dkakan-daikan-socket', true); } }