0

大規模プログラミングにおける別の質問:

タイム スタンプとターゲット ファイル名を含むジョブ キューがあります。(タイムスタンプごとに、最大 500 個のターゲット ファイルが処理される可能性があります)。処理アルゴリズムは、500 個のターゲット ファイルすべてで同じです。私はやってみたいです:

  • Javaでプログラムを書く
  • タイムスタンプに到達するたびに、500 ジョブすべてを一度にトリガーします。
  • 計算効率、CPU 使用率、およびスケーラビリティの観点から、効率的に実行する

whileループを使用して、現在の時刻がジョブキューのタイムスタンプであるかどうかを確認する愚かな方法を知っています....しかし、他の選択肢はありますか? 私もオンラインでグーグルで検索しましたが、Unixでcronコマンドを使用していると言っている人もいます。(はい、私のターゲット設定は Unix です。)

私はこの大規模コンピューティング分野に不慣れです。推奨事項や提案は大歓迎です。

4

2 に答える 2

2

ジョブ キューを永続化する場合は、 Quartzなどのバッチ スケジューラを使用します。

より軽量な代替手段は、Executors ファクトリ クラスを使用して作成できる java.util.concurrent パッケージの ScheduledThreadPoolExecutor です。これにより、Runnable タスクを一定の時間に実行するように登録できます。

于 2009-06-22T20:15:28.000 に答える
0

あなたが望むのは優先キューのようです。基本的に、キュー内のタイムスタンプでアイテムを並べ替える必要があります。

于 2009-06-22T20:18:31.413 に答える