• ベストアンサー

JAVAで作成したプログラムは外部からの指示をどうやってうけとるのか?

このたび、JAVAで、通信関連のプログラム(常駐)をつくることになりました。それで、このプロセスに対して外部からコマンド(終了の指示、何か処理をしなさい等)を発行したいのですが、そのインターフェースが判りません。 OSはSolaris又はLinuxを採用する予定です。C言語で作成した時は、メッセージキュー、シグナル等を使用していたのですが、100% pure JAVAの環境で、このような外部からコマンドを受け付ける仕組みは、作成できるのでしょうか。ご存じの方おりましたら、教えて下さい。

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.1

基本的にはネットワーク通信を使った方法でいいと思います。 ソケットを使うのが一般的ですがRMIなどを使ってもいいと思います。 まずはソケットを使ったネットワーク通信プログラムを作ってみてはいかがでしょう?

tatsu99
質問者

お礼

回答ありがとうございます。 作成しようとしているプログラムは、前から電文がきてそれを後ろに流す動作をします。そのときにソケットを、使用しますので、外部からのコマンド受け付け用にソケットを作成することは、考えておりませんでした。 RMIについては、全く知識がありませんでしたので、RMIについて、調査してみます。何れにしろ、コストのかからない方法を採用したいと考えています。(コマンド自体がそれほどの頻度で発生しませんので)ありがとうございました。

関連するQ&A

  • javaのプロセスについて

    UnixやLinuxなどで、javaのプロセスを常駐させたいのですが、何か方法はありますでしょうか。 javaという名前であれば何でもいいので、テスト的に起動したいです。 (プロセスをkillするテストをするために、使用します)

  • Javaのプログラムから外部のソフトウェアやコマンドプロンプトを起動・

    Javaのプログラムから外部のソフトウェアやコマンドプロンプトを起動・操作する方法 インターネットではよく「プログラムランチャー」というものが出回っていますが、 Javaでは外部のプログラムを起動することは可能なのでしょうか? 自分で調べてインターネットブラウザを立ち上げることは可能だということがわかりました。 またコマンドプロンプトをJavaプログラムから呼び出し・操作することができれば解決できると思うのですが それは可能でしょうか? 方法を知っている方、また参考にできるサイトがありましたらよろしくお願いします。 その他にもこの言語ならできるなど何でもいいのでアドバイスお願いします。

    • ベストアンサー
    • Java
  • java 外部プログラムの実行

    いつもお世話になっています。 タイトルのとおり外部プログラムの実行方法についてです。 現在プログラムAを実行するとプログラムBが実行されるプログラムを作成できないかと考えています。 少し調べてみたところ外部プロセスの実行がそれにあたるかと思うのですが、ネット上にあるサンプルプログラムを実行してみてもコンパイルこそできるものの実行がエラーになってしまいます。 以下のサイトを参考にしていますが、サンプルにある通りのメモ帳の実行は出来ますが,javaプログラムの実行はできない状態です。 http://syunpon.com/programing/java/sample/execute.shtml 私の考えているようなことはjavaで実装可能なのでしょうか? ご存知の方おられましたらご教授お願いします。

    • ベストアンサー
    • Java
  • 外部プロセスについて

    現在、javaを本格的に学ぼうか悩んでいます。 pdfファイルのデータベースを作成し、検索、表示するというGUIのプログラムを作りたいのですが、javaでそのようなものが作れるのか調べています。 タイトルにあるようにjavaのみでは難しそうなので、外部プロセスを利用して(特にpdfの表示)作成しようと考えました。 試しに、ボタンをクリックすると外部プロセスが起動する、という簡単なプログラムを作ってみたところ、確かに外部プロセスは起動しましたが、この外部プロセスをインターナルフレームとして起動させることはできますでしょうか?

    • ベストアンサー
    • Java
  • apacheに常駐するプログラムの作成について

    サーバーでデータを収集するプログラムが作成しようと調査しています。 24時間実行させたいので最終的にはレンタルサーバーを使用しようと思います。 cronで定期的に実行させることも考えましたが、apacheならずっと起動していますので、常駐させられないかと調べています。 以前、仕事でweblogicを使用し、javaで常駐プログラムを実行していたのを見たことがあるので、apacheでも同様なことができないかと調査していますが、それらしい文献を見つけられず困っています。 apache上で動作する常駐プログラムの作成方法を教えていただけないでしょうか。 サーバーの環境は以下を想定しています。 OS:linux系 webサーバー:apache 使用可能言語:perl、php、python

  • スレッドないで外部コマンドの実行

    rubyでスレッドを作成して内部で外部コマンドを実行しました. するとコマンドが終了するまで止まってしまいます. ググってみたら ”WindowsのRubyでThread内でプロセス作成すると止まっちゃう”とあり http://ecpplus.net/weblog/windows_ruby_threa/ ソースまでありましたが,私の環境はlinuxなので実行できません. linux環境でこの問題を解消する方法はありますでしょうか? ご教授願います

    • ベストアンサー
    • Ruby
  • JavaでOSを再起動させる

    Java初心者です。 Linuxのconfファイルを簡単に書き換えるCLIコマンドを作成しました。 そこで、しつもんですが、JavaプログラムでLinuxのコマンドとかを呼び出すことは可能なのでしょうか? たとえば、rebootコマンドを呼び出したり出来るのでしょうか? よろしくお願いいたします。 以上

  • シグナルのマスクについて

    マスクされたシグナルはキューに溜まるものなのでしょうか、それとも破棄されるものでしょうか。 対象のシグナルはSIGALRMで、sigaction()で登録して, sighold()でブロックし、sigrelse()で解除しています。 マシンはSolaris8でC言語です。

  • JAVA VMの2回目以降の起動が早いのはなぜでしょうか。JAVAのプ

    JAVA VMの2回目以降の起動が早いのはなぜでしょうか。JAVAのプロセス自体は起動毎に作成されているので、プロセスが常駐しているということではなさそうですが、メモリのどこかに情報が残っているのでしょうか。 また、JAVAの画面アプリケーション等で、初回の起動が遅く2回目以降は早くなるのは、VMの起動速度だけではなさそうなのですが、ロードしたクラスの情報もどこかに残っているのでしょうか。

  • 待ち行列(キュー、FIFO)を実現するプログラム

    どうも。 「待ち行列(キュー、FIFO)」を実現するプログラムを作成してください。お願いします😢  出来ればC++言語がいいのですが、C言語やJava言語でも構いません。 解説があればありがたいですが そこは自分で見て学ぼうと思いますので。 宜しくお願いします。

専門家に質問してみよう