0% menganggap dokumen ini bermanfaat (0 suara)
27 tayangan14 halaman

Implementasi Java RMI untuk Aplikasi Terdistribusi

Tugas akhir ini membahas penerapan Java RMI (Remote Method Invocation) untuk memenuhi syarat mata kuliah Sistem Terdistribusi. Tulisan ini menjelaskan konsep RMI, langkah-langkah pembuatannya, dan contoh program client/server menggunakan RMI.
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
27 tayangan14 halaman

Implementasi Java RMI untuk Aplikasi Terdistribusi

Tugas akhir ini membahas penerapan Java RMI (Remote Method Invocation) untuk memenuhi syarat mata kuliah Sistem Terdistribusi. Tulisan ini menjelaskan konsep RMI, langkah-langkah pembuatannya, dan contoh program client/server menggunakan RMI.
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

Penerapan Java RMI (Remote method invocation)

Java RMI (Remote Method Invocation) Implementation


Tugas Besar
Diajukan untuk memenuhi syarat dalam mata kuliah
Sistem Terdistribusi
Program studi S1 Teknik Informatika
Fakultas Informatika

Bhudi Jati Prio Utomo


Ika Rahayu Ponilan
M. Dwi Aldhi

1301148482
1301148486
1301148471
1103104161

Nama Anggota II

NIM

Departemen Informatika
Telkom School of Engineering
Telkom Unversity
Bandung
2015

1. Pendahuluan
1.1

Latar belakang

Bahasa pemrograman Java menyediakan beberapa aplikasi untuk kedua


situasi tersebut. Untuk situasi dimana pemrograman dilakukan dengan bahasa
yang sama, Java menawarkan RMI (Remote Method Invocation) sebagai alternatif
dari socket. Tidak seperti Socket, RMI mengabstrakkan interface antara client dan
server menjadi satu pemanggilan prosedur lokal. Oleh karena itu, dengan
menggunakan RMI, pemrogram tidak perlu merancang satu protokol.

2. Pembahasan
2.1

Apa Itu RMI

RMI (Remote Method Invocation) adalah salah satu bagian dari J2SE yang
digunakan untuk membangun aplikasi terdistribusi menggunakan bahasa Java.
RMI adalah kumpulan kelas dalam Java yang digunakan untuk
menangani pemanggilan (invocation) method secara jarak jauh (remote) dalam
suatu jaringanatau Internet. RMI ini merupakan fasilitas yang dimiliki Java untuk
pemanggilan objek dari sisi yang berbeda, anggap saja sisi yang menyediakan
objek adalah server dan sisi yang memanggil objek adalah klien. Aplikasi RMI
biasanya mencakup dua program berupa server dan client. Program pada server
membuat remote objects kemudian membuat referensi keobject dan menunggu
client untuk memanggil methods pada server. Program pada client menentukan
referensi ke satu atau lebih remote objects pada server dan kemudian
memanggil methods-methods pada server yang bisa terakses. RMI pada intinya
merupakan sebuah mekanisme dimana server dan client berkomunikasi dan
saling memberikan informasi. Ilustrasi di bawah ini menunjukkan arsitektur RMI :

Gambar 1. Arsitektur RMI


RMI Server akan mendaftarkan remote objeknya ke RMI Registry melalui bind
dengan nama unik. RMI Client yang akan melakukan suatu pemanggilan method
dari remote objek, harus meminta referensi objek ke RMI Registry berdasarkan
nama kelas objek tersebut. Dalam RMI harus ada pendefinisian interface (behavior)
dan implementasi interface (berupa kelas).

Artitektur RMI terdiri tiga bagian.


1Remote Reference Layer
Remote Reference Layer ini digunakan untuk menemukan lokasi remoteobject,
membuat panggilan point to point dan rekoksi secara [Link] itu, bagian
ini juga berfungsi untuk mengaktifkan proses server baru jika belum pernak
diaktifkn sebelumnya.
2Stub dan Skeleton
Stub dan SkeletonStub dan Skeleton merupakan interface antara aplikasi dan
RMI [Link] bertindak sebagai client side proxy dan skeleton sebagai server
side proxy.
3. Transport Layer
Transport layer digunakan untuk membuat dan memelihara dua koneksi antara 2
JVM menggunakan TCP/IP. Transport layer menerima dan merespon setiap
peanggilan dari atau ke server dan client.

Gambar2. RMI layer

Mengapa Menggunakan Java RMI


