【文件属性】:
文件名称:redis_token_bucket:使用Ruby和Redis进行令牌桶速率限制
文件大小:12KB
文件格式:ZIP
更新时间:2021-05-13 12:19:54
Ruby
RedisTokenBucket
使用Redis后端的Ruby中的速率限制实现。
特征:
轻巧高效
每个存储桶使用一个Redis密钥
首次使用时会自动创建存储桶
不再使用时,存储桶会自动删除
快速且并发安全
每个操作仅使用一次到Redis的网络往返
计费令牌可以用全有或全无的语义来完成
连续计算
令牌值(费率,大小,当前水平,成本)使用浮点数
铲斗液位以微秒精度计算
强大而灵活
能够使用现存的语义(而不是全有或全无)
能够一次向多个存储桶收取任意代币数量的费用
能够“保留”令牌并创建“令牌债务”
需要Redis 3.2或更高版本。
安装
将此行添加到您的应用程序的Gemfile中:
gem 'redis_token_bucket'
用法
基本速率限制:
require 'redis'
require 'redis_token_bucket'
# create connecti
【文件预览】:
redis_token_bucket-master
----.gitignore(87B)
----.rspec(31B)
----bin()
--------setup(115B)
--------console(343B)
----.travis.yml(175B)
----LICENSE.txt(1KB)
----demo.rb(2KB)
----spec()
--------spec_helper.rb(88B)
--------redis_token_bucket_spec.rb(7KB)
----README.md(4KB)
----lib()
--------redis_token_bucket()
--------redis_token_bucket.rb(158B)
----redis_token_bucket.gemspec(987B)
----Gemfile(148B)
----Rakefile(28B)