Mengenal Karakteristik Web Service

Pada zaman modern saat ini banyak pengembang menggunakan berbagai platform dan bahasa pemograman yang berbeda-beda, ada yang menggunakan Java, .Net, Angular JS, Python, Node.js dan dll.  Sehingga dibutuhkanlah  suatu metode yang dapat melakukan komunikasi data antar platform dan bahasa pemograman yang berbeda. Metode yang dapat melakukan komunikasi data antar platform dan bahasa pemograman yang berbeda adalah web service. Web service dapat menyediakan suatu layanan umum yang dapat memungkinkan aplikasi saling berkomunikasi dan terintegrasi walaupun platform dan bahasa pemogramannya berbeda.

Pengertian Web Service

Web service merupakan metode yang dapat melakukan komunikasi antara platform dan bahasa pemograman yang berbeda terlepas dari suatu arsitektur dan teknologi yang digunakan. Pada web service memiliki hubungan antara client dan server tidak berkomunikasi secara langsung. Hubungan tersebut dijembatani oleh file web service dalam format tertentu, sehingga akses terhadap sebuah database akan ditangani secara tidak langsung oleh server. Melainkan melalui suatu prantara yang disebut web service, untuk mempermudah distribusi sekaligus integrasi database yang tersebar di beberapa server sekaligus.

Web service memiliki suatu antarmuka yang dapat dijelaskan dengan format mesin-processable digunakan khusus untuk Web Service Description Language (WSDL).

Perangkat lunak lain dapat berinteraksi dengan web service, dengan cara ditentukan oleh deskripsi dengan menggunakan suatu pesan SOAP/Restfull, biasanya disampaikan menggunakan HTTP/HTTPS dengan suatu serialisasi layanan dengan format data XML/JSON dalam suatu hubunganya dengan web lainnya yang terkait dengan standar.

Arsitektur Web Service

Setiap metode memiliki suatu kerangka kerja yang membutuhkan semacam arsitektur untuk memastikan keseluruhan kerangka kerja berfungsi seperti yang diinginkan. Demikian pula dalam sebuah web service, ada arsitektur yang terdiri dari tiga peran berbeda seperti yang dibawah ini, yaitu:

1. Penyedia – penyedia membuat suatu layanan web service dan membuatnya tersedia untuk aplikasi client yang ingin menggunakannya.

2. Pemohon – pemohohon tidak lain merupakan perangkat lunak client yang perlu menghubungi layanan web service.

3. Perangkat lunak client dapat berupa .Net, Java atau perangkat lunak berbasis bahasa lainnya yang mencari semacam fungsionalitas melalui layanan web.

4. Broker – broker yang tidak lain merupakan aplikasi yang menyediakan akses ke UUDI. UUDI, sebagaimana dibahas dalam topik sebelumnya memungkinkan aplikasi klien untuk menemukan layanan web.

Diagram di bawah ini menunjukkan bagaimana penyedia Layanan, pemohon Layanan dan registri Layanan saling berinteraksi, yaitu :

Sumber : guru99.com

1. publish merupakan penyedia yang menginformasikan broker atau layanan registry tentang keberadaan web service dengan menggunakan suatu antar muka mempublikasikan broker untuk membuat layanan dapat diakses oleh client.

2. Find merupakan pemohon yang berkonsultasi dengan broker untuk mencari web service yang dipublikasikan.

3. Bind merupakan informasi yang diperoleh dari broker atau layanan pendaftaran tentang web service, pemohon dapat mengikat atau memohon pada layanan ini.

Jenis Web Service

Web service memiliki 2 jenis, yaitu :

1. RESTful

Jenis yang peratama adalah Representational State Transfer (REST) yang digunakan untuk standar arsitektur komunikasi yang sering diterapkan dalam sebuah pengembangan layanan berbasis web. Pada umumnya web service menggunakan HTTP/HTTPS sebagai suatu protocol untuk melakukan sebuah komunikasi data atau integrase antar platform berbeda.

Pada REST server dapat menyediakan suatu resources atau sumber data dan REST clien akan mengakses dan menampilkan suatu resource tersebut untuk digunakan. Setiap suatu resource akan diidefinikasi oleh Universal Resource Identifiers (URLs). Resource tersebut akan direpresentasikan dalam bentuk format data, XML/JSON.

Baca Juga: Pengertian dan Keuntungan dari RESTful

2. SOAP

Jenis yang kedua  adalah  SOAP yang merupakan suatu protocol pengiriman transport-independent. SOAP didasarkan saat mentransfer data XML sebagai Pesan SOAP. Setiap pesan memiliki sesuatu yang dikenal sebagai format data XML. Hanya saja struktur dari dokumen XML yang mengikuti pola tertentu, tetapi bukan kontennya. Bagian terbaik dari suatu web service SOAP dapat mengirim semua data melalui HTTPS/HTTPS, yang merupakan suatu protokol standar web.

Kelebihan dan Kekurangan web service

