把我逼疯了。我知道所有的教程,所有的演示,所有的方式,但我没有得到我需要的信息。
我的计划
我有一个客户端,它将作业发送到本地主机上的一个作业服务器。在此服务器( Home-Server )上运行网站和数据库。现在我有两个(后来更多的),我们将称之为W1和W2。在这些服务器上,应该完成艰苦的工作,并且他们应该从安装的Home-Server获得作业。乔布斯是同步的,这意味着客户端等待任务完成。
但我不知道该怎么做。我发现的每一个教程都只告诉我当客户和工人在同一台机器上运行时如何设置Gearman。在Home-Server上,我使用PECL安装了gearman -作业服务器和PHP gearman。在我与主管打交道的客户那里,我打电话给:
$gmc = new GearmanClient();
$gmc->addServer();它应该将任务发送到本地主机Job,而不是两个空闲的Worker中的一个。对吗?
在worker.php上的worker.php上--服务器、W1和W2 --它们也是使用supervisord处理的--下面是编写的
$gmworker= new GearmanWorker();
$gmworker->addServer('Home-Server-IP', 4730);现在,Worker-Server应该从Home-Server获得任务吗?我是否必须在W1和W2上安装Gearman作业服务器,还是是我所需要的全部?我必须配置Worker-Server吗?
我真的希望你能向我解释这些问题,让我能理解吉尔曼。
更多信息:当我在家庭服务器上提示时
gearmand -vvv -u root --listen=127.0.0.1产出只是:
在最后一行之后,shell不再做任何事情了。我甚至不能给一个新的命令小费。
更多的信息。
我检查了Gearmand在家庭服务器上的运行情况。
ps -e|grep gearman输出:
当我现在在Worker上给出命令时
/usr/sbin/gearmand -u root -vvv --listen=Home-Server-IP我有跟踪错误。
我真的不明白我的申请出了什么问题。
发布于 2012-08-23 06:25:24
你用的是什么版本的变速箱?错误信息的输出让我觉得它很老了。
你为什么要把它作为根运行?
https://stackoverflow.com/questions/12045923
复制相似问题