【发布时间】:2018-10-24 14:04:30
【问题描述】:
我正在尝试与 Google 的日历 API 进行交互。到目前为止,我的测试显示插入单个事件的响应时间为 5-10 秒,我可能需要一次导出数千个事件[不要问]。这似乎可能会在不合理的时间内从我的队列中发送垃圾邮件。 (此应用中 95% 的当前作业在
我目前在此应用中使用 Faraday 来调用其他更快的 Google API。 Faraday wiki 建议使用 Typhoeus 进行并行 HTTP 请求;但是,截至 2014 年,将 Typhoeus 与 Sidekiq 一起使用被视为 "a bad idea"。
Typhoeus 还是个坏主意吗?如果是这样,在 Sidekiq 工作程序中生成 N 个线程,在每个线程中发出 HTTP 请求,然后等待所有线程重新加入是否合理?有没有其他方法可以完成这个极其受 I/O 限制的任务,而不需要更多的工作人员来解决这个问题?我应该要求我的经理增加我们的 Sidekiq Enterprise 支出吗? ;) 或者我应该把这些工作放在一个低优先级队列中,然后告诉我们那些有着荒谬习惯的用户他们只需要等待?
【问题讨论】:
标签: ruby multithreading sidekiq