我不是专业的网站开发者,但作为爱好,我喜欢涉足网站。最近,我着手开发一个Rails应用程序作为学习框架的实战项目。我的玩具应用程序的目标是通过API从另一个服务中获取数据,并通过搜索功能使其可供查询。
然而,我想要提取数据的服务对每分钟执行的API调用数量施加了速率限制。我计划让我的应用程序每天更新一次,这可能会生成远远超出外部服务提供的限制的大量API调用。
我希望尊重外部站点的表现,因此想限制我的应用程序执行调用的速率。
我已经做了一些搜索,但找到的绝大部分教程材料和预构建库都是关于对web应用程序的入站API请求进行节流,而我几乎找不到关于控制出站调用流量的讨论。
作为业余网站开发者和Rails新手,我完全有可能在错误的地方进行搜索。因此,我的问题是:
是否有一个很棒的网站聚合了与限制外发API请求相关的Rails教程资料?
是否有任何Ruby gem或其他库可以帮助我限制请求?
我有一些想法,可以使用基于队列的worker(如DelayedJob或Resque)编写限制系统来管理API调用,但如果已经有好的预构建解决方案,我宁愿花周末时间建立站点的其他部分。