paper - metode komunikasi rmi (remote method invocation) antar client dengan aplikasi teamviewer

7
PAPER Metode Komunikasi RMI (Remote Method Invocation) Antar Client Pada Aplikasi Teamviewer Di susun oleh : FAD!A" R#CIAT"A $%&'$&'$%&'' Teknik In ormatika #niversitas Teknolo*i +um,awa -l&Ra.a /lat Maras0 "o&$& 1atu Alan*0 +um,awa 1esar2"T1 3'$ 4e,site 5 www&uts2sum,awa&ac&i d

Upload: fadhlan-frost

Post on 05-Nov-2015

28 views

Category:

Documents


0 download

DESCRIPTION

tugas

TRANSCRIPT

PAPERMetode Komunikasi RMI (Remote Method Invocation) Antar Client Pada Aplikasi Teamviewer

Di susun oleh :FADHLAN RUCHIATNA13.01.013.005

Teknik InformatikaUniversitas Teknologi SumbawaJl.Raya Olat Maras, No.1. Batu Alang, Sumbawa Besar-NTB2015Website : www.uts-sumbawa.ac.id

Metode KOMUNIKASI RMI (Remote Method Invocation) Antar Client Pada Aplikasi Teamviewer[footnoteRef:1] [1: Makalah ini ditulis untuk tugas tengah semester mata kuliah Kajian Pemrograman Jaringan]

Oleh : Fadhlan Ruchiatna[footnoteRef:2] [2: Penulis adalah mahasiswa Teknik Informatika UTS. NIM 1301013005]

-------------------------------------------------------------------------------------------------------AbstrakJava adalah sebuah bahasa pemrograman dan juga sebuah platform. Java juga merupakan sebuah bahasa pemrograman tingkat tinggi, salah satu fitur java yang menarik yaitu RMI. RMI (Remote Method Invocation) adalah sebuah teknik pemanggilan method remote yang secara umum lebih baik dari pada RPC (Remote Procedure Call). Pada RMI menggunakan sebuah paradigma yaitu pemrograman berorientasi obyek (object oriented programming). RMI memungkinkan kita untuk dapat mengirimkan sebuah obyek sebagai parameter dari remote method. Dengan diperbolehkannya program java memanggil method pada remote obyek, sehingga dengan adanya RMI membuat pengguna dapat mengembangkan aplikasi java yang terdistribusi pada jaringan

Kata Kunci : java, RMI-------------------------------------------------------------------------------------------------------

1. PENDAHULUANRemote Access adalah istilah yang menggambarkan dimana sebuah komputer yang satu, bisa dikendalikan oleh komputer yang lainnya dengan menggunakan media jaringan computer seperti Internet, atau menggunakan applikasi Teamviewer. Teamviewer adalah suatu program yang cukup sederhana dan sangat mudah digunakan untuk beberapa keperluan terutama melakukan akses PC secara remote melalui internet. Teamviewer juga dapat dijalankan dengan menggunakan jaringan LAN (Local Area Network), tetapi jika kita menggunakan LAN hanya terbatas pada koneksi jaringan lokal saja yang kita gunakan.Penulisan paper ini bertujuan agar pembaca dapat mengenal java RMI (Remote Method Invocation) untuk berkomunikasi antar client dengan aplikasi TeamViewer. Manfaat dari penulisan paper ini yaitu pembaca dapat mengenal java RMI lebih lanjut tentang pengertian RMI, implementasi RMI, cara kerja RMI, masalah perancangan untuk RMI, serta keuntungan dan kelemahan RMI yang akan dibahas pada bab pembahasan. Penulis berharap semoga dengan adanya paper ini dapat menjadi langkah awal bagi pembaca yang ingin mengembangkan bahasa pemrograman jaringan.

