Skip to content

Commit 8e5646d

Browse files
committed
chore: simplify msg rate limiting
1 parent 845dedc commit 8e5646d

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/adapters/web-socket-adapter.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -188,14 +188,19 @@ export class WebSocketAdapter extends EventEmitter implements IWebSocketAdapter
188188
{ period: period, rate: rate },
189189
)
190190

191-
const hits = await Promise.all(
192-
rateLimits
193-
.map(({ period, rate }) => hit(period, rate))
194-
)
195191

196-
debug('rate limit check %s: %o = %o', client, rateLimits.map(({ period }) => period), hits)
192+
for (const { rate, period } of rateLimits) {
193+
const isRateLimited = await hit(period, rate)
197194

198-
return hits.some((thresholdCrossed) => thresholdCrossed)
195+
196+
if (isRateLimited) {
197+
debug('rate limited %s: %d messages / %d ms exceeded', client, rate, period)
198+
199+
return true
200+
}
201+
}
202+
203+
return false
199204
}
200205

201206
private onClientPong() {

0 commit comments

Comments
 (0)