2016年11月15日火曜日

分散システムでの簡単な演習

「分散システム」という授業をやっている。週1コマなので講義主体となるが、演習もやりたい。しかし、分散システムとしての演習にはその環境設定が大変である。でも、自分のノートPCだけで(サーバとクライアントを疑似的に起動して)ある程度のことはできる。それには、JavaのRMI(Remote Method Invocation)が良いだろう。


EclipseなどのJava開発環境があれば(あるいは無くてもコマンドラインからJavaコンパイルができれば)何も余分に必要ない。図のように、ネームサーバ rmiregistryを起動できる。次に、サーバ側プログラムを用意して、リモートオブジェクトにしたいもの(クライアントに使わせたいもの)をrmiregistryにrebind()で登録するだけ。クライアント側は、rmiregistryからlookup()でそのリモートオブジェクト(のstub)を取り込めば、必要なメソッド(サーバ側にある)を起動できる。
以前は、rmicコンパイラで、自分でstubを生成する必要があったが、現在はその必要はなくなったので、一層便利になった。

0 件のコメント:

コメントを投稿