最近、計算速度を向上させるために分散コンピューティングの作業を開始しました。厳しいGoogle検索と多くのSOフォーラムの後、私は自分の目的のためにセロリを選択しましたが、私は概念と用語の理解にいくつかの問題に直面しています。
worker vs process vs clientとjobとCelery Pythonモジュールのタスクexplaination
ワーカーとプロセスの主な違いは何ですか?彼らは同じか、別の文脈で違うと呼ばれていますか?それが言うセロリのドキュメントから
を説明してください:
セロリは通常、クライアントと労働者の間で を仲介するブローカーを使用して、メッセージを介して通信します。タスクを開始するために、クライアントは メッセージをキューに追加し、ブローカはそれをワーカーに配信します。
もしあれば、ここのクライアントは何ですか? (現在、私はオクタコアマシンを1台しか使用していません)
メッセージがブローカー経由で渡された場合は?プロセス間通信にバックエンドとメッセージキューを使用する理由説明してください
ここで私はそれを作ることができない大きな質問があります。私はでセロリコンソールを実行すると は:5
--concurrency
セロリワーカー-Aタスク--loglevel =情報、セロリコンソールが担当しているワーカープロセスこの平均でありません5つの異なるプロセスからなり、タスクキューを追跡します。新しいタスクがタスクキューにプッシュされると、このワーカーはタスク/ジョブを5つのプロセスのいずれかに割り当てます。???
この質問は非常に基本的かもしれませんが、理解を深めるためにいくつかのリンクやツイートをご提供ください。あなたがいる
celery worker -A tasks --loglevel=info --concurrency 5
:事前のおかげで
私はSO、他の人へのよりよい理解のために、私の質問を編集すること自由に感じてくださいするには初心者です最初
簡単な情報をありがとう。あなたはRabbitMQをブローカーとし、Redisをバックエンドとして宣言しています。 )1.このmemcachedはどこにありますか?私はメッセージキューとしてこれを使用して多くのフォーラムを見てきました。 2)上記のセロリワーカーコマンドを2つの異なるコンソールで実行し、インタラクティブなPythonからタスクを提出すればどうなるでしょうか?私は、この特定のワーカーコンソールの使用をどのように指定するのですか? – jeldikk
memcachedはRedisの代わりに使用できます。おそらくレディスが良い選択です。あなたの2番目の質問は意味をなさない。セロリのマニュアルをもう一度読んでから、SOの新しい質問をしてください – scytale