Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> Gearmanを使った分散コンピューティングの使い方

Gearmanを使った分散コンピューティングの使い方

  

一般的に言って、多言語とマルチシステムの統合は大きな問題ですが、一般的に言って、WebServiceを使ってそのような統合の問題に対処します。 RPCスタイルやRESTスタイルなどのWebサービスは、それ自体が複雑です。対照的に、Gearmanは同様の効果を達成することができ、そしてより使いやすいです。 Gearman要求の処理には、クライアント - >ジョブ - >ワーカーという3つの役割があります。クライアント:リクエストの発信元。C、PHP
、Perl、MySQL UDFなど。 Job:要求のディスパッチャ。クライアントから適切な作業への要求の転送を調整する責任があります。ワーカー:リクエストのハンドラ。C、PHP、Perlなどです。クライアント、ワーカーは同じ言語の使用を制限しないため、多言語とマルチシステム間の統合に役立ちます。より多くのワーカーを追加しても、アプリケーション用の分散負荷分散アーキテクチャを簡単に実装できます。限られた条件下で、私たちはサーバー上でClient、Job、そしてWorkerの3つの役割を実行します:Gearmanサーバーとライブラリーのインストール:wget http://launchpad.net/gearmand/trunk/0.8 /+download/gearmand-0.8.tar.gztar zxf gearmand-0.8.tar.gzcd gearmand-0.8./configuremakemake install Gearman PHP拡張モジュールをインストールします。wget http://pecl.php.net/get/gearman-0.4.0。 Tgztar zxf gearman-0.4.0.tgzcd gearman-0.4.0phpize./configuremakemake install php.ini設定ファイルを編集して対応するモジュールをロードし、有効にします。extension =" gearman.so"開始ジョブ:gearmand -d rootの場合、これを行う必要があります。geomand -d -u rootはデフォルトでポート4730を使用します。これは以下で使用されます。注:gearandコマンドへのパスが見つからない場合は、whereis gearmandで確認することを忘れないでください。次のようにWorker:worker.phpファイルを作成します。<?php $ worker = new GearmanWorker(); $ worker-> addServer( '127.0.0.1'、4730); $ worker-> addFunction( 'reverse'、 ' my_reverse_function '); while($ worker-> work()); function my_reverse_function($ job){return strrev($ job-> workload());}?>仕事を実行するための背景を設定します:php worker.php& Client:client.phpファイルを次のように記述します。<?php $ client = new GearmanClient(); $ client-> addServer( '127.0.0.1'、4730); echo $ client-> do( 'reverse' 、 'Hello World!')、" \\ n";?>クライアントの実行:php client.phpの出力:!dlro woleH便宜上、クライアントはPHPを使用しますが、デモには影響しません。実用的なアプリケーションでは、Gearmanを介してWorker、Clientをさまざまな言語で統合できます。たぶん、あなたはまだ先に述べた負荷分散機能を理解したいでしょう:非常に単純な、ただ一人以上のワーカーを追加する、あなたはworker.phpの方法に従っていくつかの似たようなファイルを書くことができます。プレゼンテーションを確認してください。次に、これらのWorkerファイルを順番に起動し、client.phpを使用して要求すると、JobがClient要求を別のWorkerに転送することがわかります。コマンドラインツールPHPのようなものをインストールするのが大変な場合は、コマンドラインツールを使用するだけでGearmanの機能を体験できます。Start Worker:gearman -w -fwc - wc -l& Run Client:gearman -f wc< /etc /passwd公式ドキュメントへの特定の参照、いくつかの良いPDFがあります。

Copyright © Windowsの知識 All Rights Reserved