如何将导入分散到更长时间以防止遇到外部服务的速率限制

背景故事:Imgur images not rendering because server is rate limited

我已经有一个用 Ruby 编写的自定义导入脚本。它工作正常,可以添加所有主题,但速度太快了。这会导致服务器在烘焙帖子时从 imgur 等外部服务获取大量图像。

有什么最好的方法可以减慢速度?我的意思是,最简单的方法是在帖子之间让导入过程稍作休眠。但这会导致脚本运行时间过长(考虑到图像数量和 imgur 的速率限制,大约需要 3 天)。有没有其他方法,比如一次性导入所有主题,但告诉 discourse 每分钟只烘焙特定数量的帖子?这样主题会立即创建,但 html 是异步构建的。

稍后可以重新烘焙帖子。每隔几天可以重新烘焙不好的帖子。

有什么方法可以找到有问题的帖子,以便我能专门重建它们?我知道可以通过 rake 重建所有帖子。但这将始终从相同的帖子开始,并在到达有问题的帖子之前达到速率限制。

经过进一步测试,我确实需要从一开始就避免达到速率限制。由于嵌入了大量图片,IP 地址似乎会被列入黑名单至少几天(我在这台机器上烘焙已经 4 天了,但它仍然被列入黑名单)。因此,我无法稍后重新烘焙帖子。

有什么方法可以从一开始就将烘焙分散到更长的时间范围内吗?