Anda di halaman 1dari 7

Chapter 1 - Karakteristik Sistem Terdistribusi

Sistem Terdistribusi : Sistem yang komponennya terletak pada jaringan komputer yang dikendalikan lewat
pesan
Contoh umum Sister :
- Search Engine (Google : Storage System, Physical System yang saling terdistribusi satu sama lain)
- Internet
- Intranet : Bagian dari internet yang dikelola Organisasi
- Mobile and Ubiquitous computing
- Financial Trading (Monitoring otomatis dan trading app)
3 Teknologi WWW :
- HTML(HyperText Markup Language) : Bahasa Layout Web Browser
- URL(Uniform Resource Locator) : Identitas untuk sebuah web
- HTTP(HyperText Transfer Protocol) : Protokol interaksi Browser dan Server
Contoh Sister pada domain tertentu :
- Finance and commerce : Amazon and eBay, PayPal
- The information society : Facebook
- Creative industries and entertainment : Youtube
- Healthcare : Riwayat Pasien
- Education : E-learning
- Transport and logistics : Google Earth
- Science : Aplikasi kolaborasi antar Scientist
- Environmental managemen : Sensor gempa
Karakteristik Sister :
- Heterogenitas
- Harus ada Middleware
- Mobile Code(dipake dimana-mana bisa)
- Keterbukaan(Tersedia bagi client)
kemampuan sebuah sistem dalam mengembangkan fleksibilitas terhadap peningkatan kinerja sebuah
sistem. Seperti penambahan module baru dan ketersediaan extension / plugin yang dapat terkoneksi
dengan sistem lain. Contoh: sebuah aplikasi web banking yang dapat terhubung dengan sistem web milik
perusahaan finance.
- Keamanan
- Scalability(Bisa ditambah/dikurang)
Sebuah sistem terdistribusi harus dapat ditingkatkan kinerjanya tanpa mengubah komponen-komponen
di dalamnya.
Contoh : sebuah aplikasi web yang digunakan oleh user yang terlalu banyak. Maka untuk meningkatkan
kinerja dari web tersebut agar tidak terjadi overload atau system down maka perlu dilakukan upgrade
processor dan ram. Dalam proses upgrading tersebut, komponen dalam web tidak perlu diubah.
- Rencana terhadap kegagalan
- Konkurensi(Berjalan bersamaan)
Semua proses dalam sistem terdistribusi dilakukan secara concurrency (secara bersama-sama). Hal ini
dilakukan untuk mencegah inkonsistensi dan ketidakvalidan sebuah data dan proses.
Contoh: dalam sebuah aplikasi web yang diakses oleh banyak user. Ketika server melakukan sebuah
update. Maka semua user yang mengakses halaman web tersebut akan langsung mendapatkan update
terbaru tersebut.
- Transparansi (Ada 8 : Transparansi Akses, Lokasi, Konkurensi, Replikasi, Kegagalan, Mobilitas,
Performa, Skala)

Dynamic HTML, bukan bahasa pemrograman, merupkan suatu istilah untuk membuat halaman web yang
dinamis dan interaktif dengan mengkombinasikan bahasa markah HTML, JavaScript, Document Object Model,
dan CSS.
CGI(Computer-Generated Imagery) yaitu pencitraan yang dihasilkan komputer adalah penggunaan grafik
komputer untuk menghasilkan efek yang spesial
AJAX(Asynchronous JavaScript and XML HTTP) adalah suatu teknik pemrograman berbasis web untuk
menciptakan aplikasi web interaktif.
RDF(Resource Development Framework) adalah framework yang mendefinisikan resource di dalam web
RSS(Really Simple Sindicatio) yakni satu sistem yang digunakan untuk mendapatkan update terbaru dari situs-
situs favorit secara otomatis

Chapter 2 - Network & Architecture


Arsitektur dalam sistem terdistribusi:
1.Arsitektur berbasis layer
Komponen disusun berlapis. Sistemnya aliran permintaan akan turun dari layer per layer sedangkan untuk
responnya akan mengalir ke atas.
2.Arsitektur berbasis objek
Setiap objek dihubungkan melalui remote method call (RPC).
3.Arsitektur berbasis share data
sebuah proses berkomunikasi melalui repositori. Sebagian besar bersifat data-sentris.
4.Arsitektur berbasis event
server memproses publish event, middleware memastikan bahwa hanya proses berlangganan yang akan
menerima event.

