Professional Documents
Culture Documents
Kelompok2 - Web Services - PDT
Kelompok2 - Web Services - PDT
B_202131035_MUHAMMAD GAMAL
B_202131036_MUAMAR DWIHANGGORO
4. Ada penangan kesalahan bawaan di REST. Tidak ada penangan seperti itu di
SOAP.
Seperti yang terlihat pada gambar diatas, aplikasi Java, .net, dan PHP dapat
berkomunikasi dengan aplikasi lain melalui layanan web melalui jaringan.
Misalnya, aplikasi Java dapat berinteraksi dengan aplikasi Java, .Net, dan
PHP. Jadi layanan web adalah cara komunikasi bahasa yang independen.
B. WEB SERVICE INFRASTRUKTUR AND COMPONENTS :
1. Simple Object Access Protocol (SOAP)
Oleh : Siti Zahra Muliayanti
Pengertian SOAP
Kelebihan SOAP
Pesan SOAP didefinisikan pada level tinggi dalam XML (Extensible
Markup Language), tetapi sebagian besar aplikasi SOAP menggunakan
bahasa WSDL (Web Service Description Language), yang ditulis
dalam markup XML. Struktur XML dari SOAP membuatnya berguna
untuk aplikasi yang mengharapkan informasi mereka disediakan dalam
bentuk XML, dan fakta bahwa SOAP dapat menggunakan berbagai
protokol jaringan, termasuk HTTP, berarti dia dapat dengan mudah
melewati firewall, di mana protokol lain mungkin membutuhkan
akomodasi khusus.
Struktur data SOAP didasarkan pada XML, yang mirip dalam banyak
hal dengan HTML yang digunakan untuk mendefinisikan halaman
web. Seperti HTML, XLM sebagian besar dapat dibaca oleh manusia,
yang membuatnya cukup mudah untuk memahami pesan SOAP, tetapi
juga membuat pesan relatif besar dibandingkan dengan Common
Object Request Broker Architecture (CORBA) dan protokol Remote
Procedure Call (RPC) yang akan mengakomodasi data biner.
Terkait keamanannya, SOAP mendifinisikan keamanannya sendri yang
dikenal sebagai web service security.
SOAP juga terbilang independent dalam bahasa dan platform, layanan
web SOAP dapat ditulis dalam bahasa pemrograman apa pun dan
dieksekusi di platform apapun.
Kekurangan SOAP
Kerugian terbesar dari SOAP (dan SOA secara keseluruhan) adalah
bahwa itu adalah protokol kelas berat untuk arsitektur kelas berat.
Gagasan pesan yang melewati serangkaian node untuk diproses oleh
masing-masing tampaknya mencampur protokol dan model arsitektur
bus layanan untuk software (perangkat lunak), dan tidak satu pun dari
keduanya dianggap optimal untuk pengembangan berbasis layanan
mikro seperti yang populer digunakan saat ini.
Terkait speed, mereka juga terbilang lambat, SOAP menggunakan
format XML yang harus diuraikan untuk dibaca. Ini mendefinisikan
banyak standar yang harus diikuti saat mengembangkan aplikasi
SOAP. Jadi, SOAP dapat dikatakan lambat dan mengkonsumsi lebih
banyak bandwidth dan sumber daya.
Terkait speed, mereka juga terbilang lambat, SOAP menggunakan
format XML yang harus diuraikan untuk dibaca. Ini mendefinisikan
banyak standar yang harus diikuti saat mengembangkan aplikasi
SOAP. Jadi, SOAP dapat dikatakan lambat dan mengkonsumsi lebih
banyak bandwidth dan sumber daya.
Karena WSDL adalah mesin yang dapat dibaca (misalnya hanya file
XML), tool-tool dan infrastruktur dan dengan mudah dibuat seputar ini. Saat
ini pengembang-pngembang dapat definisi-definisi WSDL untuk membangun
kode yang tahu dengan tepat bagaimana berinteraksi dengan web service yang
menjabrkan. Pembangunan code tipe ini menyembunyikan detail-detail
membosankan yang terlibat pada pengiriman dan penrimaan pesan-
pesan SOAP pada protokol-protokol yang berbeda-beda dan
menyebabkan web service dapat dicapai oleh massa.
Element Deskripsi
Skema XML UDDI mendefinisikan empat tipe data inti untuk informasi
bisnis dan layanan yang masing-masing memiliki struktur data berbasis XML
yang berisi bidang wajib dan opsional. Keempat tipe data itu disebut
businessEntity, businessService, bindingTemplate, dan tModel.
Hal itu dapat digunakan untuk mewakili tiga jenis informasi yang terkandung
dalam tiga elemen UDDI. Ketiga elemen tersebut yaitu:
a) Halaman putih yang berisi informasi dasar tentang perusahaan dan bisnisnya.
Informasi tersebut dapat berupa alamat, nomor telepon, nama bisnis, NPWP
dan lainnya. Informasi ini penting bagi pihak lainnya yang ingin mengetahui
layanan web perusahaan berdasarkan identifikasi bisnis. Struktur
businessEntity digunakan untuk mewakili tingkat informasi ini.
b) Halaman kuning berisi rincian lebih lanjut tentang perusahaan. Pada halaman
ini digunakan skema kategorisasi industri yang diterima secara umum, kode
industri, kode produk, kode identifikasi bisnis dan sejenisnya untuk
memudahkan perusahaan mencari melalui daftar dan menemukan apa yang
mereka inginkan. Struktur businessService dirancang untuk mewakili tingkat
klasifikasi ini dan businessEntity dapat mereferensikan banyak struktu
businessService.
c) Halaman hijau berisi informasi teknis mengenai layanan web. Informasinya
dapat berupa lokasi URL, data terkait untuk menemukan dan menjalankan
layanan web, dan juga informasi yang tidak terkait secara langsung dengan
layanan web seperti telepon, email, dan file transfer protocol. Struktur
bindingTemplate dan tModel digunakan pada tingkat deskripsi layanan ini.
1) JAX-WS: JAX-WS adalah singkatan dari Java API untuk XML Web
Services. JAX-WS adalah Java API berbasis XML untuk membangun
server layanan web dan aplikasi klien.
2) JAX-RS: Java API for RESTful Web Services (JAX-RS) adalah Java API
untuk membuat layanan web REST. JAX-RS menggunakan anotasi untuk
menyederhanakan pengembangan dan penyebaran layanan web.
Kedua API ini adalah bagian dari instalasi JDK standar, jadi kita tidak
perlu menambahkan stoples apa pun untuk bekerja dengannya. Kedua API ini
sangat banyak menggunakan anotasi. Berikut contoh dari JAX-WS dan JAX-
RS:
Jersey adalah implementasi referensi dari JAX-RS API, itu bukan bagian dari
JDK standar dan kami harus menyertakan semua toples yang diperlukan. Cara
terbaik adalah dengan menggunakan Maven build, jadi buat proyek web
Dinamis sederhana dan kemudian ubah ke Maven di Eclipse. Ini adalah file
pom.xml terakhir yang memiliki dependensi yang diperlukan.
<project xmlns="https://maven.apache.org/POM/4.0.0"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>JAX-RS-HelloWorld</groupId>
<artifactId>JAX-RS-HelloWorld</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-servlet</artifactId>
<version>1.19</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.7</source>
C. APPLICATIONS OF WEB SERVICES : Service-Oriented Architecture, The
Grid Application & Cloud Computing
Tiga hal yang di-,sharing dalam sebuah sistem grid, antara lain : Resource,
Network dan Proses. Kegunaan / layanan dari sistem grid sendiri adalah untuk
melakukan high throughput computing dibidang penelitian, ataupun proses
komputasi lain yang memerlukan banyak resource komput
c) Cloud Computing
Sederhananya, cloud computing (komputasi awan) adalah metode
penyampaian berbagai layanan melalui internet. Sumber daya yang dimaksud
contohnya adalah aplikasi seperti penyimpanan data, server, database, jaringan,
dan perangkat lunak.
Daripada menyimpan banyak file di hard drive atau penyimpanan lokal di
komputer atau handphone, penyimpanan berbasis cloud memungkinkan Anda
menyimpan file selama Anda memiliki akses ke internet.
Cloud computing merupakan opsi yang populer karena memiliki banyak
keuntungan, seperti irit biaya, meningkatkan produktivitas, kecepatan, efisiensi,
performa, dan keamanan. Maka itu, tak heran banyak perusahaan atau orang-
orang yang menggunakan cloud untuk menyimpan data.
Setiap varian cloud computing memiliki dua faktor yang sama secara
umum, yakni data center yang berada di luar dan harus memiliki internet untuk
mengaksesnya. Sumber daya server dalam data center ini dikumpulkan untuk
membuat platform yang sangat besar agar siap menampung layanan virtual.
Sumber daya yang dikumpulkan ini diatur agar bisa fleksibel, sehingga
para penggunanya bisa mengakses lebih banyak ruang penyimpanan jika
diperlukan. Demikian pula dengan sumber daya yang sedang tidak digunakan, ini
akan dilepas kembali ke cloud jika memang sudah tidak lagi dibutuhkan.
D. CLOUD SERVICES : Software-As-A Service (Saas), Platform-As-Service
(Paas), Infrastructure-As-A-Service (Laas)
a) Software-As-A_Service (Saas)
Jenis layanan cloud yang paling dikenal
luas sebagai perangkat lunak layanan atau
Saas. Kategori luas sini mencakup berbagai
layanan, seperti penyimpanan dan
pencadangan file, email berbasis web, dan alat
manajemen proyek.
Contoh penyedia layanan cloud SaaS termasuk Dropbox, G Suite, Microsoft
Office 365, Slack, dan Kolaborasi Konten Citrix. Di setiap aplikasi ini, pengguna
dapat mengakses, membagikan, menyimpan, dan mengamankan informasi di
“cloud”.
b) Platform-As-Service (Paas)
Dirancang untuk memberikan akses ke komponen yang dibutuhkan untuk
mengembangkan dan mengoperasikan aplikasi web atau mobile dengan cepat
melalui Internet, tanpa khawatir tentang pengaturan atau pengelolaan
infrastruktur.
Contoh dari Paas yaitu Amazon Web Service, Microsoft Azure, Facebook dll.
PaaS memberikan kerangka kerja bagi pengembang yang dapat dibangun dan
digunakan untuk membuat aplikasi. Semua server, penyimpanan, dan jaringan
dapat dikelola oleh Anda. Jadi, Anda hanya perlu mengunduh aplikasi dan
mengelola aplikasi serta datanya saja.
c) Infrastructure-As-A-Service (Laas)
Infrastruktur sebagai layanan, atau IaaS, menyediakan infrastruktur yang
dibutuhkan banyak penyedia layanan cloud untuk mengelola alat SaaS — tetapi
tidak ingin memeliharanya sendiri. Ini berfungsi sebagai kerangka kerja pusat data
lengkap, menghilangkan kebutuhan untuk penginstalan di tempat yang intensif
sumber daya.
Contoh IaaS adalah Amazon Web
Services (AWS), Microsoft
Azure dan Google Compute
Engine. Penyedia ini memelihara
semua server penyimpanan dan
perangkat keras jaringan, dan mungkin juga menawarkan penyeimbangan beban,
firewall aplikasi, dan lainnya. Banyak penyedia SaaS terkenal berjalan di platform
IaaS.
Perbedaan Antara Software-As-A Service (Saas), Platform-As-Service (Paas),
Infrastructure-As-A-Service (Laas)
Perbedaannya, Iaas terfokuskan pada layanan infrastruktur pembangun
teknologi informasi, Paas memberikan kebutuhan dalam pengembangan aplikasi pada
platform dan Saas lebih pada pengelolaan aplikasi yang dapat di oprasikan melalui
peramban web, mereka bertiga adalah layanan awan yang cukup solid jika
dikombinasikan.
PERTANYAAN & JAWABAN
2. Bahas pemograman apa aja yang bisa di gunakan di SOAP? (Fahreza Rianda)
Jawaban : (Muhammad Gamal)
Untuk bahasa pemrograman yaitu terdiri dari :
1. HTML (Hypertext Markup Language)
2. JavaScript
3. PHP (Hypertext Preprocessor)
4. ASP (Aktive Server Pages)
5. XML (Extensible Markup Language)
6. WML (Wireless Markup Language)
7. CSS (Cascading Style Sheets)
8. Ajax (Asynchronous Javascript and XML)
3. Bagaimana jika WSDL tidak terkombinasi dengan SOAP dan XML? (Nursalsabila Ali)
Jawaban : (Muhammad Gamal)
Jika WSDL, SOAP dan XML tidak terkombinasi maka yang terjadi adalah
penyediaan layanan web yang ada tidak dapat terbaca oleh program client.
Program Client tidak dapat terhubung kelayanan web dan tidak dapat dibaca
oleh server yang ada.
4. Apa kaitan nya web service dengan SOAP? (Muhammad Abdullah Nurhidayah)
Jawaban : (Muamar Dwihanggoro)
Web service adalah sebuah sistem yang bekerja dengan sebuah cara kerja yang
terintegrasi, ada beberapa teknologi pendukung yang ada di dalam teknologi
ini, salah satunya adalah SOAP (Simple Object Access Protocol). SOAP
merupakan sebuah sepsifikasi protocol untuk pertukaran pesan atau informasi
terstruktur dalam implementasi Web Service di jaringan computer.
8. Operating system apa saja yang sering digunakan untuk Cloud Server? (reza)
Jawaban : (Muhammad Gamal)
OS yang sering digunakan untuk Cloud Server yaitu :
1. Ubuntu Server
2. Debian Server
3. Fedora Server
4. Opensuse server
5. Microsoft windows server, dll