Falcon的速率限制器插件

falcon-ratelimit的Python项目详细描述


猎鹰等级限制

========





Falcon的速率限制器。安装方式:

```猛击

PIP安装Falcon RateLimit

```



使用如下:



``Python

进口猎鹰

来自FalconRateLimit进口价格限制





类noredisresource(对象):

@falcon.before(速率限制(每秒=5,窗口大小=30,资源='资源名称')

def on_post(self,req,resp)设置:





类redisresource(对象):

@falcon.before(速率限制(redis url='localhost:6379',每秒=1,窗口大小=10))

def on_post(self,req,resp)设置:



```



此包通过使用“每秒”和“窗口大小”两个变量限制请求数来工作。在第一个

以上示例中,“noredisresource”类在30秒的窗口中被限制为每秒5个请求,这意味着

在30秒内有150个请求的限制。调用“rate\u limit”装饰符的默认存储是

内存列表,用于存储使用资源“resource\u name”对给定用户的请求数。



第二个示例通过传入“redis”url来存储用户请求数据,实现了使用redis的可选存储。

使用redis允许跨特定应用程序的多个实例实现速率限制。在

“redisresource”类示例允许用户在10秒内每秒发出1个请求,这意味着

在10秒内限制10个请求。由于此示例没有传入“resource”,因此使用“default”作为名称

用于请求存储。



如果未安装“redis”软件包,则与redis相关的功能将无法工作。




欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在IntelliJ社区版中为maven项目创建war文件?   架构在java编程中创建模型数据的最佳方式   java代码可以打印当前数字右边的最大数字,最后一个数字应该打印1   java上一个和下一个按钮,用于在WebView中从数组中加载字符串   java与直接DB调用/RESTful服务调用相比,测试Hazelcast数据检索速度的最佳方法是什么?   资源/类链接上的Java404   java如何安装play2War插件(Play Framework 2.1.1.)   多线程守护进程线程行为java   java如何从RepainManager生成异常   java Hibernate集合映射问题。无法删除或更新父行:外键约束失败   java LibGDX TextureRegion NullPointerException   java无法在JUnit套件中添加测试类   java通配符捕获/泛型   awt如何在Java中获取当前的鼠标指针类型?   java将probuf转换为POJO   java bouncycastle是否支持RSA PKCS1OAEP填充?   SQLiteDatabase的java问题。SQLITE数据库时的查询()。rawQuery()工作正常   java Android。如何正确存储数据库的数据?   java如何访问与GAE默认服务帐户关联的电子邮件地址?