@@ -6,15 +6,11 @@ import { UserService } from '../../database/models/User';
66import { GroupRuleService } from '../../database/models/GroupRule' ;
77import { WarningDatabaseService } from '../../database/models/Warning' ;
88import logger from '../../utils/logger' ;
9- import { CopBot } from '../../bot' ;
109
1110export class ServiceProvider {
1211 private static instance : ServiceProvider ;
1312 private _clientInstance : Client ;
1413 private _connectionPool ! : ConnectionPool ;
15-
16- private lastRequestTime : number | null = null ; // Track the last request time
17- private readonly requestInterval : number = 5000 ;
1814 private constructor ( ) {
1915 this . _clientInstance = new Client ( ) ;
2016 }
@@ -31,18 +27,6 @@ export class ServiceProvider {
3127 }
3228 return ServiceProvider . instance ;
3329 }
34- private async enforceRateLimit ( ) : Promise < void > {
35- const now = Date . now ( ) ;
36- if ( this . lastRequestTime ) {
37- const elapsed = now - this . lastRequestTime ;
38- if ( elapsed < this . requestInterval ) {
39- const waitTime = this . requestInterval - elapsed ;
40- logger . error ( `⚠️ Rate limit exceeded. Please wait for ${ waitTime } ms before making another request.` ) ;
41- await new Promise ( ( resolve ) => setTimeout ( resolve , waitTime ) ) ;
42- }
43- }
44- this . lastRequestTime = Date . now ( ) ;
45- }
4630 static getInstance ( ) {
4731 return ServiceProvider . instance ;
4832 }
@@ -57,7 +41,6 @@ export class ServiceProvider {
5741 await this . _connectionPool . close ( ) ;
5842 }
5943 async getPoolClint ( ) : Promise < PoolClient > {
60- await this . enforceRateLimit ( ) ;
6144 try {
6245 const client = await this . _connectionPool . getClient ( ) ;
6346 client . on ( 'error' , ( err : any ) => {
0 commit comments