2. PEMBAHASANJava diciptakan oleh sebuah tim yang dipimpin oleh Patrick naughton dan james gosling dalam suatu proyek dari sun microsystem yang memiliki kode green dengan tujuan untuk menghasilkan bahasa komputer sederhana yang dapat dijalankan diperalatan sederhana dan tidak terikat pada arsitektur tertentu. Pemrograman java memiliki karakteristik berorientasi obyek (object oriented programming), dengan implementasi yang sangat baik sehingga kita tidak hanya belajar bagaimana membuat program yang baik (reusable, scalable, dan maintanable) tetapi kita juga belajar bagaimana cara berfikir yang baik untuk mengenali struktur masalah yang sedang kita hadapi dan memecahkan masalah tersebut secara sistematis dengan pola-pola tertentu. Beberapa fitur menarik yang ditawarkan java API salah satunya yaitu RMI (Remote Method Invocation).

Pengertian RMIRMI (Remote Method Invocation) adalah perluasan dari local method invocation yang memungkinkan sebuah obyek yang hidup dalam satu proses untuk memohon method obyek yang berada diproses lain. (George Coulouris hal 166). Aplikasi RMI seringkali terdiri dari dua program terpisah yaitu server dan client. Pada aplikasi server biasanya membuat beberapa obyek remote yang menyediakan referensi terhadap obyek-obyek tersebut sehingga dapat diakses, serta menunggu client memanggil method dari obyek-obyek remote tersebut. Pada aplikasi client mendapatkan referensi remote ke satu atau lebih obyek remote di server dan menjalankan method dari obyek tersebut. RMI menyediakan secara timbale balik. Pada aplikasi ini seringkali disebut sebagai aplikasi obyek terdistribusi.

Aplikasi obyek terdistribusi seringkali melakukan hal-hal berikut ini :- Melokasikan obyek remote Aplikasi dapat menggunakan satu dari dua mekanisme untuk mendapatkan referensi ke obyek remote. Aplikasi dapat mendaftarkan obyek remote dengan fasilitas penamaan RMI yang disebut sebagai naming facility yaitu rmiregistry atau aplikasi dapat mem-pass dan mengembalikan referensi obyek remote sebagai bagian dari operasi normal.- Berkomunikasi dengan obyek remoteSecara detail komunikasi antara obyek remote ditangani oleh RMI, bagi programmer komunikasi remote terlihat seperti invokasi method java standar.

- Memanggil (load) bytecode untuk obyek yang di-passDikarenan RMI mengizinkan pemanggil (caller) untuk mem-pass obyek ke obyek remote, RMI menyediakan mekanisme yang diperlukan obyek me-load kode obyek, dan juga mentransmisikan datanya.

Implementasi RMI

Remote referensi modul Remot referensi modul (Remote Modul Reference) yang bertanggung jawab untuk menerjemahkan antara local dan remote referensi obyek dan untuk menciptakan remote referensi obyek. Untuk mendukung tugasnya ini, remot referensi modul dalam setiap proses memiliki tabel remote obyek yang mencatat korespondensi antara obyek lokal referensi dalam proses dan remote referensi obyek (dimana system-wide) (George Coulouris dkk, hal 176).

Tindakan remote referensi modul adalah sebagai berikut : Ketika remote obyek diteruskan sebagai argumen atau sebagai hasil untuk pertama kalinya, remote referensi modul diminta untuk membuat remote referensi obyek yang menambahkan tabel. Ketika remote referensi obyek tiba dalam permintaan atau membalas pesan, remote referensi modul diminta untuk menyesuaikan referensi obyek local, yang mungkin mengacu baik pada proxy atau ke obyek remote. Dalam hal remote referensi obyek

tidak ada dalam tabel, menciptakan perangkat lunak RMI proxy baru dan meminta remote referensi modul untuk menambahkannya ke tabel.Software RMI terdiri dari suatu lapisan perangkat lunak antara aplikasi level obyek dan komunikasi dan remote referensi modul. Peran middleware obyek adalah sebagai berikut : Proxy pada client : tempat penyimpanan local untuk remote objek

Dispatcher pada server : menerima request dan menggunakan methodid untuk memilih message di skeleton Skeleton : kelas jauh obyek memiliki kerangka, yang mengimplementasikan metode dalam antarmuka remote. Mereka dilaksanakan cukup berbeda dari metode-metode di remote obyek. Sebuah metode menguraikan kerangka argument dalam pesan permintaan dan memanggil metode yang sesuai dalam remote obyek.

