8000 GitHub - YukangLiu/RateLimiter: A Non-invasive,Powerful And CPU-friendly Ratelimiter!
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

A Non-invasive,Powerful And CPU-friendly Ratelimiter!

License

Notifications You must be signed in to change notification settings

YukangLiu/RateLimiter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

限流器

1、概述:
基于令牌桶算法实现,实现qps限制。blog: http://www.liuyukang.com/archives/cppxianliuqi


2、特点:
(1)接口使用简单,无业务侵入,接入成本极低
(2)线程安全,CPU友好,性能强劲
(3)极轻量,核心代码150行


3、编译:
进入src,make之后即可生成libratelimiter.so。


4、使用:
example中提供示例,将libratelimiter.so放入/usr/lib/中后进入example,make即可生成可执行文件。下面这段代码将会执行5s:

int main()
{
    RateLimiter r(100);//100qps限流器

    for(int i = 0; i < 500; ++i)
    {
        r.pass();//通过的速率为100/s
    }

    return 0;
}

About

A Non-invasive,Powerful And CPU-friendly Ratelimiter!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0