我想在Symfony中使用mmoreram/gearman-bundle。我已经安装了它,但是当我调用
php app/console gearman:job:execute PrGwBundleGearmanWorkerPrWorker~doSomething
我只得到一个概述,而没有得到作业本身的结果。
另外,我还不明白如何从php内部调用Job。doku并没有真正告诉我怎么做,不幸的是,在网络上没有tuts:(
我想我必须首先创建一个$gearman的实例。但是怎么了,却没有解释。http://gearmanbundle.readthedocs.org/en/latest/running_jobs.html
如果有人能帮我进入这个包,这样我就可以使用它了:
thank and kind regards
你必须运行像
php app/console gearman:job:execute PrGwBundleGearmanWorkerPrWorker --no-interaction
那么你的worker已经开始运行了。
你可以像这样调用job worker中的函数:
$gearmanClient->doBackgroundJob('PrGwBundleGearmanWorkerPrWorker~doSomething', $payload);
这会在你的PrGwBundleGearmanWorkerPrWorker上执行doSomething方法。
你可以使用以下命令查看所有已定义工作者的列表:
php app/console gearman:worker:list
,并使用
获取worker的详细信息:php app/console gearman:worker:describe PrGwBundleGearmanWorkerPrWorker
那么您将得到一个包含以
开头的行的输出。@Workersupervisord
后面的命令,可以用来从命令行启动worker。