DIFINISI
[Coulouris]
Sistem komputer terdistribusi adalah sebuah sistem Yang memungkinkan aplikasi komputer
beroperasi secara terintegrasi pada lebih dari satu lingkungan yang terpisah secara fisis.
(Lukito Eddi)
Komponen dasar sistem terdistribusi
Selain jaringan, Ada 3 komponen dasar dalam satu model sistem terdistrubusi :
1. Webserver : server pengelola sistem / tempat menaruh source code program yang
2. Database server : Mesin yang digunakan sebagai server untuk menyimpan database
3. File server : Mesin yang digunakan sebagai server untuk menyimpan file/konten yang
Mengapa komponen tersebut harus terdistribusi ? Karena ada 3 alasan utama yang paling
mendasar yaitu :
(distribusi fungsi), contoh : fungsi utama file server yang menitikberatkan pada space
3. Distribusi fisik : sistem yang menggantungkan pada fakta bahwa komputer secara
Saya juga akan memberikan 3 alasan mengapa anda harus mulai menerapkan sistem ini di
perusahaan :
1. Penambahan Quota bukan merupakan solusi total untuk mengatasi masalah
Selain itu saya juga akan memberikan 3 kendala utama (konsekuensi) yang mungkin terjadi
Dan tentu saja saya juga akan memberikan 3 solusi yang saya gunakan untuk mengatasi
kendala diatas :
1. Yang kita butuhkan untuk mengatasi masalah ini adalah tools, banyak sekali tools
yang dapat anda gunakan, dan karena penulis bekerja di lingkungan windows maka
tool saat ini yang penulis gunakan adalah adalah MS.Visual Studio Team System
(VSTS).
OK, Sekarang apa yang akan distribusikan dalam sistem anda ?, sebagai seorang
system analyst anda tentu dapat menganalisa dan memetakan serta mengkombinasikan
antara kebutuhan user dengan kemampuan dari lingkungan infrastruktur IT sendiri. Tidak
selalu kita harus mendistribusikan Fileserver bersama dengan Database server, dan tentu
saja saya tidak akan bicara panjang lebar tentang bagaimana cara anda melakukannya. Saya
hanya akan membagi ini menjadi 3 model pendistribusian dan teknik bagaimana cara
Distribusi file adalah bagian dari sistem informasi terdistribusi dimana konten-konten
(file berupa fisik) yang terdapat dalam sistem, terdistribusikan di setiap fileserver lokal.
1. Asumsikan growth file yang mungkin akan tersimpan dalam kurun waktu tertentu, dan
kompilasikan dengan kemampuan space pada file server lokal. Cara yang paling
Contoh kita asumsikan jumlah klik/hari adalah 50 user dan maksimal upload dokumen
2. Sistem yang dikembangkan sebaiknya friendly terhadap modifikasi besar maksimal file
yang bisa di upload per lokal server. Contoh : seorang admin di server lokal bisa
memodifikasi sendiri batas maksimal file yang boleh diuplaod ke server lokal.
3. Perhatikan model pengelolaan data dari konten itu sendiri. Contoh : Data terus
berkembang dan disimpan dalam tape atau akan secara otomatis terhapus dalam
5. Perhatikan juga kemampuan server lokal, server lokal yang digunakan merupakan
arsitektur databasenya dirancang sedemikian rupa sehingga data yang berupa record dapat
terdistribusikan di setiap database server lokal dan dapat bekerja secara terintegrasi dan
simultan.
Karena memang cukup kompleks, terus terang, sampai pada saat saya menulis artikel ini,
konsep dari distribusi database ini belum teraktualisasi, namun kira-kira inilah prinsip kerja
distribusi database :
Dan hal yang perlu diperhatikan adalah bagaimana sistem dirancang untuk membaca alamat
dijelaskan diatas, dan tentu saja hal-hal yang perlu diperhatikan dalam mensimulasikan
2. Intranet
Jaringan yang teradministrasi secara lokal
Biasanya proprietary
Terhubung ke internet (melalui firewall)
Menyediakan layanan internal dan eksternal
3. Sistem terdistribusi multimedia
Biasanya digunakan pada infrastruktur internet
Karakteristik
Sumber data yang heterogen dan memerlukan sinkronisasi secara real time
Video, audio, text Multicast
Contoh:
- Teleteaching tools (mbone-based, etc.)
- Video-conferencing
- Video and audio on demand
4. Mobile dan sistem komputasi ubiquitous
Sistem telepon Cellular (e.g., GSM)
Resources dishare : frekuensi radio, waktu transmisi dalam satu frekuensi, bergerak
1. Keheterogenan
* Suatu sistem terdistribusi dapat dibangun dari berbagai network, operation system, hardware
dan programming language yang berbeda.
* IP dapat digunakan utk mengatasi perbedaan jaringan.
* Middleware mengatasi perbedaan lainnya.
2. Keterbukaan
* Mendukung extensibility.
* Setiap komponen memiliki antarmuka (interface), yg di-publish ke komponen
lain.
* Perlu integrasi berbagai komponen yg dibuat oleh programmer atau vendor
ygberbeda.
3. Keamanan
* Shared resources & transmisi informasi rahasia perlu dilengkapi dengan enkrips
* Cegah denial of service.
4. Scalability
* Penambahan pemakai membutuhkan penambahan resource yg konstan
* Cegah bottleneck.
* Jika perlu, gunakan replikasi.
5. Penanganan Kegagalan
* Setiap proses (komputer atau jaringan) dapat mengalami kegagalan secara independen.
* Komponen lain harus tetap berjalan dgn baik.
* E.g. failed branch in a distributed banking system.
6. Concurrency
* Multiple users with concurrent requests to a shared resources.
* Setiap resource hrs aman di lingkungan tersebut di atas.
7. Transparansi
Transparan: bagi pemakai, keberadaan beberapa komponen tampak sebagai satu sistem saja.
* Access transparency:
Local & remote resources dapat diakses dengan operasi yg sama.
* Location transparency:
Resource dapat diakses tanpa tahu di mana lokasinya.
Bagaimana pendapat Anda mengenai hyperlink & URL?
* Concurrency transparency
Beberapa proses dapat sama-sama 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,
yg 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.
Definisi Middleware :
sebagai sebuah aplikasi yang secara logic yang terletak diantara lapisan aplikasi Middleware
didefinisikan seperti software yang menghubungkan komponen perangkat lunak atau aplikasi
yang berisi sekumpulan layanan yang memungkinkan agar beberapa proses dapat berjalan
untuk satu atau beberapa mesin computer untuk saling berinteraksi dalam sebuah jaringan.
Teknologi ini berkembang untuk menyediakan untuk Interoperabilitas dalam dukungan yang
koheren didistribusikan pindah ke arsitektur, yang paling sering digunakan untuk mendukung
dan mempermudah kompleksitas, aplikasi didistribusikan.
Middleware juga bisa disebut application layer) dan lapisan data dari sebuah arsitektur layer-
layer TCP/IP [1].
Penggunaan middleware ini sangat dibutuhkan untuk bermigrasi dari aplikasi mainframe ke
aplikasi client/server dan juga untuk menyediakan komunikasi antar platform yang berbeda
termasuk server web, server aplikasi, dan alat-alat serupa yang mendukung pengembangan
aplikasi dan pengiriman Middleware yang paling banyak dipublikasikan :
Microsoft's COM/DCOM (Component Object Model)
Object Management Group's Common Object Request Broker Architecture (CORBA),
RMI (Remote Method Invocation)
1. DCOM /Distributed Component Object Model adalah protokol yang berfungsi untuk
mengaktifkan komponen pada perangkat lunak (software) agar dapat berkomunikasi langsung
dengan jaringan. (Spangler, 2004). Tujuan DCOM adalah agar komponen yang telah dibuat
dapat diregister di suatu komputer dan di akses oleh banyak komputer lain. DCOM sendiri
bukan merupakan teknologi beru karena teknologi ini banyak dipakai dalam sistem distribusi
pada sistem jaringan TCP/IP. Protokol yang digunakan oleh DCOM dapat meliputi:
Protokol TCP/IP
Protokol UDP/IP
Protokol HTTP
Protokol RPC
2. CORBA merupakan sebuah spesifikasi middleware yang ideal untuk mendukung dan
mengaplikasikan sistem komputer terdistribusi. Arsitektur CORBA berbasis pada model objek.
Model ini berasal dari abstraksi inti model objek yang didefinisikan oleh OMG dalam sebuah
petunjuk OMA (Object Management Architecture). CORBA bersifat open, maksudnya bahwa
CORBA bisa dipakai oleh setiap orang yang ingin menggunakan standarisasi CORBA ini.
Sehingga akan muncul perbedaan-perbedaan dalam menggunakannya, seperti perbedaan
platform ataupun bahasa pemrograman. Tetapi hal ini justru menjadi kelebihan CORBA bahwa
CORBA mampu mengkomunikasikan sistem yang memiliki perbedaan-perbedaan tersebut.