Sabtu, 08 Juni 2013

Sistem Terdistribusi - Client Server 2


Sistem Terdistribusi - Client Server 2

Sistem Terdistribusi adalah Sekumpulan komputer otonom yang terhubung
ke suatu jaringan, dimana bagi pengguna sistem terlihat sebagai satu komputer.
Maksud komputer otonomi adalah walaupun komputer tidak terhubung
ke jaringan, komputer tersebut tetap data berjalan.
Dengan menjalankan sistem terdistribusi, komputer dapat melakukan :
  1. Koordinasi Aktifitas
  2. Berbagi sumber daya : hardware, software dan data
Dengan definisi tersebut diatas maka internet sesungguhnya bukanlah suatu
sistem terdistribusi, melainkan infrastruktur dimana sistem terdistribusi
dapat di aplikasikan pada jaringan tersebut.

Contoh :
1.  Sistem Telepon
- ISDN, PSTN
2.  Manajemen Jaringan
- Adminstrasi ke sumber jaringan

Gambar~1.1 : Contoh sistem terdistribusi, Automatic Banking (teller machine) System
3.  Network File System (NFS)
- Arsitektur untuk mengakses sistem file melalui jaringan
4.  WWW (World Wide Web)
- Arsitektur client/server yang diterapkan di atas infrastruktur internet
- Shared Resource (melalui URL)

Keuntungan Sistem Terdistribusi
Keuntungan yang didapatkan dalam menerapkan sistem terdistribusi, antara lain :
Performance : Kumpulan dari beberapa prosesor akan memberikan kinerja yang lebih baik dari pada komputer yang terpusat. Begitu juga kalau dilihat dari sisi biaya.-Distribution
Reliability (Fault tolerance) : apabila salah satu komponen terjadi kerusakan, sistem tetap dapat berjalan
Incremental Growth : Mudah dalam melakukan penambahan komputer/komponen
Sharing Data/Resources : Berbagi data adalah salah satu hal yang pokok pada kebanyakan aplikasi.

Permasalahan dalam Sistem Terdistribusi
Kelemahan pada sistem terdistribusi adalah :
- Kesulitan dalam membangun perangkat lunak . Kesulitan yang akan dihadapi antara lain : bahasa pemrograman yang harus dipakai, sistem operasi dll.
- Masalah Jaringan : Karena sistem terdistribusi di implementasikan dalam jaringan komputer,
maka isu2 yang berkaitan dengan jaringan komputer akan menjadi pertimbangan utama dalam merancang dan mengimplementasikan sistem.
- Masalah Keamanan : Karena pada sistem terdistribusi berbagi data/sumber daya merupakan hal yang mutlak, maka muncul masalah2 yang berkaitan dengan keamanan data dll.


Model dalam sistem terdistribusi :
- Model Arsitektur (Architectural Models)
- Model Interaksi (Interaction Models)
- Model Kegagalan (Failure Models)
Resources dalam sistem terdistribusi dipakai secara bersama oleh users. Biasanya di bungkus (encapsulated) dalam suatu komputer dan dapat diakses oleh komputer lain dengan komunikasi.

Setiap resource di atur oleh program yang disebut dengan resource manager. Resource manager memberikan kemungkinan komunikasi interface antar resource.
Resource Managers dapat digeneralisasi sebagai proses, kalau sistem di design dengan sudut pandang object (Object Oriented), resource dibungkus dalam suatu objek.
Architectural Models
Bagaimana cara kerja sistem terdisribusi antara komponen – komponen sistem dan bagaimana komponen tersebut berada pada sistem terdistribusi :
- Client – Server Model
- Proxy Server
- Peer processes ( peer to peer )
Client – Server Model
Sistem yang terdiri dari kumpulan – kumpulan  proses disebut dengan server, dan memberikan layanan kepada user yang disebut dengan client.
Model client-server biasanya berbasiskan protokol request/reply. Contoh implementasi nya, atara lain RPC (Remote Procedure Calling) dan RMI (Remote Method Invocation) :
- client mengirimkan request berupa pesan ke server untuk mengakses suatu service.
- server menerima pesan tersebut dan mengeksekusi request client dan mereply hasil ke client.



