Konsep RMI terkait erat dengan remote interface, class, objek dan method. Seperti aplikasi lain, aplikasi terdistribuasi dengan Java RMI terdiri dari interface dan class. Interface mendefinisikan method, class mengimplementasikan method yang didefinisikan oleh interface, yang mungkin juga mendefinisikan method tambahan. Pada aplikasi terdistribuasi, beberapa implementasi juga diasumsikan berada virtual machine berbeda. Objek yang memiliki method dapat dipanggil melewati virtual machine berbeda adalah objek remote.
RMI memperlakukan objek remote secara berbeda dari objek nonremote ketika objek dipass dari virtual machine(vm) satu ke vm yang lain. RMI tidak membuat copy dari objek implementasi pada virtual machine penerima, tetapi RMI mempass remote stub dari remote objek. Stub akan beraksi sebagai perwakilan lokal, atau proxy untuk objek remote dan secara dasar untuk pemanggil/client merupakan referensi remote. Pemanggil/Caller menjalankan method pada local stub, yang bertanggungjawab untuk menjalankan pemanggilan method pada objek remote.
Untuk membuat aplikasi terdistribusi dengan RMI., ada langkah-langkah umum yang harus dilalui:
1. Desain dan implementasikan komponen dari aplikasi terdistribusi Anda
2. Mengkompilasi kode source dan menghasilkan stub
3. Membuat class dapat diakses melalui network/jaringan
4. Menjalankan aplikasi.
Penjelasan dari langkah-langkah di atas adalah sebagai berikut:
1. Mendesain dan mengimplementasikan komponen aplikasi
Pertama kali, Anda perlu memutuskan arsitektur aplikasi Anda serta menentukan komponen-komponen mana yang merupakan objek lokal dan mana yang akan diakses secara remote. Langkah ini termasuk:
a. Mendefinisikan remote interface: Remote interface menentukan method-method yang akan dipanggil secara remote oleh client. Client membuat program uang mengakses remote interface dan bukan class implementasi dari interface-interface tersebut. Bagian dari desain interface semacam itu adalah penentuan dari objek local yang akan digunakan sebagai parameter dan nilai yang dikembalikan(return values) dari method-method tersebut, bila ada interface atau class yang belum ada, Anda perlu mendefinisikannya dulu.
b. Impelementasikan objek remote: Objek remote harus mengimplementasikan satu atau lebih remote interface. Class objek remote mungkin mengikutkan implementasi dari interface lain (baik lokal atau remote) dan method lain (yang mungkin hanya lokal). Bila ada local calss yang akan digunakan sebagai parameter atau nilai pengembalian dari method, mereka harus juga diimplementasikan dengan benar.
c. Mengimplementasikan client: Client yang menggunakan objek remote dapat diimplementasikan kapan saja setelah interface remtoe didefnisikan, termasuk setelah remote objek dideploy.
2. Mengkompilasi kode source dan menghasilkan Stub
3. Membuat class dapat diakses pada network
Pada langkah ini Anda membuat segalanya, file clas yang terkait dengan remote interface, stub dan class lain yang perlu didownload ke client - yang dapat diakses via atau melalui web server.
4. Menjalankan aplikasi
Menjalankan aplikasi berarti termasuk menjalankan registry dari objek remote RMI, server dan client.
0 komentar:
Posting Komentar