Ada tiga pandangan terhadap arsitektur sistem:


1) Arsitektur Terpusat
2) Arsitektur Multitier
Two Tier:
Hanya terdiri dari 2 layer/ 2 tier komponen yang saling berkaitan, yaitu sistem user interface dan server
manajemen database. Server database manangani Manajemen data, Keamanan, Query, trigger, dan Penangan
kesalahan
Kelebihan dari model client/server :
- Menangani Database Server secara khusus
- Relatif lebih sederhana untuk di develop dan diimplementasikan.
- Lebih cocok diterapkan untuk bisnis kecil.
Kekurangan dari model client/server :
- Kurangnya skalabilitas
- Tidak ada keterbaharuan kode
- keamanan kurang

Three Tier:
Ada 3 lapisan:
- Komponen client>> komponen yang berjalan diatas local komputer user
- Server>> sebagai koneksi antara klien dengan database system.
- aplikasi RDBMS >> berisi kumpulan database dan data resource manager yang merupakan pusat
database suatu sistem.
Keuntungan:
- Skalabilitas besar
- transfer informasi antara web server dan server database optimal
- Kemungkinkan pula middle tier ke platform yang berbeda
- tidak akan menyebabkan lapisan lain terkontaminasi salah jika salah satu lapisan terdapat keslahan
Kekurangan arsitekture Three Tier :
- Lebih susah untuk merancang
- Lebih susah untuk mengatur
- Lebih mahal

3) Arsitektur Terdistribusi
Di arsitektur modern (Horizontal Distribution), Client dan server dapat dipecah secara fisik ke bagian yang equivalen
namun bekerja pada dataset sendiri dan menyeimbangkan bebannya. Sistem terdistribusi yang mendukung horizontal
distribution adalah P2P. Peer to peer merupakan salah satu model jaringan komputer yang terdiri dari dua atau beberapa
komputer, dimana setiap station atau komputer yang terdapat di dalam lingkungan jaringan tersebut bisa saling berbagi.
Macamnya:
a. Structured P2P: node disusun mengikuti struktur data terdistribusi tertentu (yaitu pohon, cincin, hierarki, dll)
b. Unstructured P2P: node memiliki tetangga yang dipilih secara acak

Arsitektur Hybrid: Gabungan dari client-server dan peer-to-peer. Egde-Server contohnya adalah ISP karena ISP
menyediakan batasan dalam melakukan akses internet. Edge server bertujuan untuk menyediakan konten, filtering dan
transcoding. Colaborative contohnya Torrent.

ARSITEKTUR VS MIDDLEWARE
Middleware :
software penghubung yang berisi sekumpulan layanan yang memungkinkan beberapa proses dapat berjalan pada
satu atau lebih mesin untuk saling berinteraksi pada suatu jaringan. Tujuan penting adalah untuk memberikan tingkat
transparansi distribusi.
Sistem middleware sebenarnya mengikuti gaya arsitektural CORBA OOP dan TIB / Rendezvous middleware.
Keuntungan: Memiliki middleware yang dicetak sesuai dengan gaya arsitektur tertentu memiliki manfaat untuk
merancang aplikasi menjadi lebih sederhana.
Kelemahan: middleware mungkin tidak lagi optimal untuk diketahui oleh pengembang aplikasi.
Solusi : Menggunakan Interceptors and Adaptive Software.
Interceptor : memanggil fungsional dari objek lain yang memiliki interface yang sama
Ada tiga teknik dasar adaptve software:
Separation of concerns : memisahkan bagian/modul yang mengimplementasikan fungsionalitas tertentu
sehingga berdiri independen. Namun sayang, independensi tidak bisa dilakukan dengan sembarang dan ada
fungsi yang tidak bisa dipisahkan
Computational reflection : kemampuan program untuk menginspeksi dirinya sendiri sebelum mengaplikasikan
teknik reflektif di sistem terdistribusi
Component-based design : desain yang bergantung pada komponen untuk menentukan komponen terbaik dan
adaptasi antar komponen yang dapat digunakan pada sistem

