limits¶
limits 是一个用于通过多种策略进行速率限制的 Python 库,支持常用的存储后端(Redis、Memcached 和 MongoDB)。
该库为同步和 async 代码库提供了相同的 API。
请查看 安装 和 快速开始 来开始使用。
要了解更多关于不同策略的信息,请参考 限速策略 部分。
有关支持的后端概述,请参考 存储后端。
开发¶
源代码可在 Github 上获取。
开始使用
git clone https://github.com/alisaifee/limits.git
cd limits
pip install -r requirements/dev.txt
由于 limits 集成了各种后端存储,本地开发和运行测试需要安装可用的 docker 和 docker-compose。
运行测试将自动启动相关容器 - 但会让它们保持运行状态,以避免每次测试运行时启动的开销。要运行测试:
pytest
完成后 - 您可能需要清理 docker 容器:
docker-compose down
使用 limits 的项目¶
- Flask-Limiter : Flask 应用程序的速率限制扩展。
- djlimiter : Django 应用程序的速率限制中间件。
- sanic-limiter : Sanic 应用程序的速率限制中间件。
- Falcon-Limiter : Falcon 应用程序的速率限制扩展。
- django-ratelimiter : Django 应用程序的速率限制装饰器和中间件。