【问题标题】:How to queue requests to Django backend server to fit API rate limit如何对 Django 后端服务器的请求进行排队以适应 API 速率限制
【发布时间】:2022-11-13 12:11:27
【问题描述】:

我有一个基于 RapidAPI 的一些 API 的 Web 项目。此 API 有 10 个请求/秒的速率限制。对此 API 的所有请求都由服务器端使用带有 Rest 框架库的 Django 处理。前端基于Vue。所以这是一种简单的网络应用程序。

问题是我需要以某种方式对来自网站用户的所有请求进行排队以不超过 rapidapi 速率限制,因为如果我这样做 - 某些页面将不会加载某些内容,因为 api 返回 429 错误。

通常它发生在某些组件需要从 3+ 个不同的 api 端点加载数据时。这也与我们有例如 10 个在线用户正在积极点击需要获取一些数据的页面组件的情况有关,所以我想找到一些方法来解决它。

任何意见,将不胜感激

【问题讨论】:

标签: django django-rest-framework rate-limiting


【解决方案1】:

异步工作者:

一个健壮的难以消化的: https://docs.celeryq.dev/en/stable/getting-started/introduction.html

一个更简单但很好的: https://github.com/rq/rq

或裸机: https://docs.python.org/3/library/queue.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 2018-08-07
    相关资源
    最近更新 更多