Konsep Sistem Client-Server
oleh, tedi mulyadi,
41155050110012
Pendahuluan
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
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 setiapend user dapat melakukan
akses melalui Client Processor, 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
:
1.
Network Management
2.
Gateway function termasuk akses
keluar dan e-mail publik
3.
Penyimpanan
4.
File Sharing
5.
Batch processing
6.
Bulletin Board access
7.
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 :
1.
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.
2.
UI dan GUI menjadi lebih sering
digunakan karena tingkat kemudahan penggunaan menjadi lebih penting.
3.
Digunakannya Advance networking
seperti LAN
4.
Code generator juga digunakan,
Metodelogi Objeck Oriented akan menambah tingkat penggunan.
5.
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). Diagram skematik
pendekatan client server ditunjukan pada gambar 4.
Keuntungan Sistem Client Server
1.
Mengurangi tanggung jawab dan
biaya overhead
2.
Kontrol biaya operasional dan pengembangan
yang lebih mudah
3.
Waktu respon yang lebih baik
dalam pemrosesan.
4.
Akses data yang lebih besar bagi
perusahaan. Sistem Client server mengamankan transaksi data dan menyimpannya
pada server untuk kemudian dapat di sharing, dimanipulasi, dianalisa secara
lokal.
5.
Memungkinkan pendistribusian
proses dari tersentralisasi menjadi desktop computing
6.
Menawarkan kooperatif prosesing
antara individu dan group antar departemen, geografis dan zona waktu.
7.
Rewriting software pada sistem
client server memberikan keuntungan untuk mendapatkan sistem yang terintegrasi
dan memberikan efisiensi.
8.
Menawarkan friendlu interface
pada end user khususnya pada knowledge worker dan customer.
9.
Keterlibatan yang lebih untuk
end user pada implementasi IT.
10. Arsitektur terbuka dan sistem terbuka memberikan fleksibilitas dalam
memilih konfigurasi hardware yang berbeda, network, dan DBMS dari berbagai
vendor.
Hambatan Implementasi Sistem
Client Server
Organisasi
1.
Skill personel yang kurang
memadai untuk implementasi sistem client server.
2.
Anti perubahan terhadap
teknologi baru.
3.
Biaya konversi
4.
Membutuhkan koordinasi dan
kontrol yang lebih pada end user.
Teknologi
1.
Membutuhkan infrastruktur LAN
dan WAN
2.
Skill dan peralatan yang belum
memadai
3.
Belum adanya pemahaman dan
pengalaman dalam merencanakan sistem client server
4.
Tidak tersedianya produk dan
tools pengembangan sistem client server
5.
Sedikitnya applikasi client
server
6.
Sedikitnya standar nasional dan
internasional untuk sistem client server.