Kelebihan dan Kekurangan Arsitektur Jaringan Klien Server
Oleh:
Theofilus Kharismartinus Tri
Yudhanto
Jurusan Sistem Informasi
Fakultas Ilmu Komuter dan Teknologi Informatika,
Universitas Gunadarma
ABSTRAKSI
Pembahasan ini dilakukan untuk membantu
masyarakat umum tentang apa itu arsitektur jaringan klien server, kelebihan dan
kekurangannya sebagai sebuah arsitektur jaringan komputer. Arsitektur jaringan
Client Server merupakan model konektivitas pada jaringan yang membedakan fungsi
computer sebagai Client dan Server. Arsitektur ini menempatkan sebuah komputer
sebagai Server.
PENDAHULUAN
Latar
Belakang Masalah
Istilah
arsitektur mengacu pada desain sebuah aplikasi, atau dimana komponen yang
membentuk suatu sistem ditempatkan dan bagaimana mereka berkomunikasi.
Arsitektur terdistribusi – sebuah istilah yang relatif baru untuk menjelaskan
arsitektur aplikasi – berarti bahwa pemrosesan dari suatu aplikasi terjadi pada
lebih dari satu mesin. Kita tahu bahwa perkembangan teknologi kini telah banyak
membuat perubahan pada cara berpikir kita (manusia). Dengan laju pertumbuhan
teknologi yang makin cepat, kebutuhan akan informasi dari hari ke hari
meningkat sehingga menuntu kelancaran, dan kecepatan proses distribusi informasi.
Arsitektur jaringan Client Server
merupakan model konektivitas pada jaringan yang membedakan fungsi komputer
sebagai Client dan Server. Arsitektur ini menempatkan sebuah komputer sebagai
Server. Server ini yang bertugas memberikan pelayanan kepada terminal-terminal
lainnya tang terhubung dalam system jaringan atau yang kita sebut Clientnya.
Server juga dapat bertugas untuk memberikan layanan berbagi pakai berkas (file
server), printer (printer server), jalur komunikasi (server komunikasi).
Pada model arsitektur ini, Client
tidak dapat berfungsi sebagai Server, tetapi Server dapat berfungsi menjadi
Client (server non-dedicated). Prinsip kerja pada arsitektur ini sangat
sederhana, dimana Server akan menunggu permintaan dari Client, memproses dan
memberikan hasil kepada Client, sedangkan Client akan mengirimkan permintaan ke
Server, menunggu proses dan melihat visualisasi hasil prosesnya.
LANDASAN TEORI
Jaringan
Komputer
Jaringan komputer adalah sebuah sistem yang terdiri atas
komputer dan perangkat jaringan lainnya yang bekerja bersama-sama untuk
mencapai suatu tujuan yang sama. Tujuan dari jaringan komputer adalah: a.
Membagi sumber daya: contohnya berbagi pemakaian printer, CPU, memori, harddisk
b. Komunikasi: contohnya surat elektronik, instant messaging, chatting c. Akses
informasi: contohnya web browsing Agar dapat mencapai tujuan yang sama, setiap
bagian dari jaringan komputer meminta dan memberikan layanan (service). Pihak
yang meminta layanan disebut klien (client) dan yang memberikan layanan disebut
pelayan (server). Arsitektur ini disebut dengan sistem client-server, dan
digunakan pada hampir seluruh aplikasi jaringan komputer.
Perbandingan
Arsitektur Client-server dengan Arsitektur Peer-to-peer
Sistem operasi jaringan sangat menentukan bentuk
arsitektur jaringan yang dibangun. Ada dua macam kelompok arsitektur jaringan,
yaitu Peer-to-peer (P2P) dan Client-server. Masing-masing arsitektur tersebut
memiliki perbedaan dalam derajat koneksitasnya, maupun bentuk hubungan antara
Server dengan terminalnya. Namun, semua arsitektur tersebut berfungsi
menciptakan hubungan antarterminal yang ada dan menentukan fungsi serta peran
masing-masing terminal yang terkoneksi satu sama lain.
Penerapan arsitektur jaringan ini juga ditentukan oleh
skalabilitas dan tingkat penggunaan jaringan. Untuk skala kecil, dengan jumlah
komputer yang terhubung hanya berkisar tiga sampai lima buah, maka penerapan
arsitektur P2P akan memberikan keuntungan tersediri, di mana semua terminal
dapat berfungsi sebagai Client maupun Server.
Namun, untuk sistem jaringan yang lebih besar, baik jumlah terminal yang
terhubung maupun skala jangkauan yang lebih luas, apalagi untuk penanganan
sistem terdistribusi, penerapan arsitektur P2P tidak efektif lagi. Tentu saja
dalam skala besar akan sulit sekali jika tidak diketahui dengan pasti layanan
apa yang disediakan oleh komputer-komputer yang ada. Hal itu, akan membuat
Client mengalami kesulitan untuk menemukan Server yang menyediakan layanan yang
diperlukan. Oleh karena itu, pada sistem jaringan dengan skala yang lebih besar
akan lebih tepat jika diterapkan arsitektur Client-server, di mana ada satu
komputer yang ditetapkan sebagai Server dan semua layanan dipusatkan pada
Server tersebut.
Arsitektur
Client-server
Model konektivitas pada jaringan yang membedakan fungsi
komputer sebagai terminal akses serta pusat pengolahan dan layanan disebut
Client-server. Arsitektur ini menempatka nsebuah komputer sebagai server yang
bertugas sebagai pusat pengolahan dan layanan bagi terminal-terminal lain
(client) yang terhubung dalam sistem jaringan itu. Pada model arsitektur ini,
client tidak dapat berfungsi sebagai server (Dharma Oetomo, 2003, hal 124),
tetapi server dapat berfungsi sebagai client (server non dedicated), meski
sebaiknya dihindari agar tidak berubah menjadi arsitektur P2P dan menurunnya
kinerja server mengingat server juga merangkap peran sebagai client. Komputer
yang difungsikan sebagai server hanya berperan untuk melayani permintaan
layanan dari client. Model ini dapat menjawab problematika rendahnya kualitas
antarmuka pada terminal-terminal akses dalam arsitektur Master-slave karena
pada model arsitektur Client-server, komputer client merupakan intelligent
terminal, yaitu memiliki CPU yang dapat membantu proses dalam penyajian grafis
yang tinggi.
Istilah arsitektur mengacu pada desain sebuah
aplikasi, atau dimana komponen yang membentuk suatu sistem ditempatkan dan
bagaimana mereka berkomunikasi. Arsitektur terdistribusi – sebuah istilah yang
relatif baru untuk menjelaskan arsitektur aplikasi
Ini berarti bahwa pemrosesan dari suatu aplikasi terjadi
pada lebih dari satu mesin. Kita tahu bahwa perkembangan teknologi kini telah
banyak membuat perubahan pada cara berpikir kita (manusia). Dengan laju
pertumbuhan teknologi yang makin cepat, kebutuhan akan informasi dari hari ke
hari meningkat sehingga menuntu kelancaran, dan kecepatan proses distribusi
informasi.
Arsitektur jaringan Client Server merupakan model
konektivitas pada jaringan yang membedakan fungsi computer sebagai Client dan
Server. Arsitektur ini menempatkan sebuah komputer sebagai Server. Nah Server
ini yang bertugas memberikan pelayanan kepada terminal-terminal lainnya tang
terhubung dalam system jaringan atau yang kita sebut Clientnya. Server juga
dapat bertugas untuk memberikan layanan berbagi pakai berkas (file server),
printer (printer server), jalur komunikasi (server komunikasi)
Pada model arsitektur ini, Client tidak dapat berfungsi
sebagai Server, tetapi Server dapat berfungsi menjadi Client (server
non-dedicated). Prinsip kerja pada arsitektur ini sangat sederhana, dimana
Server akan menunggu permintaan dari Client,memproses dan memberikan hasil
kepada Client, sedangkan Client akan mengirimkan permintaan ke Server, menunggu
proses dan melihat visualisasi hasil prosesnya.
Sistem Client Server ini tidak hanya diperuntukkan bagi
pembangunan jaringan komputer skala luas. Sistem ini menggunakan protokol utama
Transmision Control Protocol/Internet Protocol (TCP/IP), sedangkam sistem
operasi yang digunakan antara lain Unix, Linux dan Windows NT.
Lingkungan Database
Client/Server di Internet
* Menggunakan LAN untuk
mendukung jaringan PC
* Masing-masing PC memiliki
penyimpan tersendiri
* Berbagi hardware atau
software
Komponen dasar Client Server
Pada dasarnya Client Server
terdiri dari 3 komponen pembentuk dasar, yaitu Client, Middleware, dan Server.
Gubungan dari ketiganya dapat digambarkan sebagai berikut:
– Client/Server (two tier)
Dalam model client/server,
pemrosesan pada sebuah aplikasi terjadi pada client dan server. Client/server
adalah tipikal sebuah aplikasi two-tier dengan banyakclient dan sebuah server
yang dihubungkan melalui sebuah jaringan.
Aplikasi ditempatkan pada
computer client dan mesin database dijalankan pada server jarak-jauh. Aplikasi
client mengeluarkan permintaan ke database yang mengirimkan kembali data ke
client-nya.
Model Two-tier terdiri dari
tiga komponen yang disusun menjadi dua lapisan : client (yang meminta serice)
dan server (yang menyediakan service). Tiga komponen tersebut
yaitu :
1. User Interface. Adalah
antar muka program aplikasi yang berhadapan dan digunakan langsung oleh user.
2. Manajemen Proses.
3. Database. Model ini
memisahkan peranan user interface dan database dengan jelas, sehingga terbentuk
dua lapisan.
Dalam model client/server,
pemrosesan pada sebuah aplikasi terjadi pada client dan server. Client/server
adalah tipikal sebuah aplikasi two-tier dengan banyak client dan sebuah server
yang dihubungkan melalui sebuah jaringan, seperti :
Aplikasi ditempatkan pada
komputer client dan mesin database dijalankan pada server jarak-jauh. Aplikasi
client mengeluarkan permintaan ke database yang mengirimkan kembali data ke
client-nya.
Dalam client/server,
client-client yang cerdas bertanggung jawab untuk bagian dari aplikasi yang
berinteraksi dengan user, termasuk logika bisnis dan komunikasi dengan server
database.
Aplikasi-aplikasi berbasis
client/server memiliki kekurangan pada skalabilitas. Skalabilitas adalah
seberapa besar aplikasi bisa menangani suatu kebutuhan yang meningkat –
misalnya, 50 user tambahan yang mengakses aplikasi tersebut. Walaupun model
client/server lebih terukur daripada model berbasis host, masih banyak
pemrosesan yang terjadi pada server. Dalam model client/server semakin banyak
client yang menggunakan suatu aplikasi, semakin banyak beban pada server.
Koneksi database harus dijaga
untuk masing-masing client. Koneksi menghabiskan sumber daya server yang
berharga dan masing-masing client tambahan diterjemahkan ke dalam satu atau
beberapa koneksi. Logika kode tidak bisa didaur ulang karena kode aplikasi ada
dalam sebuah pelaksanaan executable monolitik pada client. Ini juga menjadikan
modifikasi pada kode sumber sulit. Penyusunan ulang perubahan itu ke semua
komputer client juga membuat sakit kepala.Keamanan dan transaksi juga harus
dikodekan sebagai pengganti penanganan oleh COM+/MTS. Bukan berarti model
client/server bukanlah merupakan model yang layak bagi aplikasi-aplikasi.
Banyak aplikasi yang lebih kecil dengan jumlah user terbatas bekerja sempurna
dengan model ini. Kemudahan pengembangan aplikasi client/server turut
menjadikannya sebuah solusi menarik bagi perusahaan.
Pengembangan umumnya jauh
lebih cepat dengan tipe sistem ini. Siklus pengembangan yang lebih cepat ini
tidak hanya menjadikan aplikasi meningkat dan berjalan dengan cepat namun juga
lebih hemat biaya.
Kelebihan dari model
client/server
• Mudah
• Menangani Database Server
secara khusus
• Relatif lebih sederhana
untuk di develop dan diimplementasikan.
• Lebih cocok diterapkan
untuk bisnis kecil.
Server database berisi mesin
database, termasuk tabel, prosedur tersimpan, dan trigger (yang juga berisi
aturan bisnis). Dalam system client/server, sebagian besar logika bisnis
biasanya diterapkan dalam database.
Server database manangani :
• Manajemen data
• Keamanan
• Query, trigger, prosedur
tersimpan
• Penangan kesalahan
Arsitektur client/server
merupakan sebuah langkah maju karena mengurangi beban pemrosesan dari komputer
sentral ke computer client. Ini berarti semakin banyak user bertambah pada
aplikasi client/server, kinerja server file tidak akan menurun dengan cepat. Dengan
client/server user dair berbagai lokasi dapat mengakses data yang sama dengan
sedikit beban pada sebuah mesin tunggal. Namun masih terdapat kelemahan pada
model ini. Selain menjalankan tugas-tugas tertentu,kinerja dan skalabilitas
merupakan tujuan nyata dari sebagian besar aplikasi.
Kekurangan dari model
client/server :
• Kurangnya skalabilitas
• Koneksi database dijaga
• Tidak ada keterbaharuan
kode
• Tidak ada tingkat menengah
untuk menangani keamanan dan transaksi skala kecil.
• Susah di amankan.
• Lebih mahal.
– Three-Tier / Multi-Tier
Model three-tier atau
multi-tier dikembangkan untuk menjawab keterbatasan pada arsitektur
client/server. Dalam model ini, pemrosesan disebarkan di dalam tiga lapisan
(atau lebih jika diterapkan arsitektur multitier). Lapisan ketiga dalam
arsitektur ini,masing-masing menjumlahkan fungsionalitas khusus. Yaitu :
* Layanan presentasi (tingkat
client)
* Layanan bisnis (tingkat
menengah)
* Layanan data (tingkat
sumber data)
Layanan presentasi atau
logika antarmuka pengguna ditempatkan pada mesin client. Logika bisnis
dikeluarkan dari kode client dan ditempatkan dalam tingkat menengah. Lapisan
layanan data berisi server database. Setiap tingkatan dalam model three-tier
berada pada komputer tersendiri,
Konsep model three-tier
adalah model yang membagi fungsionalitas ke dalam lapisan-lapisan,
aplikasiaplikasi mendapatkan skalabilitas, keterbaharuan, dan keamanan.
Arsitektur Three Tier
merupakan inovasi dari arsitektur Client Server. Pada arsitektur Three Tier ini
terdapat Application Server yang berdiri di antara Client dan Database Server.
Contoh dari Application server adalah IIS, WebSphere, dan sebagainya.
Application Server umumnya berupa business process layer, dimana bisa didevelop
menggunakan PHP, ASP.Net, maupun Java. Sehingga kita menempatkan beberapa
business logic kita pada tier tersebut. Arsitektur Three Tier ini banyak
sekalidiimplementasikan dengan menggunakan Web Application. Karena dengan
menggunakan Web
Application, Client Side
(Komputer Client) hanya akan melakukan instalasi Web Browser. Dan saat komputer
client melakukan inputan data, maka data tersebut dikirimkan ke Application
Server dan diolah berdasarkan business process-nya. Selanjutnya Application
Server akan melakukan komunikasi dengan database server. Biasanya, implementasi
arsitektur Three Tier terkendala dengan network bandwidth.Karena aplikasinya
berbasiskan web, maka Application Server selalu mengirimkan Web
Application-nya ke computer
Client. Jika kita memiliki banyak sekali client, maka bandwidth yang harus
disiapkan akan cukup besar, Sedangkan network bandwidth biasanya memiliki
limitasi. Oleh karena itu biasanya, untuk mengatasi masalah ini, Application
Server ditempatkan pada sisi client dan hanya mengirimkan data ke dalam
database server. Konsep model three-tier adalah model yang membagi
fungsionalitas ke dalam lapisan-lapisan, aplikasiaplikasi mendapatkan
skalabilitas, keterbaharuan, dan keamanan.
Kelebihan arsitektur Three
Tier :
• Segala sesuatu mengenai
database terinstalasikan pada sisi server, begitu pula dengan
pengkonfigurasiannya. Hal ini
membuat harga yang harus dibayar lebih kecil.
• Apabila terjadi kesalahan
pada salah satu lapisan tidak akan menyebabkan lapisan lain ikut salah.
• Perubahan pada salah satu
lapisan tidak perlu menginstalasi ulang pada lapisan yang
lainnya dalam hal ini sisi
server ataupun sisi client.
Skala besar.
• Keamanan dibelakang
firewall.
• Transfer informasi antara
web server dan server database optimal.
• Komunikasi antara
system-sistem tidak harus didasarkan pada standart internet, tetapi
dapat menggunakan protocol
komunikasi yang lebvih cepat dan berada pada tingkat yang lebih rendah.
• Penggunaan middleware
mendukung efisiensi query database dalam SQL di pakai untuk menangani
pengambilan informasi dari database.Beberapa Keuntungan Arsitektur Three-Tier
* Keluwesan teknologi
* Mudah untuk mengubah DBMS
engine
* Memungkinkan pula middle
tier ke platform yang berbeda
* Biaya jangka panjang yang
rendah
* Perubahan-perubahan cukup
dilakukan pada middle tier daripada pada aplikasi
keseluruhan
* Keunggulan kompetitif
* Kekampuan untuk bereaksi
thd perubahan bisnis dengan cepat, dengan cara mengubahmodul kode daripada
mengubah keseluruhan aplikasi
Kekurangan arsitekture Three
Tier :
• Lebih susah untuk merancang
• Lebih susah untuk mengatur
• Lebih mahal
PENUTUP
Kesimpulan
Arsitektur
Client-Server memiliki banyak kelebihan yang sangat baik sehingga penggunaan
arsitektur client-server tersebut bisa digunakan sebagai arsitektur jaringan
pada jaringan yang besar dan membutuhkan reliabilitas yang tinggi
DAFTAR PUSTAKA
‘Client-Server
Model’
‘Arsitektur
Client-Server’
‘Kelebihan dan Kekurangan Beberapa Macam Arsitektur’
makasih banyak min
BalasHapusisolasi double tape untuk lcd