CLIENT SERVER - SISTEM TERDISTRUBUSI
CLIENT SERVER
Client adalah komputer yang diperbolehkan untuk masuk kedalam network dan mengambil / menggunakan segala sumber daya yang tersedia di dalam network. Kata kuncinya adalah pada sistem client/server harus terdapat satu atau beberapa server yang menyediakan layanan dan satu atau beberapa klien yang meminta layanan tersebut.
GAMBAR CLIENT SERVER
Model Client Server
Ada beberapa model client/server yang penting untuk
diketahui. Dimulai dari arsitektur mainframe hingga
arsitektur client/server.
1.Arsitektur Mainframe
Pada arsitektur ini, terdapat sebuah komputer pusat
(host) yang memiliki sumber daya yang sangat besar,
baik memori, processor maupun media penyimpanan.
Melalui komputer terminal, pengguna mengakses
sumber daya tersebut. Komputer terminal hanya
memiliki monitor/keyboard dan tidak memiliki CPU.
![]() |
| Gambar Arsitektur Mainframe |
2.Arsitektur File Sharing
Pada arsitektur ini komputer server menyediakan filefile yang tersimpan di media penyimpanan server yang
dapat diakses oleh pengguna. Arsitektur file sharing
memiliki keterbatasan, terutama jika jumlah pengakses
semakin banyak serta ukuran file yang di shaing sangat
besar. Hal ini dapat mengakibatkan transfer data
menjadi lambat.
![]() |
| Gambar Arsitektur File Sharing |
3.Arsitektur Client/Server
Karena keterbatasan sistem file sharing,
dikembangkanlah arsitektur client/server. Salah satu
hasilnya yaitu berupa software database server yang
menggantikan software database berbasis file server.
Dikenalkan pula RDBMS (Relational Database
Management System). Dengan arsitektur ini, query data
ke server dapat terlayani dengan lebih cepat karena
yang ditransfer bukanlah file, tetapi hanyalah hasil dari
query tersebut. RPC (Remote Procedure Calls)
memegang peranan penting pada arsitektur
client/server.
![]() |
| Gambar Arsitektur Client/Server |
4. Model Two-tier
Model Two-tier
Terdiri dari tiga komponen yang disusun
menjadi dua lapisan: client (yang meminta service) dan
server (yang menyediakan service). Tiga komponen
tersebut yaitu :
• User Interface, yaitu antar muka program aplikasi
yang berhadapan dan digunakan langsung oleh user.
• Manajemen proses
• Database
Model ini memisahkan peranan user interface dan
database dengan jelas, sehingga terbentuk dua lapisan.
Gambar Model Two-tier Model Two-tier
5. Model Three-tier
Pada model ini disisipkan satu layer tambahan diantara user
interface tier dan database tier. Tier tersebut dinamakan
middle-tier. Middle-Tier terdiri dari bussiness logic dan rules
yang menjembatani query user dan database, sehingga
program aplikasi tidak bisa mengquery langsung ke database
server, tetapi harus memanggil prosedur-prosedur yang telah
dibuat dan disimpan pada middle-tier. Dengan adanya server
middle-tier ini, beban database server berkurang. Jika query
semakin banyak dan/atau jumlah pengguna bertambah, maka
server-server ini dapat ditambah, tanpa merubah struktur yang
sudah ada. Ada berbagai macam software yang dapat
digunakan sebagai server middle-tier. Contohnya MTS
(Microsoft Transaction Server) dan MIDAS.
Agent
Software Agent adalah entitas perangkat lunak yang
didedikasikan untuk tujuan tertentu yang memungkinkan user
untuk mendelegasikan tugasnya secara mandiri, selanjutnya
software agent nantinya disebut agent saja..
Karakteristik Software Agent
1.Autonomy: Agent
dapat melakukan tugas secara mandiri
dan tidak dipengaruhi secara langsung oleh user, agent lain
ataupun oleh lingkungan (environment). Untuk mencapai
tujuan dalam melakukan tugasnya secara mandiri, agent
harus memiliki kemampuan kontrol terhadap setiap aksi
yang mereka perbuat, baik aksi keluar maupun ke dalam.
2. Intelligence, Reasoning, dan Learning:
Setiap agent harus
mempunyai standar minimum untuk bisa disebut agent,
yaitu intelegensi (intelligence). Dalam konsep intelligence,
ada tiga komponen yang harus dimiliki: internal knowledge
base, kemampuan reasoning berdasar pada knowledge
base yang dimiliki, dan kemampuan learning untuk
beradaptasi dalam perubahan lingkungan.
3.Delegation:
Agent bergerak dalam kerangka menjalankan
tugas yang diperintahkan oleh user. Fenomena
pendelegasian (delegation) ini adalah karakteristik utama
suatu program disebut agent.
4.Reactivity:
Kemampuan untuk bisa cepat beradaptasi
dengan adanya perubahan informasi yang ada dalam
suatu lingkungan. Lingkungan itu bisa mencakup: agent
lain, user, informasi dari luar, dsb.
5. Proactivity dan Goal-Oriented:
Sifat proactivity boleh
dibilang adalah kelanjutan dari sifat reactivity. Agent
tidak hanya dituntut bisa beradaptasi terhadap
perubahan lingkungan, tetapi juga harus mengambil
inisiatif langkah penyelesaian apa yang harus diambil.
Untuk itu agent harus didesain memiliki tujuan (goal)
yang jelas, dan selalu berorientasi kepada tujuan yang
diembannya (goal-oriented).
6. Communication and Coordination Capability:
Agent
harus memiliki kemampuan berkomunikasi dengan user
dan juga agent lain. Masalah komunikasi dengan user
adalah masuk ke masalah user interface dan
perangkatnya, sedangkan masalah komunikasi,
koordinasi, dan kolaborasi dengan agent lain adalah
masalah sentral penelitian Multi Agent System (MAS)
Klasifikasi Software Agent
1.Klasifikasi menurut Karakteristik yang Dimiliki
a.Collaborative Agent: Agent yang memiliki kemampuan
melakukan kolaborasi dan koordinasi antar agent dalam
kerangka Multi Agent System (MAS).
b.Interface Agent: Agent yang memiliki kemampuan untuk
berkolaborasi dengan user, melakukan fungsi monitoring
dan learning untuk memenuhi kebutuhan user.
c. Mobile Agent: Agent yang memiliki kemampuan untuk
bergerak dari suatu tempat ke tempat lain, dan secara
mandiri melakukan tugas ditempat barunya tersebut,
dalam lingkungan jaringan komputer.
d. Information dan Internet Agent: Agent yang memiliki
kemampuan untuk menjelajah internet untuk melakukan
pencarian, pemfilteran, dan penyajian informasi untuk
user, secara mandiri. Atau dengan kata lain, memanage
informasi yang ada di dalam jaringan Internet.
e. Reactive Agent: Agent yang memiliki kemampuan untuk
bisa cepat beradaptasi dengan lingkungan baru dimana
dia berada.
f. Hybrid Agent: Kita sudah mempunyai lima klasifikasi
agent. Kemudian agent yang memiliki katakteristik yang
merupakan gabungan dari karakteristik yang sudah kita
sebutkan sebelumnya adalah masuk ke dalam hybrid
agent.
g. Heterogeneous Agent System: Dalam lingkungan Multi
Agent System (MAS), apabila terdapat dua atau lebih
hybrid agent yang memiliki perbedaan kemampuan dan
karakteristik, maka sistem MAS tersebut kita sebut
dengan heterogeneous agent system.
2.Klasifikasi menurut Lingkungan Dimana Dijalankan
a.Desktop Agent:
Agent yang hidup dan bertugas dalam
lingkungan Personal Computer (PC), dan berjalan diatas
suatu Operating System (OS). Termasuk dalam klasifikasi
ini adalah:
• Operating System Agent
• Application Agent
• Application Suite Agent
b.Internet Agent:
Agent yang hidup dan bertugas dalam
lingkungan jaringan Internet, melakukan tugas
memanage informasi yang ada di Internet. Termasuk
dalam klasifikasi ini adalah:
• Web Search Agent
• Web Server Agent
• Information Filtering Agent
• Information Retrieval Agent
• Notification Agent
• Service Agent
• Mobile Agent
Bahasa Pemrograman Digunakan
Bahasa pemrograman yang dipakai untuk tahap
implementasi dari software agent, sangat menentukan
keberhasilan dalam implementasi agent sesuai dengan yang
diharapkan, diantaranya yaitu :
1. Object-Orientedness:
Karena agent adalah berhubungan dengan obyek, bahkan
beberapa peneliti menganggap agent adalah obyek yang
aktif, maka juga agent harus diimplementasikan kedalam
pemrorgaman yang berorientasi obyek (object-oriented
programming language).
2. Platform Independence:
Seperti sudah dibahas pada bagian sebelumnya, bahwa
agent hidup dan berjalan diberbagai lingkungan. Sehingga
idealnya bahasa pemrograman yang dipakai untuk
implementasi adalah yang terlepas dari platform, atau
dengan kata lain program tersebut harus bisa dijalankan
di platform apapun (platform independence).
3. Communication Capability:
Pada saat berinteraksi dengan agent lain dalam suatu
lingkungan jaringan (network environment), diperlukan
kemampuan untuk melakukan komunikasi secara fisik.
Sehingga diperlukan bahasa pemrograman yang dapat
mensupport pemrograman yang berbasis network dan
komunikasi.
4.Security
Faktor keamanan (security) adalah factor yang sangat
penting dalam memilih bahasa pemrorgaman untuk
implementasi software agent. Terutama untuk mobil
agent, diperlukan bahasa pemrograman yang mensupport
level-level keamanan yang bisa membuat agent bergerak
dengan aman.
5.Code Manipulation:
Beberapa aplikasi software agent memerlukan manipulasi
kode program secara runtime, sehingga diperlikan bahasa
pemrograman untuk software agent yang dapat menangani
masalah runtime tersebut.
Dari karakteristik di atas dapat disimpulkan bahwa bahasa
pemrograman yang layak untuk mengimplementasikan
software agent adalah sebagai berikut :
✓Java
✓Telescript
✓Tcl/Tk, Safe-Tcl, Agent-Tcl





Komentar
Posting Komentar