0

私は Gearman Job サーバーを持っており、ここでワーカーを作成し、すべての面倒な作業を行う予定です。Gearman Job Server は、アプリケーション サーバーから PHP スクリプトによって呼び出されます (Gearman クライアントが既にインストールされています)。

Gearman が Job Server で動作しているかどうかをテストし、次の応答を受信しました:

ubuntu@ip XXXXXXX:~$ ps -e|grep gearman
24255 ?        00:00:00 gearmand    

また、次のようにして、ギアマンが機能しているかどうかをアプリケーションサーバーでテストしました。

<?php
print gearman_version() . "\n";
?>

ギアマンバージョンを印刷したので、動作します。

これで、Job Server を呼び出すクライアントができました。しかし、PHPワーカーを配置する場所を見つけるのに苦労しています。それらをGearmanにリンクして、クライアントが呼び出しを行うときにどのワーカーを実行するかを認識します。

どんな助けでも大歓迎です。ありがとう

4

1 に答える 1

0

Gearman Workers は個別に起動する必要があるため、どこに配置しても問題ありません。ワーカー コードを記述したら、次を使用してターミナルからスクリプトを開始します。

php /path/to/worker/gearman-worker.php

スクリプトが開始されると、指定されたサーバーに自身を登録し、利用可能なジョブをピックアップします。

ここでGearman ワーカーについて読むことができますが、重要な部分はサーバー登録であることに注意してください。

$worker -> addServer();

ここで、引数なしで関数を呼び出すと、ワーカーは localhost で実行されている Gearman サーバーに登録されますが、これらの引数を設定することで、任意のポートの任意のサーバーに登録することができます (上記のリンクで指定)。

于 2014-04-07T12:58:10.697 に答える