pemograman3 (rpc,soap,rest) 1100631043

3
RPC (Remote Procedur Call), SOAP (Simple Object Access Protocol), dan REST (REpresentational State Transfer) 1. SOAP ( Simple Object Access Protocol) 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. Keuntungan dari SOAP tidak terbatas pada platform tertentu -protocol seperti HTTP, JMS, RPC, SMTP, dll. firewalls sehingga mendukung model HTTP get / reponse ntrak Kekurangan dari SOAP Walaupun sederhana, pesannya dapat panjang karena kebutuhannya untuk mengemasnya dalam bentuk SOAP envelope 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 2. RPC (Remote Procedur Call) 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. Kelebihan RPC a. 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.

Upload: miftakhullutfihaniah

Post on 21-Jul-2015

48 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pemograman3 (RPC,SOAP,REST) 1100631043

RPC (Remote Procedur Call), SOAP (Simple Object Access Protocol), dan

REST (REpresentational State Transfer)

1. SOAP ( Simple Object Access Protocol)

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.

Keuntungan dari SOAP

tidak terbatas pada platform tertentu

-protocol seperti HTTP, JMS, RPC, SMTP, dll.

firewalls sehingga mendukung model HTTP get / reponse

ntrak

Kekurangan dari SOAP

Walaupun sederhana, pesannya dapat panjang karena kebutuhannya untuk

mengemasnya dalam bentuk SOAP envelope

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

2. RPC (Remote Procedur Call)

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.

Kelebihan RPC

a. 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.

Page 2: Pemograman3 (RPC,SOAP,REST) 1100631043

b. Robust (Sempurna):

Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission

critical application yg memerlukan scalability, fault tolerance, & reliability.

Kekurangan RPC

a. Tidak fleksibel terhadap perubahan:

Static relationship between client & server at run-time. Berdasarkan

prosedural/structured programming yang sudah ketinggalan jaman dibandingkan

OOP.

3. REST (REpresentational State Transfer)

REST merupkan 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 link-link yang disediakan sama halnya dengan

mengganti state dari halaman web. Begitu pula REST bekerja, dengan bernavigasi

melalui link-link HTTP untuk melakukan aktivitas tertentu, seakan-akan 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 service

yang berorientasi pada resource. Maksud orientasi pada resource adalah orientasi

yang menyediakan resource-resource 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 Program Interface), YouTube API, Amazon API.

Keuntungan REST

bahasa dan platform agnostic

lebih sederhana/simpel untuk dikembangkan ketimbang SOAP

mudah dipelajari, tidak bergantung pada tools

ringkas, tidak membutuhkan layer pertukaran pesan (messaging) tambahan

secara desain dan filosofi lebih dekat dengan web

Page 3: Pemograman3 (RPC,SOAP,REST) 1100631043

Kelemahan REST

Mengasumsi model point-to-point komunikasi - tidak dapat digunakan untuk

lingkungan komputasi terdistribusi di mana pesan akan melalui satu atau lebih

perantara

Kurangnya dukungan standar untuk keamanan, kebijakan, keandalan pesan, dll,

sehingga layanan yang mempunyai persyaratan lebih canggih lebih sulit untuk

dikembangkan ("dipecahkan sendiri")

Berkaitan dengan model transport HTTP

contoh program sederhana mengenai penggunaan RPC, SOAP dan REST

a. Contoh Source Code SOAP

SOAP Server

SOAP Client

b. Contoh Source Code REST