我正在调用的API的速率限制为每分钟200个请求。我有~1,500(对话)线程我试图最初拉,所以试图循环遍历150次然后睡了90秒。
此循环用于创建CSV文件:
conversations.each do |conversation|
customer = conversation.customer
threaded_conversation = helpscout.conversation(conversation.id)
sleep(0.4)
end
我尝试使用times
,但我觉得有一个更好的解决方案,我不知道。
150.times do
# above loop
end
答案 0 :(得分:1)
您可以跟踪迭代计数,然后如果它是150的倍数则休眠:
conversations.each.with_index do |conversation, index|
customer = conversation.customer
threaded_conversation = helpscout.conversation(conversation.id)
if index % 150 == 0
sleep 90
end
end