Monday, September 24, 2012

Sistem Terdistribusi (6)

TANTANGAN SISTEM TERDISTRIBUSI ..5


5. Failure Handling

Kadangkala komputer dapat mengalami kegagalan. Kegagalan bisa saja terjadi pada perangkat keras atau perangkat lunak, program mungkin saja memberikan hasil yang tidak tepat atau berhenti sebelum menyelesaikan proses komputasi.

Kegagalan yang terjadi pada sistem terdistribusi bersifat parsial (sebagian), sebagian komponen gagal sementara bagian komponen yang lain tetap berjalan. Mengatasi kegagalan dalam sistem terdistribusi bukanlah perkara mudah, beberapa hal yang dapat dilakukan untuk mengatasi kegagalan sistem :

a. Detecting Failure (Mendeteksi kegagalan)
Beberapa kegagalan dapat dideteksi dan banyak pula yang sulit/tidak ada kemungkinan untuk dideteksi. checksum dapat digunakan untuk mendeteksi kerusakan data pada pesan atau dalam sebuah file. 

b. Masking Failure (Menandai Kegagalan)
Beberapa kesalahan/kegagalan yang telah terdeteksi dapat disembunyikan atau dikurangi efek dari kegagalan tersebut, misalnya :

  • Pesan /fail dapat di kirim ulang (retransmitted) ketika gagal tiba ditujuan
  • Setiap paket yang dikirim melalui internet memiliki TTL (Time To Live), jika telah mencapai waktu TTL maka paket tersebut akan di-drop dalam jaringan.
c. Tolerating Failure (Mentoleransi Kegagalan)
Kebanyakan layanan diinternet memberikan indikasi ketika terjadi kegagalan, sangat tidak praktis bagi layanan tersebut untuk mendeteksi dan menutupi kegagalan yang terjadi pada sebuah jaringan internet skala besar dengan begitu banyak komponen. Aplikasi pada client juga didesain untuk mentoleransi kegagalan yang terjadi. Misalnya, ketika web server tidak bisa terkoneksi dengan web server, maka web browser tidak akan membuat pengguna untuk terus menunggu sampai terhubung dengan web server. Web browser akan menginformasikan kepada pengguna kegagalan yang terjadi dan meminta kepada pengguna untuk mencoba beberapa waktu kemudian.

d. Redundancy (Duplikasi/ganda)
Sebuah layanan dapat mengurangi resiko kegagalan dengan menerapkan beberapa redundancy pada komponen jaringan.

  1. Terdapat routing yang berbeda untuk satu tujuan pada dua buah router dalam jaringan.
  2. Dalam sistem nama domain (Domain name sistem), setiap daftar nama di replikasi pada minimal 2 buah server.
  3. Database direplikasi pada beberapa buah server untuk menghindari kegagalan sistem jika database pada server utama mengalami kegagalan.



---
Referensi
Distributed System Concept and Design; Coulouris,Dollimore, kindberg

No comments :

Post a Comment