我正在一个图像处理网站上工作,而不是让冗长的工作阻止用户浏览器,我希望所有命令都能快速返回一个工作 ID,并让后台任务完成实际工作。然后可以使用 id 来检查状态和结果(即处理图像的 url)。我找到了很多用于 ruby、java 和 python 的分布式队列管理器,但我对这些语言的了解还不够多,无法使用它们。
我自己的测试是使用共享 mysql 数据库对作业进行排队,将它们锁定到工作人员,并将它们标记为已完成(将返回数据保存在数据库中)。这只是一个凌乱的原型,整个过程我都觉得自己好像在重新发明轮子(而且不是很优雅)。php 中是否存在我可以使用的东西(或者我可以与 RESTfully 交谈?)?
阅读更多,我发现我正在寻找的是一个具有 php api 的排队系统,它不必用 php.ini 编写。我只找到了与 Amazon 的 SQS 一起使用的类,但这不仅不是免费的,而且有时还很隐蔽(超过一分钟才能显示一条消息)。