基于Redis的键控节流实现的队列系统。
项目描述
基于Redis的键控节流实现的队列系统。
自由软件:BSD 2-Clause许可证
安装
pip install redis-throttled-queue
您还可以使用以下命令安装开发版本:
pip install https://github.com/ionelmc/python-redis-throttled-queue/archive/main.zip
文档
开发
要运行所有测试,请执行
tox
注意,要合并所有tox环境中的覆盖率数据,请运行
Windows |
set PYTEST_ADDOPTS=--cov-append tox |
---|---|
其他 |
PYTEST_ADDOPTS=--cov-append tox |
1 变更日志 =========
1.0.0 (2022-11-15)
从eval脚本切换到redis函数。最小Redis服务器版本变为7.0。
在Lua函数中使用直接索引替换了unpack调用。
这些更改至少提高了推送操作6%。
0.6.0 (2022-07-06)
简化了pop()代码以避免昂贵的扫描操作。现在'...:names键是一个有序集合,将用作使用键('...:usage:<window>')的模板。
0.5.0 (2022-06-28)
在AsyncThrottledQueue类中添加了支持,该类与常规的ThrottledQueue略有不同
移除了__len__,而是提供了一个可等待的size()方法。
__init__ 不再验证版本了,而是可以 await validate_version()。
push()、pull() 和 cleanup() 都是可 await 的。
为 ThrottledQueue 添加了 validate_version 参数(默认:True)。
0.4.4 (2022-05-09)
修复了某些队列为空时缺失的使用密钥过期问题。
0.4.3 (2022-04-09)
修复了重复值推送时的错误计数。目前,当推送两个相同的值时,将使用最高优先级。
0.4.2 (2022-04-02)
重构了 pop 脚本中的一些重复代码。
0.4.1 (2022-03-31)
修复了在数据库完全为空时 cleanup() 中的错误。
0.4.0 (2022-03-31)
添加了 last_activity 和 idle_seconds 属性。
添加了 cleanup() 方法。
0.3.1 (2022-03-31)
重命名了属性(应该可以安全地修改)
_limit 变为 limit。
_resolution 变为 resolution。
0.3.0 (2022-03-31)
允许使用任何窗口值(推荐使用 str/bytes/int)使用 pop(window)。
0.2.0 (2022-03-31)
修复了 __len__(之前返回一个字符串)。
0.1.0 (2022-03-30)
首次发布于 PyPI。
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。