Cara kerja RMIPada model RMI, sebuah proses memanggil method dari obyek yang terletak pada suatu host atau computer remote. Dalam paradigma ini, penyedia layanan mendaftarkan dirinya dengan server direktori pada jaringan. Proses yang menginginkan suatu layanan mengontak server direktori saat runtime. Jika layanan tersedia, maka referensi ke layanan akan diberikan. Dengan menggunakan referensi ini, proses dapat berinteraksi dengan layanan tersebut. Paradigma ini ekstensi penting dari paradigma RPC. Perbedaannya adalah objek yang memberikan layanan didaftarkan (diregister) ke suatu layanan direktori global, sehingga memungkinkan untuk ditemukan dan diakses oleh aplikasi yang meminta layanan tersebut.Contoh aplikasi untuk meremote pada teknik RMI (Remote Method Invocation) menggunakan teamviewer untuk meremote computer lain. Teamviewer adalah suatu program yang cukup sederhana dan sangat mudah digunakan untuk beberapa keperluan terutama melakukan akses PC secara remote melalui internet.

Masalah perancangan untuk RMI

Semantic pemanggilan RMIdoOperation() dapat diterapkan dalam beberapa cara untuk menyediakan jaminan pengiriman yang berbeda. Retry request message : pengiriman ulang request walaupun reply diterima atau server diasumsikan gagal. Duplicate filtering : apakah dilakukan filtering terhadap request yang sama atau tidak. Ketika semua request yang dikirim ulang diterima server, ada dua kemungkinan yang dilakukan obyek server Retransmission of result : apakah mampu menyimpan (caching) hasil reply, sehingga jika memang perlu melakukan retransmisi ulang tidak perlu melakukan eksekusi kembali. Repeated execution prosedur

Dari dua kemungkinan-kemungkinan dua operasi tersebut, memunculkan beberapa semantic invocation.

Keuntungan dan kelemahan RMI Keuntunngan RMI Salah satu keuntungan RMI adalah kemampuan untuk download zytecodes (code) dari suatu objects class, jika class tersebut tidak terdefinisikan di VM- nya penerima Type-type dan metode-metode object (class), yang terletak dalam satu VM, dapat dikirim ke VM yang lain, yang mungkin saja remote. Sifat-sifat object yang terkirim ini tidak berubah sama sekali

Kelemahan RMI Proses pembukaan socket yang kadang-kadang tidak dapat diimplementasikan lewat jaringan internet, tapi hal ini bisa diatasi dengan menggunakan Spring HttpInvoker, sama persis dengan RMI tapi lewat protokol HTTP.

3. KESIMPULANPada java API terdapat beberapa fitur menarik, salah satunya yaitu RMI (Remote Method Invocation). RMI adalah perluasan dari local method invocation yang memungkinkan sebuah obyek yang hidup dalam satu proses untuk memohon method obyek yang berada diproses lain.Implementasi RMI terdapat sebuah Remot referensi modul (Remote Modul Reference) yang bertanggung jawab untuk menerjemahkan antara local dan remote referensi obyek dan untuk menciptakan remote referensi obyek.Demikianlah penulisan paper ini dibuat, semoga paper ini dapat bermanfaat bagi para pembaca. Penulis berharap semoga dengan adanya paper ini dapat menambah wawasan bagi pembaca dalam bidang pemrograman java.

Daftar Pustaka

http://muhammadtaufiqaminullah.blogspot.com/2013/05/pengertian-rmi-remote- method-invocation.htmlhttp://www.ryanscheineder.com/2008/04/pengertian-java.html http://ishares.wordpress.com/2007/09/30/part-1-java-programming-using-rmi-remote- method-invocation/http://rifkiputra1991.blogspot.com/ http://www.geocities.ws/ginanjar_utama/writing/berfikirJava.pdf http://ngoprek2-pc.blogspot.com/2012/07/mengenal-java.html http://susi.staff.jak-stik.ac.id/files/pemrograman-java.pdf

7 | Page