Chapter 3 -
Komponen jaringan
- Media transmisi, mis. kawat, kabel, serat, saluran nirkabel
- Perangkat keras, mis. router, switch, jembatan, hub, antarmuka jaringan
- Komponen perangkat lunak, mis. protokol, driver
Subsistem komunikasi: kumpulan komponen perangkat keras dan perangkat lunak untuk menyediakan fasilitas
komunikasi.

Node: komputer (host) atau perangkat switching


Subnet: satu set node yang saling berhubungan, yang semuanya menggunakan teknologi yang sama untuk
berkomunikasi di antara mereka sendiri

Masalah jaringan untuk sistem terdistribusi


1. Performa
- Latency adalah delay yang terjadi untuk menyiapkan transmisi
- Transfer rate banyaknya data yang ditransmisikan per satuan waktu / bandwidth
- Transmision time adalah jumlah waktu latency dengan transfer rate
2. Scalability,
3. Reliability
4. Security,
5. Mobility
6. Quality of Service (QoS)
7. Multicasting

Tipe Jaringan
- Personal Area Network (PAN)
Wireless PAN
- Local Area Networks (LANs)
Media : UTP, Coaxial cable, Fiber, Wireless
Ethernet, 10Mbps, 100Mbps, 1000Mbps
- Wide Area Networks (WANs)
Large distance, need routers latency can be 0.1 to 0.5 seconds, speeds upto 1 - 10Mbps
- Metropolitan Area Networks (MANs), DSL >> ATM switches, DSL limited 5,5 km
VDSL, VDSL2. upto 100 Mbps for HDTV
Cable modem, 15 Mbps, distance up to 50 km
- Wireless Networks
- Wireless MAN
- Wireless WAN
- Internetworks : sebuah subsistem komunikasi di mana beberapa jaringan saling terhubung internet

Prinsip Jaringan
a. Packet Transmission:
Paket yang terdiri dari serangkaian simbol ditransmisikan melalui saluran.
Data dibagi bagi menjadi paket paket, yang membatasi protokolnya.
Kenapa di segmentasi? Agar tidak terjadi monopoli jaringan 1 komputer/ antar komputer lain.
Diperlukan addressing agar disisi penerima dapat diidentifikasi.
Jumlah paket tergantung besar data yang dikirimkan.
b. Data Streaming: distribusi data audio, video dan multimedia secara Real Time melalui Internet
Need guaranteed quality of service bandwidth, latency, reliability, e.g. ATM networks
Resource Reservation Protocol(RSVP), 1993
Real-Time Transport Protocol (RTP), 1996
C. Protokol
Protocol suites: gabungan TCP & IP yang menyediakan layanan komunikasi jaringan.
Packet Assembly & Delivery: pesan dibagi jadi beberapa paket dan tidak ada re-transmisi data.

Chapter 4 - Indirect Communication

Chapter 5 - Communication
PDF Chapter 05 - Remote Invocation
Model Pemrograman untuk Aplikasi Terdistribusi
1. Remote Procedure Call (RPC)
Memungkinkan program client memanggil prosedur dalam program server yang berjalan dalam proses terpisah dan
umumnya di komputer yang berbeda dari klien.
2. Metode Remote Method Invocation (RMI)
Memungkinkan sebuah objek hidup dalam satu proses untuk memanggil metode objek yang hidup dalam proses
lain.
3. Model Pemrograman Berbasis Event
Memungkinkan objek untuk menerima pemberitahuan kejadian dari objek lain di mana mereka memiliki kepentingan
yang telah terdaftar.

Middleware
1. Perangkat lunak yang menyediakan model pemrograman di atas blok bangunan dasar proses dan pesan yang
lewat.
2. Lapisan middleware.

3. Transparansi lokasi
4. Terlepas dari detail protokol komunikasi
5. Menyembunyikan perbedaan arsitektur perangkat keras
6. Terlepas dari sistem operasi yang mendasarinya
7. Memungkinkan aplikasi terdistribusi untuk menggunakan lebih dari satu bahasa pemrograman

Komunikasi dalam Sistem Terdistribusi


