dポイントプレゼントキャンペーン実施中!

Linux、Oracle環境上で定期的にデータベースを参照して、格納データにより次の処理の実行有無が決まるような制御を行うJavaアプリを作ろうと思っています。

Javaアプリを定期的に実行する部分を cronから1分毎に起動して運用しようかと思い、プロトタイプを作成し、cronから実行したのですが結構動作が遅そうです。やはり、cronから1分毎にJavaアプリを実行するのはダメでしょうか?1分毎にDB接続・切断を行うことにもなって良くないでしょうか?

こういう場合、Javaアプリは常に起動していて、処理の中断はSleep で行うというほうが普通なのでしょうか?この場合、Javaアプリが死んだ場合に再起動してやるスクリプト等も実装する必要がありますよね?

教えてください。

A 回答 (1件)

Javaアプリの場合、TimerTaskを継承したクラスを java.util.Timer で周期起動させる方が一般的です。


ただし、何らかの例外が発生して処理が異常終了するとそれ以降は周期起動されなりますので、何らかの対処が必要です。

Cronの場合は土日や深夜は周期起動しないなどの設定が可能ですし。
どちらもメリット・デメリットありますが、私の場合はいつもどちらでも対応できるような作りにすることが多いです。
    • good
    • 0
この回答へのお礼

> Javaアプリの場合、TimerTaskを継承したクラスを java.util.Timer で周期起動させる方が一般的です。

周期起動にはTimerTask ですね!例外発生時の対応を考えつつやってみます。

ぜんぜん勉強不足でした。。。

ありがとうございました。

お礼日時:2005/08/05 23:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!