5req/s universal rate limit

This commit is contained in:
2026-03-19 21:53:53 +08:00
parent 96135493a6
commit 16a32e82d6
3 changed files with 13 additions and 17 deletions

View File

@@ -1,7 +1,8 @@
import { Module } from '@nestjs/common';
import { ConfigModule, ConfigService } from '@nestjs/config';
import { APP_GUARD } from '@nestjs/core';
import { EventEmitterModule } from '@nestjs/event-emitter';
import { ThrottlerModule } from '@nestjs/throttler';
import { ThrottlerGuard, ThrottlerModule } from '@nestjs/throttler';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { UsersModule } from './users/users.module';
@@ -76,8 +77,8 @@ function validateOptionalProvider(
inject: [ConfigService],
useFactory: (config: ConfigService) => [
{
ttl: config.get('THROTTLE_TTL', 60000),
limit: config.get('THROTTLE_LIMIT', 10),
ttl: config.get('THROTTLE_TTL', 1000),
limit: config.get('THROTTLE_LIMIT', 5),
},
],
}),
@@ -91,6 +92,12 @@ function validateOptionalProvider(
DollsModule,
],
controllers: [AppController],
providers: [AppService],
providers: [
AppService,
{
provide: APP_GUARD,
useClass: ThrottlerGuard,
},
],
})
export class AppModule {}