Rpc, soap,rest
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Rpc, soap,rest

on

  • 409 views

 

Statistics

Views

Total Views
409
Views on SlideShare
409
Embed Views
0

Actions

Likes
1
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Rpc, soap,rest Document Transcript

  • 1. Matakuliah Pemrograman 3 TUGAS ESAY RPC, JOAP, REST Di susun oleh : NURIA SARI 1100631005 PROGRAM STUDI MANAJEMEN INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH JEMBER 2013
  • 2. Matakuliah Pemrograman 3 Remote Procedure Call (RPC) Remote Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah server harus menyediakan layanan remote procedure.Pendekatan yang dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bila client tidak tahu haruS menghubungi port yang mana, client bisa me-request kepada sebuah matchmaker pada sebuah RPC port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client. RPC masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak remote procedure. RPC menggunakan socket untuk berkomunikasi dengan proses lainnya. Pada sistem seperti SUN, RPC secara default sudah ter-install kedalam sistemnya, biasanya RPC ini digunakan untuk administrasi sistem. Sehingga seorang administrator jaringan dapat mengakses sistemnya dan mengelola sistemnya dari mana saja, selama sistemnya terhubung ke jaringan. Protokol Message RPC Protokol Message RPC didefinisikan dengan menggunakan deskripsi data eXternal Data Representation ( XDR ) yang meliputi struktur, enumerasi dan union. Pembahasan lebih lanjut akan diterangkan pada bab berikutnya mengenai implementasi RPC. Protokol Message ini membutuhkan faktor-faktor pendukung sebagai berikut : 1. Spesifikasi yang unik untuk tiap prosedur call 2. Respon message yang sesuai untuk tiap message yang diminta 3. Otentifikasi klien untuk tiap layanan dan sebaliknya Protokol Message RPC memiliki dua ( 2 ) struktur yang berbeda, yaitu call message dan reply message. Tiap klien yang akan melakukan RPC pada suatu server di jaringan akan menerima balasan (reply) berupa hasil dari eksekusi prosedur tersebut. Dengan menggunakan spesifikasi yang unik untuk tiap prosedure remote, maka RPC dapat mencocokkan message balasan untuk tiap call message yang diminta klien.
  • 3. Matakuliah Pemrograman 3 Struktur Protokol Message RPC  Call Message Dilakukan oleh klien, dimana meminta server untuk mengeksekusi suatu prosedur.  Terdapat nilai-nilai unsigned integer yang digunakan untuk mengidentifikasi prosedurremote yang diminta: 1. Nomor Program 2. Nomor Versi dari Program 3. Nomor Prosedur  Reply Message Dikirimkan oleh server jaringan, bervariasi tergantung apakah call messages yang diminta klien diterima atau ditolak.  Mengandung informasi: 1. RPM mengeksekusi call message dengan sukses 2. Implementasi remote tidak sesuai dengan protokol yang digunakan (versi yang lebih tinggi atau lebih rendah ditolak) 3. Program remote tidak tersedia pada sistem remote 4. Program remote tidak mendukung versi yang diminta klien 5. Nomor prosedur yang diminta tidak ada Fitur dalam RPC 1. Batching Calls Mengijinkan klien untuk mengirim message calls ke server dalam jumlah besar secara berurutan. 2. Broadcasting Calls Menijinkan klien untuk mengirimkan paket data ke jaringan dan menunggu balasan dari network.
  • 4. Matakuliah Pemrograman 3 3. Callback Procedures Mengijinkan server untuk bertindak sebagai klien dan melakukan PRC callback ke proses yang dijalankan klien. 4. Select Subrutin Memeriksa deskripsi suatu file dan messages dalamantrian untuk melihat apakah siap dibaca atau ditulis,atau ditahan. (mengijinkan server untuk menginterupsi suatu aktivitas. Kelebihan RPC  Relatif mudah digunakan : Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan procedure Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti socket, marshalling & unmarshalling.  Robust (Sempurna): Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission- critical application yg memerlukan scalability, fault tolerance, & reliability. Kekurangan RPC  Tidak fleksibel terhadap perubahan: Static relationship between client & server at run-time. Berdasarkan prosedural/structured jaman dibandingkan OOP. programming yang sudah ketinggalan
  • 5. Matakuliah Pemrograman 3 Contoh Sourcecode RPC berikut menggambarkan bagaimana melakukan panggilan dikonfirmasi di Python Simple Object Access Protocol (SOAP) Simple Object Access Protocol (SOAP) adalah sebuah standarisasi dasar dari protokol komunikasi untuk saling bertukar informasi terstruktur di antara aplikasi-aplikasi yang berjalan. SOAP adalah sebuah aplikasi pesan XML yang sangat bergantung pada skema XML dan XML namespaces untuk mendifinisikannya. SOAP juga sangat bergantung dengan beberapa protokol layer lainnya seperti HTTP, JMS, RPC untuk transmisi pesan. SOAP sangat efektif untuk berbabagai macam aplikasi untuk berkomunikasi walaupun berjalan pada sistem operasi yang berbeda dengan teknologi dan bahasa pemrograman yang berbeda-beda pula. Pesan SOAP mempunyai struktur sebagai berikut :
  • 6. Matakuliah Pemrograman 3 Keuntungan dari SOAP  Format yang sederhana dan dapat dikembangkan  Bisa dijalankan dimana saja tidak terbatas pada platform tertentu  Bisa menggunakan bahasa pemrograman apa saja  Multi-protocol seperti HTTP, JMS, RPC, SMTP, dll.  Dapat melewati firewalls sehingga mendukung model HTTP get / reponse  Tipe yang kuat dan melekat pada sebuah kontrak Kekurangan dari SOAP  Walaupun sederhana, pesannya dapat panjang karena kebutuhannya untuk mengemasnya dalam bentuk SOAP envelope  Karena SOAP berbasis XML, dibutuhkan waktu untuk parsing XML tersebut karena harus di kedua pihak melakukannya (pengirim dan penerima pesan)  Walaupun SOAP standart yang terbuka, tidak semua bahasa mendukung dengan baik. Yang terbaik untuk mendukung SOAP adalah JAVA, .Net, dan Flex Peran SOAP Dalam Teknologi Web Service Peran SOAP di dalam teknologi web service adalah sebagai protocol pemaketan untuk pesan (messages) yang digunakan secara bersama oleh aplikasi-aplikasi penggunanya. Spesifikasi yang digunakan tidak lebih seperti sebuah amplop biasa berbasis XML untuk informasi yang ditransfer, serta sekumpulan aturan bagi translasi aplikasi dan tipe-tipe data platform yang spesifik menjadi bentuk XML. Desain bentuk dari SOAP membuatnya cocok untuk berbagai pertukaran pesan pada aplikasi.
  • 7. Matakuliah Pemrograman 3 Contoh program sederhana Soap Server.php
  • 8. Matakuliah Pemrograman 3 Client.php Output
  • 9. Matakuliah Pemrograman 3 REST (REpresentational State Transfer) REST adalah salah satu jenis web service yang menerapkan konsep perpindahan antar state. State disini dapat digambarkan seperti jika browser meminta suatu halaman web, maka serverakan mengirimkan state halaman web yang sekarang ke browser. Bernavigasi melalui linklink yang disediakan sama halnya dengan mengganti state dari halaman web. Begitu pula REST bekerja, dengan bernavigasi melalui link-link HTTP untuk melakukan aktivitas tertentu, seakanakan terjadi perpindahan state satu sama lain. Perintah HTTP yang bisa digunakan adalah fungsi GET, POST, PUT atau DELETE. Balasan yang dikirimkan adalah dalam bentuk XML sederhana tanpa ada protokol pemaketan data, sehingga informasi yang diterima lebih mudah dibaca dan diparsing disisi client. Dalam pengaplikasiannya, REST lebih banyak digunakan untuk web serviceyang berorientasi pada resource. Maksud orientasi pada resource adalah orientasi yang menyediakan resourceresource sebagai layanannya dan bukan kumpulan-kumpulan dari aktifitas yang mengolah resource itu.Alasan mengapa REST tidak digunakan dalam skripsi ini karena orientasi pada resourcenya itu,sedangkan aplikasi event calendar membutuhkan pemanggilan metode yang bisa dikerjakan terhadap kumpulan resource event. Selain itu, karena standarnya yang kurang sehingga tidak begitu cocok diterapkan dalam aplikasi yang membutuhkan kerjasama antar aplikasi lain, dimana standar yang baik akan sangat berguna karena berbicara dalam satu bahasa yang sama. Beberapa contoh web service yang menggunakan REST adalah: Flickr API(Application ProgramInterface), YouTube API, Amazon API. Meskipun pada tahun-tahun terakhir ini kita lihat pertumbuhan jumlah web servis, meski publisitas SOAP sudah berkurang. Arsitek internet memiliki alasan bagus telah meminggirkan SOAP, karena ada metode yang lebih baik untuk membangun web servis dalam bentuk Representational State Transfer (REST). REST lebih merupakan filosofi tua ketimbang teknologi baru, tetapi merupakan wujud yang kemudian lahir sebagai teknologi. SOAP terlihat melompat, memulai fase berikutnya dari pengembangan internet dengan sejumlah spesifikasi baru, sedang REST berfilosofi bahwa prinsip-prinsip yang ada dan protokol web sudah cukup untuk membuat web servis yang baik. Ini berarti bahwa pengembang yang paham tentang HTTP dan XML dapat langsung mulai
  • 10. Matakuliah Pemrograman 3 membangun web servis, tanpa perlu ada toolkit yang biasanya tidak mereka gunakan untuk pengembangan aplikasi Internet. Contoh program sederhana REST.