8000 GitHub - lazydunk/cpp-rate-limiter: 基于令牌桶实现的C++高性能限流器
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

lazydunk/cpp-rate-limiter

 
 

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

基于令牌桶实现的C++高性能限流器

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 91.1%
  • Makefile 8.9%
0