gemercheung 2 лет назад
Родитель
Сommit
1baf3af050

+ 2 - 1
package.json

@@ -10,7 +10,7 @@
     "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\" ecosystem.config.js",
     "start": "nest start",
     "start:dev": "nest start --watch",
-    "start:debug": "nest start --debug --watch",
+    "start:debug": "cross-env NODE_ENV=development nest start --debug --watch",
     "start:prod": "node dist/main",
     "pm2:prod": "npm run build && cross-env NODE_ENV=production pm2 start -- ecosystem.config.js",
     "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
@@ -39,6 +39,7 @@
     "dotenv": "^16.0.3",
     "ioredis": "^5.3.1",
     "logform": "^2.5.1",
+    "nest-nacos": "^0.4.2",
     "nest-winston": "^1.8.0",
     "nestjs-throttler-storage-redis": "^0.3.0",
     "redis": "^4.6.4",

Разница между файлами не показана из-за своего большого размера
+ 663 - 23
pnpm-lock.yaml


+ 20 - 3
src/app.module.ts

@@ -6,7 +6,7 @@ const config = ConfigModule.forRoot({
   envFilePath: envFilePath,
 });
 
-import { Module } from '@nestjs/common';
+import { Module, OnModuleInit } from '@nestjs/common';
 import { AppController } from './app.controller';
 import { AppService } from './app.service';
 import { RedisModule, RedisService } from '@liaoliaots/nestjs-redis';
@@ -15,6 +15,7 @@ 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';
+import { NacosService, NacosModule } from 'nest-nacos';
 
 const url = `redis://:${process.env.REDIS_PASSWORD}@${process.env.REDIS_HOST}:${process.env.REDIS_PORT}/${process.env.REDIS_DB}`;
 
@@ -40,10 +41,26 @@ const storeThor = ThrottlerModule.forRootAsync({
   },
   inject: [RedisService],
 });
+
+const nacosMo = NacosModule.forRoot({
+  server: '120.24.144.164:8848',
+  accessKey: 'testsocket',
+  secretKey: 'testsocket',
+  namespace: '4dkankan-v4-test',
+  config: {
+    group: 'DEFAULT_GROUP',
+    dataId: '4dkankan-gateway.yaml',
+  },
+});
 @Module({
-  imports: [config, redisMo, storeThor, RoomModule, RoomManagerModule],
+  imports: [config, redisMo, storeThor, RoomModule, RoomManagerModule, nacosMo],
   controllers: [AppController],
   providers: [AppService],
   exports: [],
 })
-export class AppModule {}
+export class AppModule implements OnModuleInit {
+  constructor(private readonly nacos: NacosService) { }
+  async onModuleInit() {
+    await this.nacos.register('4dkakan-daikan-socket');
+  }
+}

+ 1 - 1
src/room/delay/delay.service.ts

@@ -19,7 +19,7 @@ export class DelayService {
     @Inject(forwardRef(() => RoomService))
     public readonly roomService: RoomService,
     public readonly tempService: TempService,
-  ) { }
+  ) {}
 
   init(): void {
     const redisDB = this.configService.get<string>('REDIS_DB');

+ 1 - 1
src/room/room.service.ts

@@ -17,7 +17,7 @@ export class RoomService {
     private readonly actionsService: ActionsService,
     private readonly delayService: DelayService,
     private readonly tempService: TempService,
-  ) { }
+  ) {}
   public readonly logger = new Logger('user');
   public _sleep = (ms: number) => new Promise((r) => setTimeout(r, ms));
   public _userInfo = {} as UserInfoType;

+ 1 - 1
src/room/users/users.service.ts

@@ -10,7 +10,7 @@ export class UsersService {
     @InjectRedis() private readonly redis: Redis,
     @Inject(forwardRef(() => RoomService))
     private roomService: RoomService,
-  ) { }
+  ) {}
 
   async isUserInRooms(RoomId: string, UserId: string): Promise<boolean> {
     const res = await this.redis.hexists(

+ 4 - 3
src/socket/socket.gateway.ts

@@ -33,12 +33,13 @@ console.log('SOCKET_USE_MSPACK', process.env.SOCKET_USE_MSPACK);
       : '',
 })
 export class SocketGateway
-  implements OnGatewayInit, OnGatewayDisconnect, OnGatewayConnection {
+  implements OnGatewayInit, OnGatewayDisconnect, OnGatewayConnection
+{
   constructor(
     @InjectRedis() private readonly redis: Redis,
     private readonly roomService: RoomService,
-    private readonly delayService: DelayService
-  ) { }
+    private readonly delayService: DelayService,
+  ) {}
   public readonly logger = new Logger('socketGateway');
   @WebSocketServer() server: Server;
   // public _loginLimit = new Map<string, string>();