0
這裏是我的代碼的Rails:批量訂閱用戶MailChimp API在Heroku上運行到超時問題
users = User.all
# Latency issues with connecting with Heroku and MC
Gibbon::API.timeout = 120
gb = Gibbon::API.new
batch = []
users.each do |user|
batch << user.mail_chimp_information
end
puts gb.lists.batchSubscribe(id: "MC_ID_HERE", batch: batch, double_optin: false, update_existing: true)
上面的代碼被設置爲在該批次訂閱(或更新現有的)夜間cron用戶運行到我的MailChimp帳戶。我的應用程序在Heroku上運行,這會導致檢索用戶並在將它們發送到MailChimp之前循環播放它們。如果我刪除Gibbon::API.timeout = 120
行,則默認值爲15秒並超時。
將用戶信息批量上傳到外部API的最佳做法是什麼?手動設置超時是目前的一個快速解決方案,但隨着用戶羣的增加,超時再次發生的威脅就越大。