Computer
Network atau jaringan komputer, merupakan
sekumpulan komputer yang dihubungkan melalui media fisik dan software yang
memfasilitasi komunikasi antara komputer-komputer tersebut. Arsitektur
jaringan Client Server merupakan
model konektivitas pada jaringan yang membedakan fungsi komputer 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.
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), sedangkan 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
Model-model Client Server ada 3 jenis model diantaranya :
1. Client/Server
(two tier)
Two Tier Client Server. 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. Aplikasi ditempatkan
pada komputer client dan mesin database dijalankan pada server jarak jauh.
Aplikasi client mengeluarkan permintaan ke database yang mengirimkan kembali
data ke clientnya. 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 :
- User Interface (Client). Adalah
antar muka program aplikasi yang berhadapan dan digunakan langsung oleh
user.
- Manajemen Proses(Jaringan).
- Database (Server). 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. Aplikasi ditempatkan pada komputer client
dan mesin database dijalankan pada server jarak-jauh. Aplikasi client
mengeluarkan permintaan ke database yang mengirimkan kembali data ke clientnya.
2. Three-Tier /
Multi-Tier
Three Tier Client Server. 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, aplikasi aplikasi mendapatkan
skalabilitas, keterbaharuan, dan keamanan. Arsitektur Three Tier merupakan
inovasi dari arsitektur. 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 dikembangkan menggunakan PHP, ASP.Net,
maupun Java. Sehingga kita menempatkan beberapa business logic kita pada tier
tersebut. Arsitektur three tier ini banyak sekali diimplementasikan dengan
menggunakan web application. Karena dengan menggunakan web application, client
side (Komputer Client) hanya akan melakukan instalasi Web Browser. Pada saat
komputer client melakukan inputan data maka data tersebut dikirimkan ke
application server dan diolah berdasarkan business prosesnya. 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
Applicationnya ke komputer 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, aplikasi mendapatkan skalabilitas,
keterbaharuan, dan keamanan.
3. Aplikasi N-tier
Aplikasi N-Tier Stored procedure ternyata tidak
mencukupi untuk sistem dimana database disimpan pada lebih dari satu server,
karena bisa jadi terdapat client yang tidak dapat mengakses procedure tersebut.
Mungkin Anda bertanya, apa perlunya menyimpan database lebih dari satu server?
Tentu saja Anda juga menginginkan perusahaan yang menggunakan aplikasi Anda
dapat berkembang, bukan? Penggunaan lebih dari satu database sangat
memungkinkan saat sebuah perusahaan telah memiliki divisi yang cukup besar
dimana harus memiliki database tersendiri. Dalam kasus penggunaan lebih dari
satu server database, Anda perlu mengimplementasikan strategi development yang
berbeda, pendekatan yang baik adalah dengan menggunakan model n-tier. Huruf “n”
pada n-tier menunjukkan variabel numerik yang dapat berisi angka sebanyak
apapun, misalnya 3-tier, 4-tier dan seterusnya. Karena itu sebuah aplikasi
n-tier memiliki 3 atau lebih tingkatan logical, umumnya aplikasi n-tier saat
ini menggunakan 3-tier. Untuk menggambarkannya, Anda dapat membayangkan skema
disain aplikasi two-tier yang mengimplementasikan business logic pada stored
procedure seperti yang telah diterangkan diatas, kemudian melakukan improvisasi
disain dengan menambahkan sebuah tingkatan (tier) sebagai middle tier sebagai
business object, arsitektur inilah yang dikenal dengan 3-tier. Perbedaan nyata
dengan 2-tier adalah, business object pada 3-tier terpisah dari aplikasi client
dan elemen database. Sehingga dapat digambarkan bahwa sistem 3-tier secara umum
terbentuk dari tingkatan client, business dan database.
Untuk
membayangkan penerapan 3-tier dalam kehidupan sehari-hari yang mungkin paling
sering Anda temui adalah penerapan Internet ataupun Intranet. Pada aplikasi
Internet/Intranet, terdapat client yang menjalankan browser dan meminta
informasi dari middle-tier yang berupa HTTP Server. Middle-tier akan meminta
data pada server database, kemudian mengirimkannya kembali kepada HTTP Server.
HTTP Server akan mengirimkan kepada browser dalam bentuk page/halaman web. Sebuah
sistem 3-tier menyediakan support multi-user yang stabil, bahkan saat pada
client menjalankan aplikasi yang berbeda, juga dapat mendayagunakan beberapa
database yang digunakan secara bersamaan.
Teknologi pendukung
Beberapa
contoh teknologi yang umum dipergunakan untuk mendukung n-tier:
- Component
Object
Umumnya merupakan model object oriented
dimana dapat dipergunakan oleh aplikasi yang berbeda dan penggunaan ulang
komponen. Contohnya adalah COM/DCOM. Aplikasi yang ditulis dengan bahasa
pemrograman yang berbeda dapat saling berkomunikasi dengan menggunakan
Component Object. Component Object itu sendiri dapat ditulis dengan bahasa
pemrograman yang berbeda-beda. Pada prinsipnya komponen tersebut terdiri dari
class yang memiliki sekumpulan method.
- Microsoft
Transaction Server
MTS atau Microsoft Transaction Server
merupakan software yang dikembangkan oleh Microsoft untuk keperluan monitoring
transaksi pada aplikasi terdistribusi. MTS beroperasi pada middle-tier dan
menyediakan control transaksi. Sebagai contoh, jika Anda mengembangkan sistem
3-tier yang mana menempatkan business object pada middle-tier, maka Anda dapat
membuat ActiveX DLL sebagai business objectnya, dan melakukan instalasi didalam
lingkungan MTS pada middle-tier. MTS akan bertanggung-jawab dalam menangani
akses multi-client pada busines object tersebut. MTS menyediakan fasilitas
seperti transaksi rollback, commit dan deadlock pada middle-tier.
- HTTP/Web
Server.
Untuk aplikasi n-tier pada aplikasi
Internet/Intranet, Anda mutlak memerlukan Web Server. Terdapat cukup banyak web
server yang umum digunakan seperti Apache Web Server atau Internet Information
Server (IIS). Anda dapat menggunakan web server sebagai middle-tier untuk
menangani permintaan dari browser komputer client.
- Microsoft
Message Queue Server.
MMQS atau Microsoft Message Queue Server
merupakan teknologi yang dikembangkan oleh Microsoft yang berjalan pada
middle-tier dan berfungsi untuk mengelola antrian permintaan.
Hal
ini dilatarbelakangi karena didalam jaringan yang besar, tidak semua komputer
yang terkoneksi berfungsi pada saat yang diperlukan, sehingga diperlukan sebuah
aplikasi yang dapat mengelola antrian request dari client dan response dari
server yang akan dikirimkan lagi ketik komputer tujuan telah berfungsi. Satu
keuntungannya lagi, jika client-client meminta request yang melebihi kapasitas
sebuah server, maka MMQS dapat menyimpannya untuk kemudian mendelegasikannya pada
server yang tidak sibuk. Untuk kebutuhan ini diperlukan aplikasi pada server
yang berfungsi sebagai listener atau referral.
- Database
Management System.
Database Management System atau dikenal
dengan singkatan DBMS merupakan sumber penyimpanan data dan tentu saja memegang
peranan vital dalam keseluruhan sistem. Untuk arsitektur 2-tier dan n-tier,
diperlukan aplikasi DBMS yang mampu bekerja pada lingkungan tersebut, beberapa
contohnya adalah MySQL, Microsoft SQL Server dan Oracle. Jika pada DBMS yang dipergunakan
terdapat fasilitas stored procedure, maka dimungkinkan untuk menyimpan business
logic didalam stored procedure yang akan diakses oleh client.
Kelebihan
dari model client/server :
- Menangani Database Server secara
khusus
- Relatif
lebih sederhana untuk di develop dan diimplementasikan.
- Lebih cocok
diterapkan untuk bisnis kecil.
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.
- Lebih
mahal.
Kesimpulan
Jadi arsitektur networking client
merupakan suatu bentuk sistem jaringan yang membedakan adanya komputer klien
dan komputer server. Terdapat tiga model untuk networking client ini yaitu two
tier, three tier, dan n tier yang
digunakan sesuai dengan kebutuhan masing-masing. Sistem ini menggunakan TCP/IP
dan sistem operasi yang digunakan yaitu Unix, Linux dan Windows NT.
Referensi :
Referensi :
Tidak ada komentar:
Posting Komentar