Proxy Server
Proxy server menyediakan hasil copy (replikasi) dari resource yang di atur oleh server lain.
Biasa nya proxy server di pakai untuk menyimpan hasil copy web resources. Ketika client melakukan request ke server, hal yang pertama dilakukanadalah memeriksa proxy server apakah yang dimita oleh client terdapatpada proxy server.
Proxy server dapat diletakkan pada setiap client atau dapat di pakaibersama oleh beberapa client. Tujuannya adalah meningkatkan performance dan availibity dengan mencegah frekwensi akses ke server.
Peer Process
Semua proses (object) mempunyai peran yang sama.
- Proses berinteraksi tanpa ada nya perbedaan antara client dan server.
- Pola komunikasi yang digunakan berdasarkan aplikasi yang digunakan.
- Merupakan model yang paling general dan fleksible.

Interaction Models
Untuk interaksi nya sistem terdistribusi dibagi menjadi dua bagian :
- Synchrounous distributed system
- Asynchronous distributed system
Synchronous Distributed System
Batas atas dan batas bawah waktu pengeksekusian dapat di set.
- Pesan yang dikirim di terima dalam waktu yang sudah di tentukan
- Fluktuasi ukuran antara waktu local berada dalam suatu batasan.
Beberapa hal yang penting untuk di perhatikan :
- Dalam synchronous distributed system terdapat satu waktu global.
- Hanya synchronous distributed system dapat memprediksi perilaku(waktu).
- Dalam synchornous distributed system dimungkinkan dan aman untuk menggunakan mekanisme timeout dalam mendekteksi error atau kegagalan dalam proses atau komunikasi.
Asynchronous Distributed System
Banyak sistem terdistribusi yang menggunakan model interaksi ini (termasuk Internet)
- Tidak ada batasan dalam waktu pengeksekusian.
- Tidak ada batasan dalam delay transmission (penundaan pengiriman)
- Tidak ada batasan terhadap fluktuasi waktu local.
Asynchronous system secara parktek lebih banyak digunakan.

Failure Models
Kegagalan apa saja yang dapat terjadi dan bagaimana efek yang ditimbulkan?
- Omission Faluires
- Arbitary Failures
- Timing Failures
Kegagalan dapat terjadi pada proses atau kanal komunikasi. Dan penyebabnya bisa berasal dari hardware ataupun software.
Model Kegagalan (Failure Models) dibutuhkan dalam membangun suatu sistem dengan prediksi terhadap kagagalan – kegagalan yang mungkin terjadi.
Ommision Failures
Yang dimaksud dengan Ommision Failures adalah ketika prosesor dan kanal komunikasi mengalami kegagalan untuk melakukan hal yang seharusnya dilakukan. Dikatakan tidak mempunyai ommision failures apabila :
- Terjadi keterlambatan (delayed) tetapi akhirnya tetap tereksekusi.
- Sebuah aksi di eksekusi walaupun terdapat kesalahan pada hasil.
Dengan synchronous system, ommision failures dapat dideteksi dengan timeouts. Kalau kita yakin bahwa pesan yang dikirim sampai, timeout akan mengindikasikan bahwa proses pengiriman rusak, seperti fail-stop behaviorpada sistem.
Arbitary Failures
Ini adalah kegagalan yang paling buruk dalam sistem. Tahapan proses atau komunikasi diabaikan atau yang tidak diharapkan terjadi dieksekusi. Sehingga hasil yang diharapkan tidak terjadi ataumegeluarkan hasil yang salah.
Timing Failures
Timing Failures dapat terjadi pada synchronous system, dimana batas waktu diatur untuk eksekusi proses, komunikasi dan fluktuasi waktu. Timing Failures terjadi apabila waktu yang telah ditentukan terlampaui.

Tidak ada komentar: