我需要设计一个速率限制服务来控制请求的节流。对于每个传入的请求,该方法将检查每秒请求数是否超过其限制。如果超过了,则返回需要等待处理的时间。
寻求一个简单的解决方案,只使用系统滴答计数和rps(每秒请求)。不应使用队列或复杂的速率限制算法和数据结构。
编辑:我将在c++中实现这个。还要注意,我不想使用任何数据结构来存储当前正在执行的请求。 API如下:
如果(!RateLimiter.Limit()) { do work RateLimiter.Done(); } 否则 拒绝请求
寻求一个简单的解决方案,只使用系统滴答计数和rps(每秒请求)。不应使用队列或复杂的速率限制算法和数据结构。
编辑:我将在c++中实现这个。还要注意,我不想使用任何数据结构来存储当前正在执行的请求。 API如下:
如果(!RateLimiter.Limit()) { do work RateLimiter.Done(); } 否则 拒绝请求