Keuntungan dari Dynamic Code Loading
Salah satu keunikan dari RMI adalah kemampuannya untuk mendownload
object class jika class belum didefinisikan pada Java Virtual Machine
penerima, tanpa ada perubahan ketika object dikirimkan ke Java Virtual
Machine [Link] yang didownload secara dinamis dapat digunakan
untuk sebuah aplikasi.

2.3 Bagaimana Menggunakan Java RMI?


Seperti aplikasi java pada umumnya, aplikasi RMI terdiri dari interface
dan
class.
Interface
mendefinisikan
method
sedang
class
mengimplementasikan methods yang didekrarasikan pada interface. Agar
object dapat menjadi remote object harus mengimplementasikan remote
interface, yang mempunyai karakteristik sebagai berikut:
1. Remote interface menurunkan sifat dari interface [Link].
2. Setiap method dari interface mendeclarasikan [Link]
menggunakan klausa throws.
Langkah-Langkah Pembuatan Program dengan RMI
Dalam RMI, semua informasi tentang satu pelayanan server
disediakan dalam suatu definisi remote interface. Dengan me-lihat pada
definisi interface, seorang pemrogram dapat memberitahukan method apa
yang dapat dikerjakan oleh server, meliputi data apa yang diterima dan data
apa yang akan dikirim sebagai tanggapan. Definisi yang ada pada remote
interface menentukan karakteristik methods yang disediakan server yang
dapat dilihat oleh client. Client programmer harus dapat mengetahui methods
apa yang disediakan server dan bagaimana memanggilnya langsung dengan
melihat ke remote interface. Client mendapatkan referensi ke remote object
melalui RMI registry.
1. Mendefinisikan remote interface
Interface ini akan diimplementasikan baik oleh client maupun server .

1. Implementasi remote interface dan server Mendefinisikan kelas


implementasi dari interface. Selain class object yang akan diakses lewat
RMI harus extend [Link], class juga harus
memeiliki throw [Link].

Yang dibutuhkan pertama kali untuk membuat server yaitu kita harus
membuat object registry. Untuk membuat object registry kita bisa
menggunakan metode create registry (in port) milik class
[Link] :

Setelah membuat server, kita harus menyimpan object ke server agar


dapat diakses oleh client. Penyimpanan object ini dilakukan dengan cara

2. Buat aplikasi client


Pada aplikasi client, client akan mencari objek pada remote server
danmelakukan casting ketipe yang sesuai dengan nama interface
yangdidefinisikan menggunakan objek tersebut sebagai objek [Link]
membuat client digunakan class [Link]

Untuk mengakses data yang ada di server, kita harus membuat object
interfacenya.

Catch

2. Memulai (start) RMI registry Registry menyediakan satu referensi bagi


client untuk melihat server. Port1099 digunakan sebagai default port bagi
RMI registry. Dengan menggunakan RMI registry, client dapat
memperoleh referensi ke obyek yang berada pada komputer lain dan
memanggil method-nya seperti keobyek lokal. Server menggunakan
Naming. Rebind untuk mendapatkan penetapan port dari RMI registry,
sedangkan client melihat ke server dengan [Link] dalam registry
dan kemudian membuat permintaanuntuk suatu referensi obyek
3. Menjalankan server dan client Setelah melakukan rmiregistry, kita bisa
menjalankan servernya terlebihdahulu, baru kemudian client dapat
dijalankan.
Keterbatasan RMI
1. Menggunakan UTP, bukan UDP3.
2. Minimal membutuhkan dua socket untuk setiap koneksi
3. Java Only

Contoh Program Client/Server Java RMI dengan Netbeans 7.0


Program penghitung bilangan berpangkat
1. Interface

2. Server
Class Main

Class KuadratServer

3. Client
Class Main

Class KuadratClient

Hasil run dari program diatas :


Output Server

Tampilan Client

10

PENUTUP
Kesimpulan
1. RMI adalah kumpulan kelas dalam Java yang digunakanuntuk menangani
pemanggilan (invocation) method secara jarak jauh (remote) dalam suatu
jaringan atau internet.
2. Untuk Membangun suatu aplikasi terdistribusi menggunakan RMI meliputi 5
langkah:
a. mendefinisikan remote interface
b. imple-mentasi remote interface dan server
c. membuat class client dan server
d. memulai (start) RMI registrye
e. menjalankan server dan client

11

DAFTAR PUSTAKA
1. [Link]
[Link]://[Link]/~cs379/DistributedSystems/rmi_tut.html

Daftar Pustaka
Ikuti aturan penulisan daftar pustaka yang benar.

12

[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]

Lampiran
___________________________________________________________________
_

13

Anda mungkin juga menyukai