Definisi
• Sebuah sistem yg komponennya berada pd jaringan komputer. Komponen tsb saling berkomunikasi & melakukan koordinasi hanya dgn pengiriman pesan (message passing).
• Software Sistem Terdistribusi dapat mengkoordinir aktivitas masing-masing komputer dan melakukan pertukaran sumber daya sistem H/W, S/W dan data
• Pengguna sistem terdistribusi dapat merasakan sebuah fasilitas komputer yang terpadu meskipun sebenarnya terdiri dari banyak komputer yang berada di lokasi yang berbeda secara geografis
Contoh Sistem Terdistribusi :
1. Aplikasi WEB (Client Server)
i. Finance and commerce [Amazon, ebay, paypal…]
ii. The information society [Google, Yahoo, wikipedia, youtube ..]
iii. Education [Elearning]
iv. Transport and logistics [GPS, google map, Gearth..]
v. Science [ Paralel/Grid Computing]
2. Mobile worker system
3. Data Sharing / Cloud Storage
4. Multiplayer online games
5. ATM Machine
Keuntungan Distributed System daripada Centralized System
• Ekonomi – Sist.Terdistribusi/Parallel lebih murah daripada Centralized System
• Reliability (Ketersediaan) – system backup, jika terdapat server yang mati maka otomatis akan terbackup.
• Pengembangan yang lebih mudah – penambahan kecepatan server dapat dilakukan dengan sistem paralel, pada sistem terpusat pengembangan sistem harus dengan menambah HPC/mainframe.
• Kecepatan – Kecepatan pada sistem trdistribusi/paralel lebih tinggi daripada maiFrame [HPC]
Kelemahan Sistem Terdistribusi :
●Software – Jumlah software yang mendukung Sist.Terdistribusi masih terbatas dan belum familiar untuk digunakan.
●Network – permasalahan pada jaringan dapat mengganggu sistem terdistribusi yang berjalan.
●Security – Celah untuk mengakses data yang bersifat rahasia
Mengapa diperlukan Sistem Terdistribusi?
• Performance Sekumpulan prosesor dapat menyediakan kinerja yang lebih tinggi daripada komputer yang terpusat
• Distribution Banyak aplikasi yang terlibat, sehingga lebih baik jika Dipisah dalam mesin yang berbeda (contoh: aplikasi perbankan, komersial)
• Reliability Jikaterjadi kerusakan pada salah satu mesin, tidak akan mempengaruhi kinerja system secara keseluruhan
• Incremental Growth Mesinbaru dapat ditambahkan jika kebutuhan proses meningkat
Mengapa diperlukan Sistem Terdistribusi?
• Sharing Data/Resource Resource adalah:
– Segala hal yang dapat digunakan bersama dalam jaringan komputer.
– Meliputi hardware (e.g. disk, printer, scanner), juga software (berkas, basis data, obyek data).
• Communication Menyediakan fasilitas komunikasi antar manusia
Model Sistem Terdistribusi
1. Sistem client – server Merupakan bagian dari model sistem terdistribusi yang membagijaringan berdasarkan pemberi dan penerima jasa layanan.
2. Sistem point to point Merupakan bagian dari model sistem terdistribusi dimana sistemdapat sekaligus berfungsi sebagai client maupun server.
3. Sistem terkluster Adalah gabungan dari beberapa sistem individual (komputer) yang dikumpulkan pada suatulokasi, saling berbagi tempat penyimpanan data (storage), dan saling terhubung dalam jaringan lokal (Local Area Network).
Permasalahan sistem terdistribusi
Masalah dengan sistem terdistribusi yang dapat dimunculkan antara lain berkaitan dengan :
• Software – bagaimana merancang dan mengatur software dalam Distribusi Sistem
• Ketergantungan pada infrastruktur jaringan
• Kemudahan akses ke data yang di share, memunculkan masalah keamanan
Tantangan dalam perancangan dan penerapan Sistem Terdistribusi
Karakteristik sistem terdistribusi
–Keheterogenan komponen (heterogenity)
–Keterbukaan (openness)
–Keamanan (Security)
–Scalability
–Penanganan kegagalan (failure handling)
–Concurency of component
–Transparansi
1. Keheterogenan
• Suatu sistem terdistribusi dapat dibangun dari berbagai network, operating system, hardware dan programming language yang berbeda.
• IP dapat digunakan untuk mengatasi perbedaan jaringan.
• Middleware mengatasi perbedaan lainnya.
2. Keterbukaan
• Setiap komponen memiliki antarmuka (interface), yg dipublish ke komponen lain.
• Perlu integrasi berbagai komponen yang dibuat oleh programmer atau vendor yg berbeda.
3. Keamanan
– Shared resources & transmisi informasi rahasia perlu dilengkapi dengan enkripsi
. – Cegah denial of service.
4.Scalability
Penambahan pemakai membutuhkan penambahan resource yang konstan.
Cegah bottleneck.
5. Penanganan Kegagalan
proses (komputer atau jaringan) dapat mengalami kegagalan secara independen.
Komponen lain harus tetap berjalan dengan baik.
E.g. failed branch in a distributed banking system
6. Concurency
Multiple users with concurrent requests to a shared resources.
Setiap resource harus aman di lingkungan tersebut di atas.
7. Transparansi
Transparan: bagi pemakai, keberadaan beberapa komponen tampak sebagai satu sistem saja.
–Access transparency: Local & remote resources dapat diakses dengan operasi yang sama.
–Location transparency:
» Resource dapat diakses tanpa tahu di mana lokasinya.
» Bagaimana pendapat Anda mengenai hyperlink & URL?
–Concurrency transparency:
» Beberapa proses dapat sama-sama menggunakan suatu resource tanpa saling interferensi.
» Bagaimana jika beberapa pemakai secara bersamaan akan mengubah suatu berkas?
Failure transparency:
Pemakai dan pemrogram aplikasi dapat menyelesaikan tugasnya walaupun ada kegagalan hardware atau software.
Mobility transparency:
Resource dan klien dapat berpindah tanpa mempengaruhi operasi pemakai atau program.
Performance transparency:
Sistem dapat dikonfigurasi ulang untuk meningkatkan unjuk kerja, sejalan dengan perubahan beban sistem.
Scaling transparency:
Sistem dan aplikasi mudah bertambah luas tanpa perubahan struktur sistem dan algoritma aplikasi.