rhu*_*uff 6 php background-process resque
我熟悉用于处理后台工作的php-resque和其他工作处理系统,但我不认为它会做我需要的工作.
在这种情况下,我有一个传入的Web服务请求,需要对外部系统执行多个(2-4)独立调用,并返回到客户端的综合响应.每个标注可能需要300-500ms,因此我希望每个标注并行执行,以便整个过程不超过500ms +/-总计.
我的php-resque和其他系统的问题是等待甚至1秒开始发出这些标注太长时间不能等待,我正在考虑另一种方法.
我在想什么:
当然,我们会为每个请求和整个过程实施超时...
思考?我错了吗?php-resque几乎可以立即启动多个并行工作吗?
您的计划应该可行,但我认为您可以通过使用PHP 进程控制函数来避免所有数据库通信甚至轮询。
不过,您必须在 PHP CLI 脚本中使用这些函数,因为...
http://www.php.net/manual/en/intro.pcntl.php
不应在 Web 服务器环境中启用进程控制,如果在 Web 服务器环境中使用任何进程控制功能,则可能会发生意外结果。
但是您的 Web 服务器可以轻松地exec()使用 CLI 脚本,该脚本将完成所有艰苦的工作,返回这些任务的状态等。