Rails在所有活动用户中排队

时间:2014-10-27 22:46:26

标签: ruby-on-rails web-services api queue throttling

完全改述我的问题。

我是受限制的API的消费者,需要确保我可以控制来自许多不同来源的呼叫。实际上,我需要执行与http://martinciu.com/2011/08/how-to-add-api-throttle-to-your-rails-app.html

相反的操作

我可以拥有一个真正的全局变量,如下面的每个用户连接会话都可以访问吗?或者是否已经有一个GEM可以帮助我根据API要求排队请求,比如说每秒最多4次API调用

应用程序范围的队列变量的想法:

req_queue = { 
:api_name1 => [ '2014/11/26 13:00:00', '2014/11/26 13:00:01', '2014/11/26 13:00:01'],
:api_name2 => [ '2014/11/26 13:00:01', '2014/11/26 13:00:01', '2014/11/26 13:00:01'],
etc
}

我的想法是为每个请求添加一个时间戳,每次过期的将被下一个已完成的API调用和/或下一个传入的API调用清除。

0 个答案:

没有答案