My Resque作业基本上使用params hash并将其存储到DB中。在这个过程中,它会进行多次读写操作。
这些R / W约需要。在本地机器上共计5ms,在Heroku上多一点(我猜这是因为共享数据库)。
但是,处理队列的速度非常低/每秒约2-3个作业。可能导致这种情况的原因是什么?
谢谢。
答案 0 :(得分:0)
检查新工作,锁定工作,完成工作,将其标记为已完成,寻找新工作。
您可能会发现,获取新作业,访问Redis等的协商会导致很多开销。如果您的任务只有5毫秒长,它可能存在于请求 - 响应周期内。当运行任务会大大延长响应时间后,后台工作很棒,非常小的工作通常不值得付出相应的努力。