统计 API 服务中 API 调用次数的有效方法

Reh*_*mat 11 rest relational-database django-rest-framework fastapi

我是在 DRF 的背景下问这个问题的,但这也可以概括。我们正在维护一个 API 服务,为超过 1K 的实时请求提供服务。在当前场景中,我们正在实时计算 API 调用,即我们正在针对每个 API 调用的用户更新 API 调用计数的数据库列。

但有没有有效的方法呢?例如,在其他地方记录 API 调用,然后在几分钟后更新数据库?或者说我们现在正在做的事情可以吗?大规模 API 服务可以处理多大程度的问题?网上没有针对此问题的具体内容。

小智 1

Redis 是内存中键值数据存储,因此它可以非常快速地检索数据。使用 Redis 实现速率限制并验证 API 调用数量也非常简单。IE

\n
    \n
  1. 像用户\xe2\x80\x99s IP地址一样存储密钥
  2. \n
  3. 增加从该 IP 发出的呼叫数量
  4. \n
\n

Redis链接

\n

Redis 实验室链接

\n