A. Sistem Terdistribusi
Hampir semua sistem berbasis computer yang besar saat ini merupakan sistem terdistribusi ( sistem tersebar). Sitem terdistribusi adalah sistem dimana pemrosesan informasi didistribusikan pada beberapa computer dan tidak terbatas hanya pada satu mesin aja. Jelas rekayasa terdistribusi memiliki banyak kesamaan dengan rekayasa perangkat luna lainnya tetapi ada isu-isu khusus yang harus diperhitungkan ketika merancang tipe sistem ini. Perekayasa perangkat lunak harus menyadari dan memperhitungkan karena Sitem terdistribusi ini banyak digunakan. Belum lama ini kebanyakan sistem besar masih menggunakan sistem sentral yang berjalan pada satu mainframe dengan terminal-terminal yang terhubung kepadanya. Sistem tersebut bayak kelemahannya dimana terminal-terminal hanya sedikit kemampuan pemrosesannya dan semua tergantung pada computer sentral.
Sampai saai ini ada tipe sistem yang utama yaitu:
- Sistem Personal yang tidak terditribusi dan dirancang untuk satu workstation saja.
- Sistem Embedded yang bejalan pada satu prosessor atau pada kelompok prosessor
yang terintegrasi.
- Sistem Terdistribusi dimana perangkat lunak sistem berjalan pada kelompok
prosessor yang bekerja sama dan terintegrasi secara longgar, dengan dihubungkan
oleh jaringan. Contohnya sistem ATM bank, sistem groupware, dll.
Menurut Coulouris et.al (1994) mengidentifikasi enam karakteristik yang penting untuk
sistem terdistribusi yaitu:
1. Pemakain bersama sumber daya
2. Keterbukaan. Keterbukaan sistem adalah terbuka untuk banyak sistem operasi dan
banyak vendor.
3. Konkurensi. Sitem terdistribusi memungkinkan beberapa proses dapat beroperasi pada saat yang sama pada berbagai computer di jaringan. Proses ini dapat ( tapi tidak perlu) berkomunikasi satu dengan lainnya pada saat operasi normalnya.
4. Skalabilitas. Sitem terdistribusi dapat diskala dengan menguprade atau menambahkan sumber daya baru untuk memenuhi kebutuhan sistem.
5. Toleransi kkesalahan. Sitem terdistribusi bersifat toleran terhadap beberapa kegagalan perangkat keras dan lunak dan layanan terdegradasi dapat diberikan ketika terjadi kegagalan.
6. Transparansi. Sitem terdistribusi adalah bersifat terbuka bagi user.
Selain hal-hal tersebut ada juga kelemaham dari Sistem terdistribusi yaitu:
* Kompleksitas. Sistem terdistribusi bersigat lebih kompleks daripada sistem sentral
* Keamanan. Sistem terdistribusi dapat diakses dari beberapa computer dan jalur jaringan mudah disadap, sehingga keamanan jarinagan sistem terdistribusi menjadi masalah yang besar.
* Kemampuan untuk dikendalikan. Komputer yang terdapat di sistem terdistribusi bisa terdiri dari berbagai tipe yang berbeda dan mungkin dijalankan pada sistem operasi yang berbeda pula. Kesalahan pada satu mesin bisa berakibat pada yang lainnya. Sehingga harus banyak usaha untuk mengendalikannya.
* Tidak dapat diramalkan. Sistem terdistribusi tidak dpat diramalkan tanggapannya. Tanggapan tergantung beban total sistem, pengorganisasian, dan beban jaringannya.
Ada dua tipe generic arsitektur sistem terdistribusi adalah :
Arsitektur Client Server.
Sistem dianggap sebagai satu set layanan yang disediakan untuk klien. Server dan Client diperlakukan berbeda .
Arsitektur Objek Terdistribusi.
Tidak ada perbedaan antara server dan client, sistem dapat sebagai satu set objek yang berinteraksi yang likasinya tidak relevan. Tidak ada perbedaan antara penyedia layanan dan user layanan.
B. Arsitektur Multiprosessor
Model sistem terdistribusi yang paling sederhana adalah sistem multiprosessor dimana sistem terdiri dari sejumlah proses yang dapat berjalan pada beberapa prosessor yang terpisah. Model ini umumnya digunakan pada sistem real time yang besar. Penggunaan banyak prosessor ini berguna untuk memperbaiki kinerja dan fleksibilitas sistem. Distribusi proses ke prosessor dapat ditentukan sebelumnya atau bisa juga dikendalikan oleh dispatcher yang memutuskan proses mana yang akn dialokasikan ke masing-masing prosessor.
Satu set sensor terdistribusi mengumpulkan informasi dari aliran lalu lintas dan memproses informasi secara local sebelum mengirimnya ke ruangan control. oPerator mengambil keputusan dengan memakai informasi ini dan memberi instruksi ke proses control lampu liantas yang berbeda. Ada proses logika yang terpisah untuk menangani sensor ruangan control, dan lampu lalu lintas. Dan proses-proses ini berjalan pada prosesor yang terpisah. Sistem perangkat lunak yang terdiri dari banyka proses tidak harus merupakan sistem terdistribusi. Memang jika tersedia lebih dari satu prosessor maka distribusi dapat diimplementasikan.
C. Arsitektur Client Server
Seperti yang telah dijelaskan pada bab-bab sebelumnya model Arsitektur Cilent Server dimodelkan sebagai satu set layanan yang disediakan oleh server dan satu atau lebih client yang memakai layanan server. Client tidak perlu menyadari keberadaan server tetapi juga sebaliknya tidak mengetahui keberadaan klien yang lain. Tidak harus ada pemetaan 1:1 antara proses dan prosesor pada sistem.
Arsitektur C/S yang paling sederhana disebut arsitektur C/S Two Tier, diaman aplikasi diorganisir seperti server dan satu set klien seperti pada gambar 10.5 dimana arsitektur C/S Two Tier memiliki dua bentuk yaitu:
- Model Thin Client.
Pada model ini semua pemrosesan aplikasi dan manajaemen data dilakukan pada server. Klien bertanggung jawab untuk menjalankan perangkat lunak presentasi yang biasanya hanya berbentuk interface sistem atau GUI.
Kelebihan:
o Biaya lebih rendah
o Lebih cocok untuk model jaringan yang sederhana
Kekurangan:
o Menempatkan beban berat pemrosesan pada server
o Ada kekuatan pemrosesan yang besar yang tersedia pada PC modern dan tidak digunakan pada client.
- Model Fat Client
Pada model ini server hanya bertanggung jawab pada manajemen data. Perangkat client bertanggung jawab pada logika aplikasi dan interaksi denga user.
Kelebihan:
o Menggunakan kekuatan pemrosesan yang besar dan mendistribusikan pemrosesan logika aplikasi dan prsentasi pada klien
o Server hanya menangani seluruh transaksi database
o Pendistribusian pemrosesan lebih efektif
Kekurangan :
o Manajemen sistemnya lebih komplek
o Biayanya lebih besar
Contoh dari model arsitektur C/S Two Tier dapat dilihat pada gambar 10.4 tentang jaringan ATM. Pada gambar tersebut ATM tidak berhubungan langsung dengan database nasabah, tetapi terhubung ke monitor teleprocessing. Monitor teleprocessing (TP) merupakan middleware yang mengatur komunikasi dengan client jarak jauh (remote) dan menserikan transaksi client untuk diproses oleh database. Menggunakan transaksi serial berarti bahwa sistem dapat pulih dari kesalahan tanpa merusak data sistem. Munculnya Java dan applet yang dapat di download secara gratis memungkinkan pengembangan sistem C/S antar model thin dan fat client. Beberapa pernagkat lunak pemrosesan aplikasi dapat didownload ke client seperti Java Applet sehingga mengurangi beban pada server. Interface User dibangun dengan web browser yang dapat menjalankan Java applet.
Kelebihan sistem Three Tier C/S adalah diantaranya:
o Transfer informasi antara web server dan server database optimal
o Komunikasi aantara sistem-sistemtidak harus didasarkan pada standart internet, tetapi dapat menggunakan protocol komunikasi yang lebih cepat dan berada pada tingkat yang lebih rendah.
o Penggunaan middleware mendukung efesien query database dalam SQL dipakai untuk menangani pengambailan informasi dari database.