Istilah arsitektur mengacu pada desain sebuah aplikasi, atau dimana komponen yang membentuk suatu system ditempatkan dan bagaimana mereka berkomunikasi. Client merupakan sembarang sistem atau proses yang melakukan suatu permintaan data atau layanan ke server sedangkan server ialah, sistem atau proses yang menyediakan data atau layanan yang diminta oleh client.
Client-Server adalah pembagian kerja antara server dan client yg mengakses server dalam suatu jaringan. Jadi arsitektur client-server adalah desain sebuah aplikasi terdiri dari client dan server yang saling berkomunikasi ketika mengakses server dalam suatu jaringan.
Macam-macam arsitektur aplikasi Client-Server beserta kelebihan dan kekurangannya yaitu:
1. Standalone (one-tier)
Pada arsitektur ini semua pemrosesan dilakukan pada mainframe. Kode aplikasi, data dan semua komponen sistem ditempatkan dan dijalankan pada host.
Walaupun computer client dipakai untuk mengakses mainframe, tidak ada pemrosesan yang terjadi pada mesin ini, dan karena mereka “dump- client” atau “dump-terminal”. Tipe model ini, dimana semua pemrosesan terjadi secara terpusat, dikenal sebagai berbasis-host. Sekilas dapat dilihat kesalahan pada model ini. Ada dua masalah pada komputasi berbasis host: Pertama, semua pemrosesan terjadi pada sebuah mesin tunggal, sehzingga semakin banyak user yang mengakses host, semakin kewalahan jadinya. Jika sebuah perusahaan memiliki beberapa kantor pusat, user yang dapat mengakses mainframe adalah yang berlokasi pada tempat itu, membiarkan kantor lain tanpa akses ke aplikasi yang ada.
Pada saat itu jaringan sudah ada namun masih dalam tahap bayi, dan umumnya digunakan untuk menghubungkan terminal dump dan mainframe. Namun keterbatasan yang dikenakan pada user mainframe dan jaringan telah mulai dihapus.
Keuntungan arsitektur standalone (one-tier):
- Sangat mudah
- Cepat dalam merancang dan mengaplikasikan
Kelemahan arsitektur standalone (one-tier):
- Skala kecil
- Susah diamankan
- Menyebabkan perubahan terhadap salah satu komponen diatas tidak mungkin dilakukan, karena akan mengubah semua bagian.
- Tidak memungkinkan adanya re-usable component dan code.
- Cepat dalm merancang dan mengaplikasikan
2. 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.
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.
4. Multi Tier
Arsitektur Multi Tier adalah suatu metode yang sangat mirip dengan Three Tier. Bedanya, pada Multi Tier akan diperjelas bagian UI (User Interface) dan Data Processing.
Yang membedakan arsitektur ini adalah dengan adanya Business Logic Server. Database Server dan Bussines Logic Server merupakan bagian dari Data Processing, sedangkan Application Server dan Client/Terminal merupakan bagian dari UI. Business Logic Server biasanya masih menggunakan bahasa pemrograman terdahulu, seperti COBOL. Karena sampai saat ini, bahasa pemrograman tersebut masih sangat mumpuni sebagai business process.
Multi-tier architecture menyuguhkan bentuk three – tier yang diperluas dalam model fisik yang terdistribusi. Application server dapat mengakses Application server yang lain untuk mendapat data dari Data server dan mensuplai servis ke client Application.
Kelebihan arsitektur Multi tier :
- Dengan menggunakan aplikasi multi-tier database, maka logika aplikasi dapat dipusatkan pada middle-tier, sehingga memudahkan untuk melakukan control terhadap client-client yang mengakses middle server dengan mengatur seting pada dcomcnfg.
- Dengan menggunakan aplikasi multi-tier, maka database driver seperti BDE/ODBC untuk mengakses database hanya perlu diinstal sekali pada middle server, tidak perlu pada masing-masing client.
- Pada aplikasi multi-tier, logika bisnis pada middle-tier dapat digunakan lagi untuk mengembangkan aplikasi client lain,sehingga mengurangi besarnya program untuk mengembangkan aplikasi lain. Selain itu meringankan beban pada tiap-tiap mesin karena program terdistribusi pada beberapa mesin.
- Relatif lebih mahal
- Memerlukan adaptasi yang sangat luas ruang lingkupnya apabila terjadi perubahan sistem yang besar.
Kekurangan arsitektur Multi tier :
- Program aplikasi tidak bisa mengquery langsung ke database server, tetapi harus memanggil prosedur-prosedur yang telah dibuat dan disimpan pada middle-tier.
- Lebih mahal
Arsitektur Client/Server
• Menggunakan LAN untuk mendukung jaringan PC
• Masing-masing PC memiliki penyimpan tersendiri
• Berbagi hardware atau software
Arsitektur File Server
Model pertama Client/Server
Semua pemrosesan dilakukan pada sisi workstation
Satu atau beberapa server terhubungkan dalam jaringan
Server bertindak sebagai file server
File server bertindak sebagai pengelola file dan memungkinkan klien mengakses file tersebut
Setiap klien dilengkapi DBMS tersendiri
DBMS berinteraksi dengan data yang tersimpan dalam bentuk file pada server
Aktivitas pada klien:
Meminta data
Meminta penguncian data
Tanggapan dari klien
Memberikan data
Mengunci data dan memberikan statusnya
Batasan File Server
• Beban jaringan tinggi karena tabel yang diminta akan diserahkan oleh file server ke klien melalui jaringan
• Setiap klien harus memasang DBMS sehingga mengurangi memori
• Klien harus mempunyai kemampuan proses tinggi untuk mendapatkan response time yang bagus
• Salinan DBMS pada setiap klien harus menjaga integritas databasse yang dipakai secara bersama-sama ð tanggung jawab diserahkan kepada programmer
Arsitektur Database Server
• Klien bertanggung jawab dalam mengelola antar muka pemakai (mencakup logika penyajian data, logika pemrosesan data, logika aturan bisnis)
• Database server bertanggung jawab pada penyimpana, pengaksesan, dan pemrosesan database
• Database serverlah yang dituntut memiliki kemampuan pemrosesan yang tinggi
• Beban jaringan menjadi berkurang
• Otentikasi pemakai, pemeriksaan integrasi, pemeliharaan data dictionary dilakukan pada database server
• Database server merupakan implementasi dari two-tier architecture
Kesimpulan :
Aplikasi Client/Server memungkinkan berbagi berkas atau periferal atau pengaksesan komputer melalui jarak jauh. Dari ketiga arsitektur diatas Multi Tier akan sangat mudah dan aman bagi kita untuk mengimplementasikan arsitektur three tier atau multi tier client/ server khususnya jika kita memiliki infrastruktur yang solid untuk itu.
Dalam era intranet dan aplikasi internet sekarang ini, arsitektur three tier atau multi tier client/ server menjadi arsitektur paling favorit yang digunakan. Karena memberikan kita keleluasaan untuk mengembangkan aplikasi kita mulai dari sistem yang paling kecil hingga kita mengembangkannya menjadi sebuah aplikasi berskala enterprise.
skip to main |
skip to sidebar