【发布时间】:2015-05-13 21:02:59
【问题描述】:
我刚刚开始使用队列,它们可以很好地用于向 Twilio 等发送消息和发送电子邮件和短信。
但现在我想做一些更复杂、更耗时的事情。我希望将大约 10,000 行的文件上传到 AmazonS3,对其进行解析,检查重复项,然后仅插入不重复的记录。
当我运行这个过程时,它需要 6 多分钟才能完成。这太长了。我想让这个在后台运行,视觉进度条会根据队列状态偶尔更新。
另外,在运行时,我希望用户能够完全访问站点和数据库表。这个过程,将锁定我的主表。 所以我基本上想让它在后台运行,只触摸一次主表以检查重复项,然后从那里将文件处理/解析为一个 10,000 多行的临时表。同时让另一张桌子空闲。
一旦完成......它只会写回主表一次。
如何在不降低站点/主服务器速度的情况下实现这一目标?对于这个极其广泛的问题,我深表歉意
【问题讨论】:
标签: php queue laravel-5 web-worker