为什么Flask速率限制溶液使用Redis?

2024-05-15 16:57:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我想限制我的烧瓶原料药。我找到了两个解决方案。在

  1. Flask-Limiter扩展名。在
  2. 使用Redis的Flask网站的片段:http://flask.pocoo.org/snippets/70/

如果烧瓶限制器能够在没有Redis的情况下基于远程地址对请求进行速率限制,那么Redis的意义何在?在


Tags: orgredishttpflask远程烧瓶网站情况
1条回答
网友
1楼 · 发布于 2024-05-15 16:57:01

Redis允许您将速率限制状态存储在持久存储中。在

这意味着您可以:

  1. 重新启动您的web服务器或web应用程序,但仍有速率限制工作。您不会因为工作进程被破坏而丢失上一次请求的记录,而是会创建一个新的。在
  2. 使用多个web服务器或web应用程序。这是因为速率限制状态存储在外部数据存储中,该外部数据存储还解决了共享数据同步和数据竞争的问题。您可以运行任意多个web服务器—速率限制在所有服务器之间共享。在
  3. 看看速率限制状态。Redis提供了简单的CLI工具,允许您以特别的方式查看当前活动数据,甚至监视传入的命令和请求。在
  4. 让Redis管理速率限制算法的TTL、LRU等。Redis从本质上支持这一点。在

相关问题 更多 >