7 Kelebihan yang ada yaitu :

  1. Bersifat interoperability, sehingga dapat diakses oleh platform dan bahasa pemograman yang berbeda-beda tanpa harus mengetahui arsitektur perangkat lunak tersebut.
  2. Berupa perangkat lunak yang tidak memiliki interface.
  3. Menggunakan suatu standar dan protokol yang terbuka pada internet.
  4. Menggunakan suatu HTTP/HTTPS dan STMP, untuk digunakan menembus pengamanan firewall suatu organisasi tanpa mengubah sebuah konfigurasi firewall.
  5. Memungkin fungsi-fungsi pada banyak perangkat lunak di internet, digunakan untuk dipadukan menjadi satu nantinya akan menjadi web service baru.
  6. Memungkinkan penggunaan ulang layanan dan komponen.
  7. Bersifat loosely-coupled terhadap sebuah client.

 2 Kekurangan yang ada yaitu :

  1. Layanan web service termasuk dalam layanan yang masih baru, sehingga fitur-fitur seperti transaksi belum ada atau kalaupun ada masih belum sebaik fitur yang ada di distributed computing open standard yang sudah seperti COBRA.
  2. Proses kerjanya masih dibilang kurang baik dibandingkan dengan cara kerja seperti RML, COBRA atau DCOM yang sudah ada lebih dahulu.

Karakteristik Web Service

Berbasis XML atau JSON

Layanan ini menggunakan format data XML/JSON untuk representasi data dan lapisan transportasi data. Sehingga menggunakan XML/JSON untuk menghilangkan Sistem operasi, jaringan, atau mengikat platfrom. Perangkat lunak yang berbentuk layanan berbasis web merupakan aplikasi yang sangat dioperasikan yang ada ditingkat inti mereka.

Loosely Coupled

Layanan ini memiliki karakteristik yang tidak terkait dengan layanan web secara langsung, antarmuka pada layanan web dapat berubah sewaktu-waktu tanpa harus mengorbankan kemampuan client untuk berinteraksi dengan layanan. Sistem yang erat menyiratkan bahwa logika pada client dan server yang erat satu sama lain, dapat menyiratkan bahwa jika perubahan satu antar muka, yang lain harus dapat di perbarui.

Mengadopsi arsitektur tersebut digabungkan secara longgar yang dapat mengakibatkan cenderung untuk membuat suatu perangkat lunak lebih mudah dikelola dan memungkinkan dapat terjadi intergrasi antar platform yang berbeda.

Coarse-Grained

Teknologi yang berorientasi objek seperti Java mengekpos suatu layanan mereka melalui sebuah metode yang bersifat individu. Metode individu tersebut merupakan operasi untuk menyediakan apapun kemampuan yang berguna pada tingkat suatu perusahaan atau instansi pemerintahan. membangun sebuah program java dari awal membutuhkan beberapa metode halus yang kemudian terdiri dari layanan coarse-grained yang dikonsumsi oleh baik dengan client atau layanan lainnya.

Bisnis dan antarmuka yang dapat mengekspos mereka harus coarse-grainde, layanan web menyediakan suatu layanan dengan cara alami untuk mendefinisikan coarse-grained layanan yang mengakses jumlah yang tepat dari logika bisnis.

Kemampuan untuk membuat data menjadi sinkron

Sinkronisitas dapat menunjuk kepada pengikat terhadap client untuk melakukan pelaksanaan layanan. Sehingga disinkronivokasi, client blok dan menunggu layanan untuk menyelesaikan operasi sebelum melanjutkan. Operasi asynchronous memungkinkan client memohon kepada layanan dan kemudian jalankan fungsi lainnya.

Asinkron client mengambil suatu hasil pada titik kemudian dalam waktu tertentu, semestara sinkron client menerima hasil dari layanan yang telah menyelesaikan operasi. Kemampuan suatu asinkron merupakan factor kunci dalam memungkinkan ke longgaran pada sistem.

Mendukung prosedur panggilan jauh atau Supports Remote Procedure Calls (RPC)

Layanan ini memungkinkan klien untuk memangil suatu metode pada objek yang terpencil menggunakan protokol berbasis XML/JSON, fungsi dan prosedur yang ada. Prosedur terpencil dapat mengekspos parameter input dan output yang layanan dalam sebuah web harus mendukung. Layanan ini juga mendukung suatu RPC menyediakan layanan sebdurum setara dengan komponen yang teradisional.

Mendukung suatu dokumen asing

Salah satu keunggulan utama dari suatu XML/JSON dengan cara generic yang tidak hanya mewakili suatu data, tetapi dapat juga mewakili dokumen-dokumen yang komplek. Dokumen-dokumen ini dapat diartikan secara sederhana yang mewakili sebagai alamat saat ini, atau mereka dapat sebagai komplek yang mewakili seluruh buku atau permintaan penawaran. Layanan ini juga Mendukung sebuah pertukaran transparansi suatu dokumen untuk memfasilitasi intergrasi bisnis.

Perbedaan antara Web Service dan Web Site

Pada web service, yaitu :

  1. Dibuat tidak memiliki Interface.
  2. Dibuat untuk digunakan untuk berinteraksi langsung dengan perangkat lunak yang lain walaupun platform dan bahasa pemograman yang berbeda.
  3. Dibuat untuk bekerja pada semua arsitektur perangkat lunak.

Pada Web Site, yaitu :

  1. Dibuat dengan memiliki suatu suatu interface yang baik.
  2. Dibuat untuk berinteraksi secara langsung dengan user.
  3. Dibuat bekerja pada web browser.

Baca Juga: Mengenal Application Programming Interface (API) secara lengkap

Tinggalkan komentar