如何在 60 分钟的时间间隔内随机分配 100 API 个调用?

How can I distribute 100 API calls randomly in a 60 minutes time interval?

我正在使用 API returns 我在确定类别中用我的语言撰写的文章。 API 限制我每 60 分钟只能调用 100 次。

我不想立即进行 100 次调用并让我的脚本等到 60 分钟后。

然后我可以每 36 秒发出一次 API 呼叫,但我也不希望 API 呼叫均匀发出。

有什么可行的方法可以让我的脚本以随机时间间隔进行 100 API 次调用,只要 100 次在 60 分钟内完成?

我想制作一个函数,在这 60 分钟的间隔内生成 100 个时间戳,然后在每个时间戳的正确时间,它会发出一个 API 调用,但我认为那是矫枉过正,我也不知道我该怎么做。

您可以选择一个 min/max 您希望等待多长时间的时间间隔。记下过去 60 分钟内提出的请求数,如果您仍低于配额,请下载文档并等待 rand(min, max)。这不是很花哨,不会在整个 60 分钟间隔内分配等待时间,但很容易实现。

另一种方法是在060*60之间随机选择100个号码。这些是您提出请求的秒数。对它们进行排序,并随着您在数组中的前进,每次等待 next - current 秒。 (或者甚至使用调度器模块来简化它)