Definisi Sistem Terdistribusi/Sistem Tersebar:
Sebuah sistem yg komponennya berada pd jaringan komputer. Komponen tsb saling berkomunikasi & melakukan koordinasi hanya dgn pengiriman pesan (message passing).
Contoh: Internet, intranet, mobile computing
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: jika terjadi kerusakan pada salah satu mesin, tidak akan
mempengaruhi kinerja system secara keseluruhan
Incremental Growth: mesin baru dapat ditambahkan jika kebutuhan proses meningkat
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
Karakteristik Sistem Terdistribusi :
1. No global clock
Terdapat batasan pada ketepatan proses sinkronisasi clock pada sistem terdistribusi, oleh karena asynchronous message passing
Pada sistem terdistribusi, tidak ada satu proses tunggal yang mengetahui global state sistem saat ini (disebabkan oleh concurrency dan message passing)
2. Independent failure
Kemungkinan adanya kegagalan proses tunggal yang tidak diketahui
Proses tunggal mungkin tidak peduli pada kegagalan sistem keseluruhan.
Setiap komponen/perangkat dapat mengalami kegagalan namun komponen/perangkat lain tetap berjalan dengan baik.
3. Concurrency of components
Pengaksesan suatu komponen/sumber daya (segala hal yang dapat digunakan bersama dalam jaringan komputer, meliputi H/W dan S/W) secara bersamaan. Contoh: Beberapa pemakai browser mengakses halaman web secara bersamaan.
Model Sistem Terdistribusi:
1. Sistem client – server
Merupakan bagian dari model sistem terdistribusi yang membagi jaringan berdasarkan pemberi dan penerima jasa layanan.
2. Sistem point to point
Merupakan bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server.
3. Sistem terkluster
Adalah gabungan dari beberapa sistem individual (komputer) yang dikumpulkan pada suatu lokasi, 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
Network – ketergantungan pada infrastruktur jaringan
Security – kemudahan akses ke data yang di share, memunculkan masalah keamanan
Tantangan Sistem Terdistribusi:
Heterogen terhadap:
- Infrastruktur jaringan
- Hardware dan software (sistem operasi, perbedaan UNIX socket dan Winsock)
- Bahasa pemrograman
Beberapa pendekatan :
Middleware (contoh : CORBA, JINI, DCOM, JavaRMI)
Mobile Program (contoh : JAVA)
Openness
Memastikan sistem dapat diperluas dan mudah dalam pemeliharaan, mengikuti standard antarmuka
Security
Privacy, Authentication, Availability
Scalability
Apakah sistem masih efektif dan handal dalam perkiraan pertumbuhannya?
Penanganan Kegagalan
-Pendeteksian
-Masking: transmisi ulang, redudansi penyimpanan data
-Toleransi: exception handling
-Redudancy: redudan rute jaringan, replikasi data pada beberapa mesin
Concurrency: penjadwalan yg konsisten terhadap concurrent thread, menghindari masaah deadlock dan lifelock
Transparency
Menyembunyikan keanekaragaman dan tersebarnya sistem sehingga tampak sebagai satu sistem bagi user.
Kategori transparency:
-Access: menyembunyikan penggunaan komunikasi untuk mengakses remote resource sehingga user beranggapan bahwa semua resource adalah lokal.
contoh: pemetaan drive menggnakan Samba Server, NFS
-Location: user tidak perlu mengetahui lokasi dari remote resource
-Concurrency: user tidak peduli paralel akses ke remote resource dan inkonsistensi dihindari dengan menggunakan mekanisme concurrency control.
-Replication: menyembunyikan perbedaan-perbedaan antara layanan replicated dan non-replicated.
-Failure: menyembunyikan pengaruh partial fail. Dapat diterapkan mekanisme recovery.
-Migration/Mobility: kemampuan untuk melakukan relocate resource secara dinamik tanpa kekhawatiran rekonfigurasi ulang dari user.
-Performance: meminimalkan tambahan performance menggunakan remote resource, sehingga response time dan throughput sebanding dengan ketika mengakses resource secara lokal.
-Scaling: menyembunyikan variasi dalam kelakuan sistem ketika dilakukan perubahan scope atau skala sistem. Skala biasanya diukur dalam hal kecepatan, size dan geographical scope.
Tidak ada komentar:
Posting Komentar