2011-12-22 8 views
6

PHPで構築された大規模なWebアプリケーションがあります。このアプリケーションでは、つぶやきやウォールポストのスケジューリングが可能で、スケジュールされた電子メールがサーバーから送信されます。Message QueueとPHPを使用したPlain Cronジョブの使用の違い

「スケジュールされた」とは、これらが特定の時間に実行されるようにスケジュールされたPHPスクリプトであることを意味します(cron)。上記の作業を行うPHPファイルは約7つあります。

私はメッセージキューについて聞いています。メッセージキューがこのシナリオで最も適している場合、誰でも説明できますか?メッセージキューはPHPスクリプトを実行しますか?またはこれを完全に別の方法で構成する必要がありますか?利点/欠点は何ですか? 非同期タスク(PHPコードから非同期)を作るためにのcrontabを使用して

+0

22ビュー。誰でも?答えは? –

答えて

5

仕事/タスクキューマネージャを使用すると、精巧なものです基本的なアプローチであり、あなたのより多くの制御、パワーと拡張性/柔軟性を与えます。

Crontabは非常に扱いやすいですが、多くの機能を提供していません。非同期タスクではなく、スケジュールされたジョブに最適です。

一方、タスクキュー(およびそのmessage broker)を配備するには、より多くの時間が必要です。最初に適切なツールを選択し、PHPコードでそれらを実装する方法を学ぶ必要があります。しかし、これは神に感謝し、私はPHPを行いませんが、のPythonプロジェクトに(RabbitMQと相まって)Celeryでいじってきた2011年

に移動するための方法です。私はあなたがPHPの世界で似たようなものを見つけることができると確信しています。

+0

ありがとう、スタン!メッセージキューは侵入しますか?意味、メッセージキューを実装するには、アプリケーションでPHPコードの変更が必要ですか? –

+0

_A priori_そうではありません。 **しかし**遅延された関数のパラメータは直列化可能でなければならず、あるオブジェクトがうまく処理されないためにいくつかの驚きが生じることがあります。 – Stan

+0

これは2013年であり、それと同じルールが有効です – om471987

関連する問題