1. ホーム
  2. linux

linuxにおけるcronjobとdaemonの比較。いつ使う?[クローズド]です。

2023-12-05 17:31:33

質問

プロセスをデーモン化すると、ターミナルから切り離されるため、メリットがあります。しかし、同じようなことはcronジョブでも実現可能です。[そうでない場合はご指摘ください。]

cronjobやdaemonプロセスを使用するシナリオを区別するための最良の要件は何でしょうか?

どのように解決するのですか?

一般的に、タスクが1時間に数回以上 (多分 <10 分程度) 実行される必要がある場合、おそらくデーモンを実行したいと思うことでしょう。

常に稼働しているデーモンには、次のような利点があります。

  • 1 分あたり 1 回以上の頻度で実行できる。
  • 前回の実行時の状態をより簡単に記憶できるため、プログラミングが簡単になり(状態を記憶する必要がある場合)、場合によっては効率を向上させることができます。
  • 多くのホストを持つインフラストラクチャでは、群れをなして逃げ惑うような現象は起こりません。
  • 多重起動をより簡単に回避できる (かもしれない?)

しかし

  • エラーなどで終了した場合、その機能を実装していない限り、自動的に再起動することはない
  • 有用なことを何もしていないときでもメモリを使用する
  • メモリリークがより問題になる

一般的に、堅牢性は cron を支持し、パフォーマンスはデーモンを支持します。しかし、重複する部分 (どちらかが大丈夫な部分) や反対例も多くあります。それはあなたの正確なシナリオに依存します。