gpt4 book ai didi

python - 基于每个用户限制安静的操作

转载 作者:太空宇宙 更新时间:2023-11-03 18:55:52 25 4
gpt4 key购买 nike

将用户可以执行的操作数量限制为每分钟一次的最佳方法是什么?

@route('/do_something/<cmd>',method=['GET','POST'])
def my_command(cmd):
# Only allow this to be executed once every 60s per user/ip.

我正在寻找服务器端解决方案,因为我想根据用户的 IP 地址强制执行此解决方案。

最佳答案

Python 中可能已经存在节流 解决方案,更具体地说,是 Bottle 框架。您可以使用存储和一些小型脚本来推出自己的。由于您的限制周期非常小,即 1 分钟,因此 memcache 是存储这些值的良好候选者。

  1. 根据限制所需的条件生成哈希。例如哈希(用户+ip)等。
  2. 当您收到新请求时,请检查内存缓存中是否存在以哈希为键的值。

3(A)。值不存在: - 将当前时间戳整数存储在内存缓存中,并以此哈希为键,TTL 1 分钟。

(b) 值存在: - 放弃请求。

这是一个为 Redis 编写的非常好的装饰器(用于 Flask 框架,但也可以在其他地方使用):

http://flask.pocoo.org/snippets/70/

关于python - 基于每个用户限制安静的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17273760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com