Loading article…
| 原作者 | ソレム・ホエルに聞く |
|---|---|
| 安定リリース | 5.3.4 / 2023年9月3日 |
| リポジトリ |
|
| 書かれた | パイソン |
| プラットフォーム | クロスプラットフォーム |
| 利用可能 | パイソン |
| タイプ | メッセージ指向ミドルウェア |
| ライセンス | BSDライセンス |
| Webサイト | ドキュメント |
Celeryは、分散メッセージパッシングに基づくオープンソースの非同期タスクキューまたはジョブキューです。スケジューリングをサポートしていますが、リアルタイムの操作に重点を置いています。[1]
概要
タスクと呼ばれる実行単位は、マルチプロセッシング、イベントレット[2]、またはgevent [3]を使用して、1つ以上のワーカーノードで同時に実行されます。タスクは非同期(バックグラウンド)または同期(準備ができるまで待機)で実行できます。Celeryは、 Instagramなどのサービスで、毎日何百万ものタスクを処理するために実稼働システムで使用されています。 [1]
テクノロジー
CeleryはPythonで書かれていますが、プロトコルはどの言語でも実装できます。また、webhooksを使用して他の言語で動作することもできます。[4]また、 RCeleryと呼ばれるRubyクライアント、[5] PHPクライアント、[6] Goクライアント、[7] Rustクライアント、[8] Node.jsクライアントもあります。[9]
推奨されるメッセージブローカーはRabbitMQまたはRedisです。RabbitMQと比較すると、Redisは良いスタートを切ることができます。ただし、正当な理由があり、Redisがプロジェクトの要件を満たさなくなった場合は、RabbitMQに切り替えるのは簡単です。さらに、MongoDB、Amazon SQS、CouchDB 、IronMQ、およびデータベース( SQLAlchemyまたはDjango ORMを使用)は、試験的な状態でサポートされています。[10]
参照
参考文献
- ^ ab 「Celery: 分散タスクキュー」。2019年6月13日時点のオリジナルよりアーカイブ。2016年1月14日閲覧。
- ^ 「Eventlet ネットワーキング ライブラリ」。eventlet.net。2022年9 月 21 日閲覧。
- ^ "gevent とは何ですか? — gevent 21.12.1.dev0 ドキュメント". www.gevent.org 。2022-09-21に取得。
- ^ 「HTTP コールバック タスク (Webhooks) — Celery 3.1.23 ドキュメント」。docs.celeryproject.org。2016年 10 月 30 日時点のオリジナルよりアーカイブ。2016年 8 月 17 日閲覧。
- ^ "leapfrogonline/rcelery". GitHub . 2016年8月17日閲覧。[永久リンク切れ]
- ^ "gjedeer/celery-php". GitHub . 2016年8月17日閲覧。
- ^ "gocelery/gocelery". GitHub . 2018年8月6日閲覧。
- ^ rusty-celery/rusty-celery、Rusty Celery、2022-10-09、2022-10-09に取得
- ^ "mher/node-celery". GitHub . 2016年8月17日閲覧。
- ^ 「バックエンドとブローカー — Celery 5.2.7 ドキュメント」。docs.celeryproject.org。2022-06-23時点のオリジナルよりアーカイブ。2022-06-23取得。
外部リンク
- 公式サイト
- GitHubのセロリ
