2

クロジュアでクローラー/スクレーパーを作成していて、定期的に(事前に定義された時間に)実行したいとしましょう。

自分の仕事をクォーツ / クォーツサイトで定義したい (少なくとも、それが最も堅牢なソリューションのようです)。

さて、clojure でデーモン プロセスを作成するために、lein-daemon プラグインを試してみましたが、プラグインには少しバグがあるように見えるため (または、重大な間違いを犯しているため)、かなり危険な試みのようです。

このサービスを作成する最善の方法は何ですか? システムの再起動時に自動的に再起動できるようにしたいのですが、ジョブ (データベースからのロードなど) に clojure (quartzite) を使用したいと考えています。

長時間実行されるデーモンプロセスを作成するための堅牢な方法とは何ですか?

編集:

展開環境は、単一の VPS または専用サーバーのようなものになります。データ ストアからパラメーターをロードするジョブが 12 ある場合があり、1 日に 1 ~ 8 回 (またはそれ以上) 実行されます。

4

1 に答える 1

3

正しいプロセスは、環境によって大きく異なります。私は、長時間実行される Clojure プロセスが多数ある複雑な Web/モバイル インフラストラクチャの展開システムに取り組んでいます。このために、Pallet を使用してコードをチェックアウトして構成したインスタンスを作成し、起動時にサービスを開始する init スクリプトを生成する関数を用意します。このプロセスは、クラウド プロバイダーで繰り返し可能なビルドが必要な環境に適しているため、状況によっては重すぎる可能性があります。

単純な定期的なジョブを探している場合は、定期的なジョブを適切にサポートするClojure 用のアプリケーション サーバーであるImmutantを調べることをお勧めします。

于 2013-07-23T18:34:33.440 に答える