NestJs微服务入门

NestJs微服务入门
 最后更新于 2024年10月02日 22:59:38
app.ts
// 网关注册服务供应者
ClientsModule.registerAsync({
  client: [
    {
      name: 'UCENTER_SERVICE',
      transport: Transport.TCP,
      options: {
        host,
        port,
      }
    },
  ]
})

/**
 * 1、单服务启动
 * 通过createMicroservice创建微服务
 */
await NestFactory.createMicroservice<MicroserviceOptions>(AppModule, {
  transport: Transport.TCP,
  options: {
    host,
    port,
  }
});

/**
 * 2、混合应用
 * 混合应用是即启动了Http服务,又启动了微服务应用
 */
const app = await NestFactory.create(AppMdule, options);
// 主应用链接微服务应用
app.connectMicroservice<MicroserviceOptions>({
  transport: Transport.TCP,
  options: { host, port },
}, { inheritAppConfig: true });

// 启动微服务
await app.startAllMicroservices();

// 监听端口号
await app.listen(port);