A. DEFINISI SISTEM TERDISTRIBUSI
Sistem terdistribusi adalah suatu kesatuan dari elemen-elemen yang saling berinteraksi secara sistematis dan teratur untuk mendistribusikan data, informasi, obyek dan layanan dari dan kepada pengguna yang terkait didalamnya. Infrastruktur utama sistem terdistribusi adalah jaringan, hardware software dan pengguna yang terkait di dalamnya. 1 Dalam sistem terdistribusi terdapat pembagian pekerjaan antara elemen yang satu dengan elemen yang lain Sarana komunikasi antar elemen dijembatani dengan jaringan. Tata cara komunikasi antar elemen diatur dengan sebuah perjanjian sehingga terjadi komunikasi yang dapat dipahami antara masing masing elemen yang terlibat.
Sistem terdisitribusi melakukan pembagian pekerjaan antar elemen sehingga terjadi sebuah kinerja optimum dari sebuah sistem. Bagian terluar dari sistem ini yang berhubungan dengan pengguna akan disebut sebagai aplikasi client. aplikasi client merupakan front end yang berhubungan dengan pengguna sistem. Sedangkan dibelakangnya terdapat beberapa lapisan logik seperti presentation server, bussiness object server dan database server. Lapisan sistem yang berada di belakang front end tersembunyi dari pengguna, penyembunyiap (transparency) merupakan salah satu isyu penting dalam sebuah sistem terdistribusi. Gambaran arsitektur three tier yang dari aplikasi dengan front end yang diletakkan pada sebuah alat bergerak (mobile device) adalah sebagai berikut.
Sistem terdisitribusi dengan pemisahan aplikasi client yang berada di mesin (device) yang terpisah dari lapisan yang lain memungkinkan dibuat aplikasi yang terkonsentrasi memenuhi kebutuhan pemakai. Dengan demikian aplikasi tersebut dapat dibuat menjadi aplikasi yang kecil, kompak dengan tingkat portabilitas tinggi. Teknologi yang tersedia saat ini memungkinkan penggagas sistem untuk meletakkan aplikasi client ini pada alat alat mobile yang memiliki processor.2 Alat alat tersebut antara lain Handpone dan PDA yang saat ini banyak beredar di kalangan masyarakat.
B. 3 KARAKTERISTIK SISTEM TERDISTRIBUSI
- Konkurensi, yang dimaksud dengan konkurensi adalah sistem atau program yang berjalan bersama-sama, konkurensi pada sistem terdistribusi adalah suatu karakteristik yang dimiliki oleh sistem terdistribusi dimana sifatnya setiap komputer atau aplikasi dapat melakukan pekerjaan masing-masing tanpa terjadi konflik pada pekerjaannya.
- Tidak ada / Keterbatasan Global Clock, yaitu Setiap komputer memiliki clock yang berbeda dalam sistem terdistribusi. Agar tidak terjadi konflik maka diperlukan koordinasi agar tidak terjadi konflik clock antar komputer. Saat program membutuhkan koordinasi antar komputer, dilakukan proses pertukaran pesan antar komputer.
- Kegagalan Independent, yaitu: komputer atau sistem dapat mengalami kegagalan atau kerusakan akan sangat merepotkan apabila kerusakan pada 1 komputer atau 1 sistem akan mempengaruhi semua komputer/sistem. Oleh karena itu apabila terdapat komponen yang rusak atau gagal, kerusakan tidak meyebar ke komponen lainnya.
C. MODEL SISTEM TEDISTRIBUSI
- Model Arsitektur (Architectural Models)
- Model Interaksi (Interaction Models)
- Model Kegagalan (Failure Models)
- Model Tercluster
1. Model Arsitektur (Architectural Models)
Bagaimana cara kerja sistem terdisribusi antara komponen - komponen sistem dan bagaimana komponen tersebu berada pada sistem terdistribusi :
- Client - Server Model
- Proxy Server
- Peer processes ( peer to peer )
a) Sistem client - server
Merupakan bagian dari model sistem terdistribusi yang membagi jaringan berdasarkan pemberi dan penerima jasa layanan. Pada sebuah jaringan akan didapatkan: file server, time server, directory server, printer server, dan seterusnya.
b) 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, yang pertama dilakukan adalah memeriksa proxy server apakah yang dimita client terdapat pada proxy server. Proxy server dapat diletakkan pada setiap client dapat di pakai bersama oleh beberapa client. Tujuannya adalah meningkatkan performance dan availibity dengan mencegah frekwensi akses ke server. mengurangi load jaringan dengan menyediakan akses melalui firewall.
c) Sistem point to point
Merupakan bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server. 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
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.
2. Asynchronous Distributed System
Banyak sistem terdistribusi yang menggunakan model interaksi ini (termasuk Internet)
- Tidak ada batasan dalam waktu pengkeksekusian.
- Tidak ada batasan dalam delay transmission (penundaan pengiriman)
- Tidak ada batasan terhadap fluktuasi waktu local.
- Asynchronous system secara praktek lebih banyak digunakan
3. Model Kegagalan (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 kagagalan2 yang mungkin terjadi.
a. 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.
b. 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 atau megeluarkan hasil yang salah.
c. Timing Failures
Timing Failures dapat terjadi pada synchronous system, dimana batas waktu di atur untuk eksekusi proses, komunikasi dan ‡uktuasi waktu. Timing Failures terjadi apabila waktu yang telah ditentukan terlampaui.
4. Model 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). Sistem kluster memiliki persamaan dengan sistem paralel dalam hal menggabungkan beberapa CPU untuk meningkatkan kinerja komputasi. Jika salah satu mesin mengalami masalah dalam menjalankan tugas maka mesin lain dapat mengambil alih pelaksanaan tugas itu. Dengan demikian, sistem akan lebih handal dan fault tolerant dalam melakukan komputasi.
Dalam hal jaringan, sistem kluster mirip dengan sistem terdistribusi (distributed system). Bedanya, jika jaringan pada sistem terdistribusi melingkupi komputer-komputer yang lokasinya tersebar maka jaringan pada sistem kluster menghubungkan banyak komputer yang dikumpulkan dalam satu tempat.
D. TUJUAN SISTEM TERDISTRIBUSI
Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya.
Tujuan lain yang ingin dicapai dalam komputasi terdistribusi adalah transparansi. Kenyataan bahwa sumber daya yang dipakai oleh pengguna sistem terdistribusi berada pada lokasi fisik yang terpisah, tidak perlu diketahui oleh pengguna tersebut. Transparansi ini memungkinkan pengguna sistem terdistribusi untuk melihat sumber daya yang terpisah tersebut seolah-olah sebagai satu sistem komputer tunggal, seperti yang biasa digunakannya. Salah satu masalah yang dihadapi dalam usaha menyatukan sumber daya yang terpisah ini antara lain adalah skalabilitas, dapat atau tidaknya sistem tersebut dikembangkan lebih jauh untuk mencakup sumber daya komputasi yang lebih banyak.
referensi:
1 comments:
permisi gan, saya ada sedikit tulisan mengenai protokol WebSocket yang saya terapkan kedalam beberapa bahasa pemrograman berikut: http://datacomlink.blogspot.co.id/2015/11/implementasi-server-websocket-rfc-6455.html ditunggu feedbacknya gan, semoga menambah wawasan bersama, terima kasih gan.. :D
ReplyPost a Comment