From 80231711f9d85ee63a363c28a965acc86281b8df Mon Sep 17 00:00:00 2001 From: Xia Lei Date: Sat, 8 Jun 2024 13:03:03 +0800 Subject: [PATCH] Update ratelimiter.md update rate_limiter_map initialize code --- docs/user_guide/ratelimiter.md | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/docs/user_guide/ratelimiter.md b/docs/user_guide/ratelimiter.md index c7265ba..3bb36c3 100644 --- a/docs/user_guide/ratelimiter.md +++ b/docs/user_guide/ratelimiter.md @@ -98,16 +98,7 @@ impl ProxyHttp for LB { // retrieve the current window requests let curr_window_requests = { let mut rate_limiter_map = RATE_LIMITER_MAP.lock().unwrap(); - let rate_limiter = match rate_limiter_map.get(&appid) { - None => { - let limiter = Rate::new(Duration::from_secs(1)); - rate_limiter_map.insert(appid.clone(), limiter); - rate_limiter_map.get(&appid).unwrap() - } - Some(limiter) => { - limiter - } - }; + let rate_limiter = rate_limiter_map.entry(appid.clone()).insert_or_with(|| Rate::new(Duration::from_secs(1))); rate_limiter.observe(&appid, 1) }; if curr_window_requests > MAX_REQ_PER_SEC { // rate limited, return 429 @@ -122,4 +113,4 @@ impl ProxyHttp for LB { Ok(false) } } -``` \ No newline at end of file +```