- PR -

サーバープログラムの素敵な終了スクリプトもしくは実装

1
投稿者投稿内容
mandm
常連さん
会議室デビュー日: 2005/06/04
投稿数: 30
お住まい・勤務地: ニューヨーク
投稿日時: 2007-08-30 09:06
いつも お世話になっております。
現在、いろんな外部システムからTCPで データを取り込み、それを
内部のDBに書くという基本的に無限ループのサーバープログラムが
いくつかあります。APサーバーなどのコンテナは使っていないものです。
環境は UNIX,LINUXですが、質問の範囲はWINDOWSも含みます。

起動スクリプトでは、javaコマンドが CLASSPATHや MAINクラス名とそのオプションと
一緒に、実行されて開始するようになっています。CRONとかで起動。たぶん普通のやり方。

それで、終了スクリプトは、この Javaプロセスをpsで見つけて KILLしていますが、もうちょっとかっこいい 終了方法はないかと ウンウンうなって考えていますが、
素敵なものがみつかりません、皆さんは どうしていらっしゃいますでしょうか?

かっこいいというのは、TOMCATの終了 みたいに、SHUTDOWN PORTから きれいに終了させるみたいないもの、ですが、もうちょっと手軽にできそうな なにかがあればいいなと。

手軽さLEVEL1.PSで プロセスみつけて KILL
手軽さLEVEL5.メインのプログラムにSHUTDOWN PORTと処理実装持たせて、そいつに終了コマンドをおくるような別プログラムで終了させる。
手軽さLEVEL10. TOMCATのSHUTDOWNの仕組み

手軽さLEVELで 3,4あたり のなにかありませんでしょうか。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2007-08-30 09:57
JMXで実装するのはいかがでしょうか。
シャットダウン機能を持つMBeanを用意する感じです。
環境が書かれていませんが、JMXはJDK5から標準で可能です。
mandm
常連さん
会議室デビュー日: 2005/06/04
投稿数: 30
お住まい・勤務地: ニューヨーク
投稿日時: 2007-08-31 14:03
なかなかかっちょよさそうですね。いまのメインクラスを MBEANにして、
HTTPアダプターで画面から、起動、終了ができつつ、
あとはCRONなどでも 起動終了ができるように MBEANを
用意できたら(ほかのアダプターをつかうのかな)、ナイスですね。ありがとうございました!
1

スキルアップ/キャリアアップ(JOB@IT)