1. Protokol Request-Reply
a. Bekerja di atas pesan yang lewat
b. Berikan dukungan tingkat rendah untuk meminta eksekusi operasi jarak jauh
2. Remote Procedure Call
a. Model programmer-friendly paling awal
b. Perpanjangan model panggilan prosedur konvensional
3. Remote Method Invocation
a. Model OOP untuk sistem terdistribusi
b. Hal ini memungkinkan sebuah proses dalam sebuah objek untuk memanggil metode remote pada objek lain

PPT Chapter 05 - Java Remote Method Invocation


RMI adalah sebuah teknik pemanggilan method remote yang secara umum lebih baik dari RPC. RMI
menggunakan paradigma pemrograman berorientasi obyek. RMI memungkinkan kita untuk mengirim obyek sebagai
parameter dari remote method. Dengan dibolehkannya program Java memanggil method pada remote obyek, RMI
membuat pengguna dapat mengembangkan aplikasi Java yang terdistribusi pada jaringan.
Ilutrasi RMI

CORBA (Common Object Request Broker Architecture) merupakan TEKNOLOGI SELAIN RMI.
- Mendukung transmisi Object antar bahasa pemrograman secara virtual
- Object harus di deksripsikan dalam IDL (Interface Definition Language), yang mirip dengan definisi yang dimiliki
oleh C++
- CORBA bersifat rumit dan tidak dapat diandalkan
- CORBA sudah jarang digunakan lagi.
- Microsoft pernah mensupport CORBA, sebelum beralih ke COM, dan sekarang .NET

Chapter 6 - Distributed Web-Based System


WWW = client-server system super besar. Setiap server men-hyperlink ribuan documen.
Documen sering kali di sajikan dalam bentuk teks (HTML, XML)
Alternatif lain: gambar, audio, video, aplikasi (PDF,PS)
Dokumen bisa saja mengandung script, yang dikendalikan sofware dari pihak lain.
Apache Web server : Apache adalah sebuah nama web server yang bertanggung jawab pada request-response
HTTP dan logging informasi secara detail(kegunaan basicnya). Lebih dari 52% dari 185 juta website merupakan
apache
Server Cluster : Server Clustering adalah menggunakan lebih dari satu server yang menyediakan redundant
interconnections, sehingga user hanya mengetahui ada satu sistem server yang tersedia dan komputer client
tidak menyadari jika terjadi kegagalan pada sistem server karena tersedianya server sebagai redundant atau
backup.
Front end bisa dengan mudah overload. Jadi ada tindakan yg harus dilakukan
Transport-layer switch : Front end dapat melewati request TCP ke salah satu server, mengambil
beberapa metrik kerja ke dalam akun.
Content aware distribution : front end membaca kontent dari HTTP request kemudian memilih server
terbaik.
Komunikasi WEB umumnya berdasar pada HTTP.
Ada banyak client-server transfer protokol request message.
SOAP (Simple Object Access Protocol) = Standar protokol untuk komunikasi antar web servis berdasar pada
XML.
SOAP terikat pada protokol yang mendasarinya
Conversational exchange style: Kirimkan dokumen satu arah, dapatkan respon sesuai.
RPC-style exchange : Untuk meminta layanan Web.
XML memiliki keuntungan untuk memungkinkan dokumen yang menggambarkan dirinya sendiri.
Full stop: ini memperkenalkan masalah kinerja dan tidak dimaksudkan untuk dibaca oleh manusia
Sinkronisasi WebDAV: Ada kebutuhan untuk melakukan audit dokumen Web secara kolaboratif, tapi HTTP saja
tidak dapat membantu disini, maka solusinya adalah Web Distributed Authorind and Versioning.
Mendukung kunci tertulis eksklusif, yang beroperasi pada keseluruhan dokumen
Kunci dilewatkan melalui token kunci; server mendaftarkan klien yang memegang kunci
Klien memodifikasi dokumen secara lokal dan mengirimkannya kembali ke server beserta token kunci
Web Proxy Caching
Situs memasang server proxy terpisah yang menangani semua permintaan keluar. Proxy kemudian menyimpan
dokumen masuk. Cache-consistency protocolsl:
Selalu verifikasi validitas dengan menghubungi server
Konsistensi berbasis umur:

BOLEH DILANJUT :)

Anda mungkin juga menyukai