Minggu, 03 Juni 2012

0 Makalah SOAP_N-Tier

Apa Itu SOAP ?
SOAP singkatan dari "Simple Object Access Protocol", yang relatif baru  protokol untuk aplikasi terdistribusi yang dikembangkan oleh Microsoft, IBM, DevelopMentor, dan UserLand. SOAP sangat "fleksibel" dan dapat mendukung aplikasi yang berbeda; Namun, yang paling penting adalah untuk memungkinkan panggilan prosedur remote (RPC) melalui HTTP menggunakan XML. SOAP adalah berbasis XML objek protokol doa dan awalnya dikembangkan untuk aplikasi terdistribusi untuk berkomunikasi melalui HTTP dan melalui firewall perusahaan dan itu dimaksudkan untuk mengakses layanan, objek dan server dalam platform-independen. Spesifikasi SOAP asli (1,0) menguraikan dua gol desain utama:
1 - Menyediakan doa protokol objek standar yang dibangun pada standar Internet, menggunakan HTTP sebagai transportasi dan XML untuk data encoding.
2 - Membuat protokol diperluas dan format payload yang dapat berkembang [SOAP].
Sebuah spesifikasi 1,1 kemudian menyatakan: "Tujuan desain utama untuk SOAP adalah kesederhanaan dan diperpanjang ". [MSFT]

Manfaat SOAP :
  • Menggunakan SOAP melalui HTTP mengijinkan kemudahan komunikasi melewati proxy dan firewall.
  • SOAP cukup berguna untuk mengijinkan penggunaan dalam protocol transport yang berbeda.
  • SOAP adalah independen protocol.
  • SOAP adalah bahasa yang independent.

Kelemahan SOAP :
  • SOAP dapat menjadi lambat saat ditandingkan dengan teknologi middleware seperti CORBA.
  • Kebanyakan penggunaan HTTP sebagai protokol transpor dilakukan dengan ketidaktahuan bagaimana operasi dapat dimodelkan dalam HTTP.
  • Saat mempercayakan HTTP sebagai protokol transfer, sebuah firewall didesain hanya untuk mengijinkan web browsing menampilkan analisa lebih detail. Walaupun SOAP merupakan standar terbuka, tidak semua bahasa menyediakan layanan. JAVA, Delphi, .Net dan Flex menawarkan integrasi SOAP/ layanan IDE dengan sangat baik. Sedangkan Python dan PHP layanannya lebih lemah.
Ide Dibalik SOAP:
Dunia-wide-web berkembang dari situs Web yang hanya melayani sampai Halaman Web ke dalam layanan Web dinamis yang interaktif melakukan tugas-tugas yang melibatkan beberapa langkah dieksekusi atas nama pengguna. Tugas-tugas ini mungkin memerlukan satu layanan Web untuk memanggil layanan Web lain, mengkoordinasikan langkah-langkah lebih seperti program perangkat lunak tradisional mengeksekusi perintah. Masalah hari ini adalah bahwa mengintegrasikan dengan layanan lain dan menyentuh perangkat yang berbeda tetap sulit, karena alat (seperti CORBA atau COM) dan konvensi umum untuk interkoneksi mereka relatif sulit untuk mengelola. Apa Web kebutuhan adalah cara yang umum untuk mengikat semua layanan bersama.

Secara historis, solusi untuk membuat semacam ini kaya aplikasi-ke-komunikasi aplikasi telah mempekerjakan model objek seperti Microsoft DCOM atau Internet Object Management Group Inter-ORB Protocol (IIOP) yang merupakan bagian dari Broker Permintaan Obyek Umum Arsitektur (CORBA). Namun teknologi ini memiliki beberapa keterbatasan ketika datang untuk menciptakan layanan Web. Secara khusus, DCOM dan IIOP / CORBA adalah lingkungan yang kaya, yang berarti bahwa implementasi dan aplikasi bahwa penggunaan mereka cenderung kompleks dan simetris. Dengan kata lain, untuk membangun didistribusikan aplikasi menggunakan mereka, kami biasanya memerlukan terdistribusi sama model objek berjalan pada kedua ujung koneksi. Namun, Internet  tidak menjamin apa jenis tertentu dari perangkat lunak klien atau server sedang berjalan di ujung sambungan; sering satu-satunya umum saluran komunikasi yang tersedia hanya HTTP-koneksi. Masalah dengan HTTP saja bahwa hal ini terutama mekanisme untuk lewat file dari server ke klien. Untuk membuat layanan Web yang lebih ambisius, itu diperlukan untuk memperpanjang HTTP. SOAP tidak tepat: itu menambah satu set HTTP header dan payload XML kaya untuk memungkinkan kompleks aplikasi-ke-aplikasi komunikasi melalui Internet. [MSFT]

Gagasan utama di balik SOAP adalah untuk:
Meningkatkan interoperabilitas Internet dan Mengintegrasikan sistem bisnis berbagai DCOM dan CORBA dianggap sebagai terlalu kompleks terutama pada sisi klien. SOAP akan lebih baik karena sederhana, mudah digunakan di atas protokol komunikasi yang ada, berdasarkan pada XML dan implementasi-independen.

