Minggu, 20 Januari 2013

Pengertian
Client-server merupakan sebuah paradigma dalam teknologi informasi yang merujuk kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak: pihak klien dan pihak server.
Dalam model klien/server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah, tapi masih merupakan sebuah kesatuan yakni komponen klien dan komponen server. Komponen klien juga sering disebut sebagai front-end, sementara komponen server disebut sebagai back-end. Komponen klien dari aplikasi tersebut dijalankan dalam sebuah workstation dan menerima masukan data dari pengguna. Komponen klien tersebut akan menyiapkan data yang dimasukkan oleh pengguna dengan menggunakan teknologi pemrosesan tertentu dan mengirimkannya kepada komponen server yang dijalankan di atas mesin server, umumnya dalam bentuk request terhadap beberapa layanan yang dimiliki oleh server. Komponen server akan menerima request dari klien, dan langsung memprosesnya dan mengembalikan hasil pemrosesan tersebut kepada klien. Klien pun menerima informasi hasil pemrosesan data yang dilakukan server dan menampilkannya kepada pengguna, dengan menggunakan aplikasi yang berinteraksi dengan pengguna.

Konsep Dasar Client/ServerMenurut Gallaugher & Ramanathan (1996) :“client/server adalah client mengirim permintaan ke server,server menterjemahkan pesan,kemudian berusaha memenuhi permintaan”
Menurut Blaha & Premerlani (1998) :“client/server adalah suatu arsitektur dimana sumber daya server menyediakan komputasi untuk banyak komponen client.Client dapat mengakses satu server atau multiple server. Client dan server bisa berjalan pada mesin yg sama atau berbeda, ditulis dalam berbagai bahasa dan menggunakan sistem operasi yang berbeda
• Komputasi client-server melibatkan pembagian suatu aplikasi ke dalam beberapa task dan meletakkan setiap task pada platform yang dapat menangani secara efisien
• pemrosesan data bisa berada pada client atau di-split diantara client dan server
• Server dihubungkan ke client melalui suatu jaringan
   Pengertian lain, client melakukan permintaan suatu informasi atau mengirim perintah ke server. Server akan menerima permintaan dan perintah client. Kemudian server akan memproses memproses berdasarkan permintaan tersebut, dan mengembalikan kepada client sebagai hasil pemrosesan yang sudah dilakukan.
Data yang diminta oleh client dapat diambil dari database pada sisi server yang sering disebut database server, seperi misalnya MySQL, PostgreSQL, Oracle, atau SQL Server.

Karakteristik Client-Server :
- Client dan Server merupakan item proses (logika) terpisah yang bekerja sama pada suatu jaringan komputer untuk mengerjakan suatu tugas
- Service : Menyediakan layanan terpisah yang berbeda
- Shared resource : Server dapat melayani beberapa client pada saat yang sama dan mengatur pengaksesan resource
- Asymmetrical Protocol : antara client dan server merupakan hubungan one-to-many. Client memulai komunikasi dengan mengirim request ke server. Server menunggu permintaan dari client. Kondisi tersebut juga memungkinkan komunikasi callback.
- Transparency Location : proses server dapat ditempatkan pada mesin yang sama atau terpisah dengan proses client. Client/server akan menyembunyikan lokasi server dari client.
- Mix-and-match : tidak tergantung pada platform
- Message-based-exchange : antara client dan server berkomunikasi dengan mekanisme pertukaran message.
- Encapsulation of service : message memberitahu server apa yang akan dikerjakan
- Scalability : sistem C/S dapat dimekarkan baik vertikal maupun horisontal
- Integrity : kode dan data server diatur secara terpusat, sedangkan pada client tetap pada komputer tersendiri