UTS Sistem Terdistribusi - Universitas Gunadarma ATA 2020/2021
1. Jelaskan apa yang dimaksud dengan sistem terdistribusi dan mengapa konsep sistem terdistribusi diperlukan.
Sistem
Terdistribusi adalah Sebuah sistem yg komponennya berada pada jaringan
komputer. Komponen tersebut saling berkomunikasi dan melakukan
koordinasi hanya dgn pengiriman pesan (message passing).
Mengapa konsep sistem terdistribusi diperlukan
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
2. Sebutkan dan jelaskan konsep transparansi dalam sebuah sistem terdistribusi.
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 samasama menggunakan suatu resource tanpa saling
interferensi. Bagaimana jika beberapa pemakai secara bersamaan akan
mengubah suatu berkas ?
• Replication Transparency : Pemakai
maupun pemrogram aplikasi tidak perlu mengetahui adanya replikasi
resource, yang dapat meningkatkan kehandalan dan unjuk kerja
• 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
3. Sebutkan dan jelaskan 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
3. Concurrency of components
- E.g. Beberapa pemakai browser mengakses suatu halaman web secara bersamaan.
- Bagaimana jika ada operasi update?
4. Berikan satu contoh sistem terdistribusi dan jelaskan.
Contoh sistem terdistribusi : Intranet
● Jaringan yang teradministrasi secara lokal
● Biasanya proprietary
● Terhubung ke internet (melalui firewall)
● Menyediakan layanan internal dan eksternal
5. Jelaskan apa yang dimaksud dengan Remote Procedure Call (RPC) dan Remote Method Invocation (RMI).
Remote Procedure Call (RPC) adalah
sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur
yang berada di komputer lain. Untuk dapat melakukan ini sebuah server
harus menyediakan layanan remote procedure. Pendekatan yang dilakuan
adalah sebuah server membuka socket, lalu menunggu client yang meminta
prosedur yang disediakan oleh server. Bila client tidak tahu
harus menghubungi port yang mana, client bisa me-request kepada sebuah
matchmaker pada sebuah RPC port yang tetap. Matchmaker akan memberikan
port apa yang digunakan oleh prosedur yang diminta client.
Remote Method Invocation (RMI) adalah
sebuah teknik pemanggilan method remote yang lebih secara umum lebih
baik daripada RPC. RMI menggunakan paradigma pemrograman berorientasi
obyek (Object Oriented Programming). 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.