Client Server
Diawal perkembangannya perangkat komputer
adalah barang yang mahal dan mewah. Pengembangan dan pengoperasiannya
rumit dan terpusat. Namun seiring dengan berjalannya waktu yang tadinya
proses tersentralisasi dikembangakan menjadi proses terdistribusi sampai
pada end user . Hal ini sangat dipengaruhi oleh adanya perkembangan teknologi LAN ( Local Area Network ) di pertengahan tahun 1980 an.
Dengan LAN sebuah PC dapat melakukan
komunikasi satu dengan lainnya dan dapat saling berbagi resource baik
perangkat keras ataupun database . LAN mampu memberikan
interkonektivitas yang tidak pernah ada sebelumnya. Untuk dapat
melakukan hal tersebut dibutuhkan sebuah komputer pemproses yang
memfasilitasi dan melayani proses sharing semua resource yang ada.
Perangkat ini disebut dengan Server .
Untuk melakukan Sharing File biasanya
dibutuhkan sebuah File Server begitu juga untuk sharing Printer
dibutuhkan sebuah Printer Server. Namun ternyata hal seperti ini
belumlah cukup. Jumlah PC yang bertambah dengan sangat cepat seiring
dengan berkembangnya sebuah organisasi. Jumlah end user dan client juga
bertambah banyak. Kebutuhan akan perangkat menjadi bertambah pula, tidak
hanya membutuhkan sebuah printer server, juga dibutuhkan server-server
lainnya seperti server pengolahan gambar, server pengolahan suara, dan
lainnya. Server-server ini dengan database dan applikasinya harus dapat
diakses oleh beberapa PC, ataupun diakses oleh sebuah komputer mainframe
melalui sebuah LAN. Sistem seperti ini disebut Sistem Client Server
seperti digambarkan pada Gambar dibawah ini.
Komponen dan Fungsi Sistem Client Server
Gambaran umum konfigurasi Client
Server diperlihatkan pada gambar 2. Dengan pendekatan Client Server
setiap PC dapat melakukan secara independen sebuah pemrosesan lokal dan
mensharing perangkat enterprise melalui LAN. Untuk kasus yang lebih luas
kemampuan akses dapat dilakukan melalui MAN ( Metropolita Area Network )
atau WAN ( Wide Area Network ). Sebuah database dan program applikasi
enterprise misalnya diletakan pada sebuah server dimana setiap end user
dapat melakukan akses melalui Client Processo r, LAN dan Server.
User
User disini adalah end user yang
mengakses client untuk mendapatkan sebuah layanan. End user bisa saja
seorang manager perusahaan, professional, karyawan di sebuah perusahaan,
atau pelanggan. Ada timbul sedikit kerancuan. Pelanggan dalam sebuah
bisnis atau perdagangan disebut dengan client , tapi client ini adalah
manusia, jangan dibingungkan dengan istilah client pada pemrosesan
komputer. Dapat kita katakan sebuah user atau end user adalah ketika
melakukan proses akhir menggunakan sistem client server.
Client
Client dapat berupa sebuah pemproses
yang powerful atau dapat juga berupa terminal tua dengan kemampuan
proses yang terbatas. Secara mendasar client adalah sebuah PC dengan
sistem operasinya sendiri. Sebagian besar pemrosesan banyak dilakukan di
sebuah server dimana bagian-bagian dalam lingkup pekerjaannya
ditentukan oleh program komputer, inilah yang menyebabkan sistem client
server berbeda dengan sistem transaksi tradisional. Sistem client server
memungkinkan sebuah teknologi dan applikasinya digunakan bersamaan.
Applikasi disini termasuk didalamnya
adalah pemroses pesan seperti e-mail, pemproses file lokal seperti DBMS
untuk browsing dan penghitungan, atau sharing resource seperti sistem
image processing, sistem optical character, sistem advance grafic
processing, plotter warna, atau sebuah printer. Perangkat-perangkat ini
bisa saja berasal dari berbagai vendor yang ada.
Untuk memfasilitasi query pemprosesan
dari client, sebagian besar sistem client server menggunkaan Structured
Query Language (SQL) yang merupakan struktur bahasa tingkat tinggi. SQL
dengan database relationalnya adalah standar de facto untuk hampir
sebagian besar sistem client server. Salah satu komponen terpenting
sistem client server adalah User Interface (UI), yang digunakan user
untuk berkomunikasi. Bagi user yang seorang programmer, UI tidak mesti
user friendly, tapi untuk end user yang bukan programmer sangat
dibutuhkan UI yang user friendly. Dibutuhkan Graphical User Interface
(GUI) untuk end user karena GUI menampilkan grafis untuk melakukan akses
dengan icon-icon tanpa perlu memasukan perintah pemrograman. Kedepannya
GUI tidak hanya digunakan untuk menggantikan akses perintah
pemprograman tapi juga digunakan untuk grafik, voice, video, animasi,
untuk selanjutnya menjadi sebuah teminal multimedia.
Network dan Transmisi
Server dan client dapat terkoneksi
dengan sebuah media transmisi. Media transmisi ini dapat berupa kabel,
wireless, atau fiber. Dengan media ini memungkinkan sebuah perusahaan
untuk melakukan enterprice network lebih besar dalam sebuah workgroup
atau departemen. Untuk itu dibutuhkan interoperability sebagai contoh
operasi dan pertukaran informasi yang heterogen melalui berbagai
perangkat software dalam jaringan. Esensinya adalah keterbukaan dalam
melakukan pertukaran baik komponen dan software yang berasal dari vendor
yang berbeda-beda. Dengan interoperability baik vendor dan customer
akan mendapatkan keuntungan.
Interoperability memberikan dampak
pada arsitektur jaringan. Awal sebuah arsitektur jaringan adalah SNA
namun arsitektur ini bersifar proprietary dan tidak terbuka dengan
vendor lainnya. Kemudian sebagian besar orang beralih ke OSI yang di
standarkan oleh ISO ( International Standards Organization ). OSI banyak
di gunakan di Eropa namun kurang berkembang di Amerika Serikat. Di
Amerika Serikat muncul TCP/IP yang kemudian di dukung oleh Unix User
Group.
Servers
Konektivitas adalah hal yang
terpenting namun bukan satu-satunya faktor untuk mendapatkan efisiensi
dan efektivitas sharing resource yang dimiliki. Dibutuhkan sebuah
perangkat yang memiliki kemampuan mengontrol software, menjalankan
program applikasi, dan mengakses database dengan mudah dan cepat. Untuk
itulah diperlukan sebuah Server. Sebuah Server harus mendukung
spesifikasi yang mendukung resource sharing seperti Network Server
Operating System, Multiple User Interface, GUI ( Graphic User Interface
), dialog oriented cleint – server languange seperti SQL dan database
arsitektur. Saat ini resuorce bisa tersebar secara spasial tidak hanya
berada dalam batasan sebuah negara namun sudah antar negara yang
membutuhkan interkoneksi yang tinggi.
Beberapa software dapat diperoleh dari
vendor atau software house. Software tersebut bisa bersifat mainframe
centric (sentral) atau PC server centric. Namun selain semua hal yang
tersedia pada paket software tersebut tetap dibutuhkan in house sofware
development. Juga perlu untuk mengintegrasikan sistem client server
dengan sistem informasi yang telah ada dan menggunakan sistem tersebut
tidak hanya sebagai end user tapi juga bekerja diantara group end user.
Server melakukan pemprosesan mirip
dengan pemrosesan yang ada disisi client. Namun ada sedikit perbedaan,
biasanya sebuah server tidak mempunyai User Interface karena didesain
untuk networking, memproses database dan memproses applikasi. Pembeda
antara pemrosesan client dan server ada pada tanggungjawab dan fungsi
dari pemrosesan yang dilakukan. Sebagai contoh sebuah server dapat
bertindak sebagai repository dan penyimpanan informasi dalam kasus pada
file server. Tipe dari Server tergantung pada kebutuhan dan tujuan
sistem. Dalam beberapa kasus sebuah server harus mampu melakukan
multitaskting (membentuk multi fungsi secara simultan), menggunakan
multiple operating system, lebih portable, memiliki skalabilitas, dan
memiliki waktu respon yang cepat untuk melakukan teleprosesing . Dengan
kapabilitas seperti itu menjadikan server memiliki harga yang relatif
mahal. Penyebab mahalnya harga server adalah :
- Network Management
- Gateway function termasuk akses keluar dan e-mail publik
- Penyimpanan
- File Sharing
- Batch processing
- Bulletin Board access
- Facsimile transmission
Pemrosesan Database
Beberapa prinsip pemrosesan data pada server termasuk didalamnya adalah
integritas, sekuriti, dan recovery data. Enterprise data yang dibutuhkan
oleh sebuah perusahaan membutuhkan sebuah integrasi, pengaksesan data
yang di kendalikan dan kelola dengan securiti yang baik, dan recovery
data dapat dilakukan jika terjadi kegagalan sistem.
Beberapa data management dilakukan secara otomatis. Biasanya dilakukan
oleh DBMS yang berada di Server yang mengontrol akses diantara
pemprosesan multiple sistem dan mengintegrasikan akses data melalui
network management.
Pemrosesan Applikasi
Data digunakan oleh program applikasi yang mana sebagian besarnya berada
di server. Ada beberapa applikasi client server yang disediakan oleh
vendor. Tools applikasi ini menjadikan pengembangan sistem client-server
menjadi lebih kompetitif. Pengembangan applikasi client-server dapat
dilakukan dengan beberapa cara yakni :
- Fungsi pemprosesan didistribusikan diantara client dan server.
Porsi dari client dijalankan oleh end user dengan menggunakan bahasa
pemrograman database seperti SQL yang memberikan semacam request data
dan kemudian mengekstrak data tersebut dari lokasinya dimana semua
proses tersebut dikontrol oleh sistem operasi.
- UI dan GUI menjadi lebih sering digunakan karena tingkat kemudahan penggunaan menjadi lebih penting.
- Digunakannya Advance networking seperti LAN
- Code generator juga digunakan, Metodelogi Objeck Oriented akan menambah tingkat penggunan.
- Tools pengembangan seperti SQL Server, FLOWMARK, Progress, ObjectView, Oracle menjadi sangat diperlukan
Ketika sebuah applikasi diproses dan permintaan akan data dilakukan oleh
client, maka hasilnya dikirimkan melalui LAN. Hasil dari applikasi
tersebut dapat saja dilakukan perubahan bentuk untuk mendapatkan
tampilan yang lebih baik. Semuanya ini dilakukan di sisi client oleh end
user melalui UI (User Interface)