SOAP adalah protokol yang sangat sederhana yang merendahkan sebagian besar pekerjaan "nyata" untuk layanan mendasari atau model komponen. Ini bukan pengganti COM atau Enterprise JavaBeans atau bahkan komponen CORBA - itu hanya pembungkus teknologi untuk membuat layanan tersebut lebih mudah diakses melalui Internet. [CNET] Karena SOAP didasarkan pada XML, itu kompatibel dengan pemrograman banyak model dan memungkinkan perusahaan untuk dengan mudah bertukar data satu sama lain selama Internet. Dalam prakteknya, sebagian besar perusahaan membangun dan menjalankan campuran aplikasi dan teknologi distribusi dibangun menggunakan COM, CORBA, Java RMI, dan lainnya teknologi. Sebuah protokol yang memberikan kebebasan yang lebih besar perusahaan dengan sistem hubungan baik secara internal dan di seluruh Net dengan perusahaan lain diharapkan akan menyambut hangat. [CNET]

Tujuan SOAP :
  • Menyediakan doa protokol objek standar yang dibangun di Internet Standar menggunakan HTTP sebagai transportasi & XML untuk data encoding.
  • Membuat format protokol & muatan extensible yang dapat berkembang lebih waktu.
  • Tidak ada koleksi terdistribusi sampah, jenis keselamatan atau versioning.
  • Tidak ada dua arah komunikasi HTTP.
  • Tidak ada pesan-kotak peduli atau pemrosesan pipa.
  • Tidak Obyek dengan referensi.
  • Tidak aktivasi Objek.
  • SOAP bekerja pada Infrastruktur Internet yang ada. (Router, firewall, proxy server)
  • Sebuah program hanya perlu tahu bagaimana memformat permintaan SOAP.
  • Seorang pemrogram harus dapat mengimplementasikan SOAP dalam beberapa hari dalam bahasa pemrograman selama klien mengirimkan berlaku Permintaan SOAP.
  • Biaya pelaksanaan SOAP akan menjadi harga kecil untuk membayar yang universal interoperabilitas.
Komunikasi dengan pesan SOAP :
  • Aplikasi klien mengirimkan pesan meminta SOAP untuk aplikasi server disepanjang jaringan.
  • Berdasarkan URL yang diminta , server mengidentifikasi web service dalam keadaan invoke.
  • Web service membaca pesan yg diminta SOAP dan mengidentifikasi operasi yang ingin dijalankan. Operasi menyesuaikan ke method dari penanggung komponen, untuk di invoke ke langkah selanjutnya. Konversi form XML ke java terjadi saat parameter permintaan dari pesan SOAP di web service untuk invoked operasi.
  • Web Service membaca pesan permintaan SOAP dan mengidentifikasi operasi yang dibutuhkan. Operasi ini akan melakukan korepodensi terhadap suatu metode dari komponen terakhir (back-end), yang kemudian akan panggil kemudian. Konversi dari XML ke java akan terjadi sebagai parameter permintaan atas pesan SOAP pada lapisan web service dalam operasi pemanggilan.
  • Metode komponen back-end yang cocok akan diminta oleh parameter Java yang lalu akan dipanggil kembali.
  • menjelang selesainya komponen back-end akan dikirim kembali sebagai respon web service serta kemudian akan dikonversi kembali menjadi bentuk XML dari bentuk java. Pemaketan tersebut dijadikan sebagai respon pesan SOAP.
  • Web Service akan mengirim kembali respon pesan SOAP ke aplikasi Client yang melakukan pemanggilan web service.

SOAP menjadi sangat mudah diterima oleh berbagai pihak – terutama oleh berbagai vendor TI – dikarenakan protokol ini memanfaatkan berbagai teknologi yang sudah ada sebelumnya dan sudah banyak digunakan. Misalnya untuk protokol transport, yang paling banyak digunakan adalah HTTP, walaupun dimungkinkan untuk menggunakan protokol transport lainnya. Sedangkan untuk format data atau message digunakan XML yang tidak diragukan lagi manfaat dan perannya di dalam pertukaran data. Dengan demikian, tidaklah terlalu mengherankan bila kemudian SOAP dianggap sebagai solusi penyelamat untuk mengatasi berbagai masalah yang dihadapi oleh teknologi – teknologi pendahulunya.

Pesan SOAP :
Sebuah pesan SOAP adalah sebuah dokumen XML yang berisi elemen-elemen berikut:
  • Envelope element yang mengidentifikasi dokumen XML sebagai sebuah pesan SOAP.
  • Elemen header yang berisi informasi header. Elemen ini bersifat opsional.
  • Elemen body yang berisi panggilan dan merespon informasi.
  • Fault element yang berisi pesan kesalahan yang terjadi pada waktu proses. Elemen ini opsional.
Operasi-operasi pengiriman pesan SOAP dijalankan dengan melibatkan paramater nama operasi yang diinginkan melalui method call(). Jika web service yang dituju menyediakan sebuah file WSDL, maka class “soapclient” akan mengacu langsung pada URL file WSDL tersebut dan menggunakan class “wsdl” untuk mem-parsing file WSDL dan mengekstrak seluruh datanya. Class “wsdl” menyediakan method-method untuk mengekstrak data per-operasi dan per-binding.
Class “soapclient” menggunakan data dari file WSDL untuk menerjemahkan parameter-parameternya sekaligus menyusun SOAP envelope ketika user mengeksekusi suatu pemanggilan service. Ketika pemanggilan ini dieksekusi, class “soapclient” menggunakan “soap_transport_http” untuk mengirim pesan SOAP request dan menerima pesan SOAP response. Selanjutnya pesan SOAP response yang diterima di-parsing dengan menggunakan class “soap_parser” .

About the Author

I'm Author description here. Go to Blogger edit html and find these sentences. Now replace these sentences with your own descriptions. Subscribe to Our Feed and Follow Me on Twitter My user

    Other Recommended Posts

0 komentar:

Posting Komentar

 
back to top