Anda di halaman 1dari 6

SISTEM TERDISTRIBUSI Manajemen Client Server

OLEH:

WULAN DARI 1129040196

PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER FAKULTAS TEKNIK UNIVERSITAS NEGERI MAKASSAR 2013

Sistem client/server biasanya berjalan pada setidaknya dua system computer yang berbeda. Satu computer bertindak sebagai client dan yang lainnya sebagai server. Tetapi client dan server juga bisa berada pada satu system computer. Biasanya sebuah server melayani beberapa computer client, walaupun mungkin ada juga yang hanya melayani satu client saja. Fungsi server ini biasanya dilakukan oleh file server, kecuali apabila dibutuhkan kinerja yang maksimal maka digunakanlah server yang khusus. Client biasanya berupa komputer desktop yang terhubung dalam jaringan. Apabila pemakai ingin mengambil atau menyimpan informasi, bagian aplikasi client akan mengeluarkan permintaan, yang akan dikirimkannya kepada server. Server kemudian menjalankan permintaan dan mengirimkan informasi kembali ke client. Sebuah database tidak dapat menggantikan system client/server, walaupun system client/server sering menggunakan database untuk melakukan aktifitas server. Aplikasi yang dirancang untuk menggunakan Access, Microsoft FoxPro, Paradox, atau program database lainnya bukanlah system client/server. Semuanya adalah contoh-contoh aplikasi database jaringan karena semua pemrosesan dilakukan oleh client.

I. PENDAHULUAN Saat ini makin banyak pembuatan aplikasi yang menggunakan arsitektur client/server dalam pengaksesan database. Hal ini karena masih banyak pengguna aplikasi menuntut untuk dapat memperoleh informasi aktual dari bagian lain didalam satu perusahaan yang akan digunakan untuk proses pengambilan keputusan di bagian lainnya. ODBC adalah satu komponen utama pada semua pembuatan aplikasi client/server yang diciptakan untuk mempermudah koneksi database mysql ke semua pemrograman berbasis Windows. ODBC banyak dipilih sebagai alternatif pilihan koneksi database mysql dalam pemrograman client/server. MySQL merupakan salah satu database relasional yang mendukung pemakaian Stuctured Query Language (SQL) dan dirancang untuk penggunaan aplikasi dengan arsitektur client/server. Selain MySQL, beberapa produk sejenis yang sudah ada di pasaran antara lain adalah Oracle, Sybase, PostgreSQL, Informix, dan Microsoft SQL Server. Semua produk tersebut memungkinkan pengguna untuk mengolah data mereka didalam database tersentral pada computer pusat yang disebut sebagai server.

Sedangkan informasi yang dihasilkan dapat digunakan bersama-sama oleh beberapa user didalam komputer lokalnya yang disebut sebagai client. Data yang diberikan oleh server dapat disesuaikan dengan tingkat kepentingan pengguna. Sehingga data yang dikirim dapat berupa sebagian dari keseluruhan isi data, sesuai dengan permintaan user. II. CLIENT SERVER Client server merupakan model konektivitas yang membedakan fungsi komputer apakah sebagai client atau sebagai server. Sebagai server, computer bertugas memberikan layanan kepada terminal-terminal lain (client) yang terhubung dalam system jaringan itu. Selain itu, server juga bertugas memberikan layanan berbagi pakai berkas (file server), printer (printer server), jalur komunikasi (server komunikasi). Pada model ini, client tidak dapat berfungsi sebagai server, tetapi server dapat berfungsi sebagai client. Prinsip kerja client server sangat sederhana. Server akan menunggu permintaan dari client, kemudian memproses dan memberikan hasilnya kepada client. Sedangkan client akan mengirimkan permintaan ke server, kemudian menunggu proses dan menerima kembali hasil prosesnya yang akan dikirimkan oleh server. Komponen Dasar Client Server a. Client Client adalah system yang melakukan permintaan layanan yang dibutuhkan kepada server. Terminal client dapat berupa PC, ponsel, komunikator, televisi, dan peralatan lain yang membutuhkan komunikasi. b. Middleware Middleware adalah perantara yang menghubungkan antara client dan server. Dengan adanya middleware, client dapat mengirimkan permintaan kepada server, menerjemahkan pesan dari client agar dimengerti oleh server, menerjemahkan hasil proses dari server agar dapat dipahami oleh client dan mengirimkan hasil proses yang telah diterjemahkan kembali ke client. Middleware dapat berupa Transaction Monitor (TP) atau Object Request Broker (ORB). c. Server

Server adalah penyedia layanan yang diminta oleh client. Server dapat berupa basis data SQL, Monitor TP, server groupware, server objek, ataupun web. Berdasarkan tipe layanan yang diberikan server kepada client, jaringan Client Server dapat dibagi kedalam beberapa tipe: 1. System jaringan server basis data Adalah system jaringan dimana layanan yang diberikan oleh server berupa hasil proses dari perintah terstruktur yang diberikan client. 2. System jaringan server transaksi Adalah system jaringan dimana layanan yang diberikan server berupa hasil proses dari sekelompok perintah terstruktur yang diberikan client. 3. Sistem jaringan groupware server Adalah system jaringan dimana layanan yang diberikan server berupa fasilitas pemakaian bersama informasi semi-terstruktur antarpengguna jaringan. 4. System jaringan server objek Adalah system jaringan dimana layanan yang diberikan server berbentuk objek. 5. System jaringan web server Adalah system jaringan dimana layanan yang diberikan server berupa pengelolaan dan pemakaian bersama dokumen-dokumen yang saling terhubung. Manajemen Client Server Manajemen client server meliputi proses-proses pengaturan dan pemeliharaan keakuratan data. Manajemen client server dapat dilakukan dengan menggunakan sistem konkurensi berupa Multitasking, MultiThreading, dan Sinkronisasi. Sistem Konkuresi Sistem konkurensi adalah system yang aktivitasnya dapat berjalana bersamaan, artinya suatu proses dapat aktif berjalan tanpa harus menunggu proses lainnya selesai terlebih dahulu. Pada system yang tidak konkurens, suatu proses akan dijalankan hanya jika proses yang mendahului telah selesai dikerjakan. Implementasi system konkurensi pada single prosesor dengan menggunakan prinsip interleave proses, sedangkan pada system multiprosesor, proses-proses yang aktif di-interleave dan di-overlap. Multitasking

Multitasking adalah sistem yang mampu menjalankan banyak proses, yang dilakukan oleh satu computer secara simultan dan tanpa mengganggu satu dengan yang lain. Sistem multitasking pada umumnya berkaitan dengan system operasi. Multithreading Multithreading adalah sistem operasi yang telah dikembangkan agar secara bersamaan. Multithreading

memungkinkan menjalankanbanyak proses dibedakan menjadi tiga, yaitu: Model many-to-one

Model ini memetakan beberapa tingkatan thread pengguna hanya ke satu buah kernel thread. Manajemen proses thread dilakukan oleh pengguna sehingga menjadi lebih efisien. Akan tetapi, apabila sebuah thread melakukan pemblockingan terhadapa system maka seluruh proses akan tberhenti (blocked). Kelemahan model ini adalah multithread tidak dapat berjalan secara paralel dalam multiprosesor karena hanya dalam satu thread saja dapat mengakses kernel dalam satu waktu. Model one-to-one Model ini memetakan setiap thread pengguna ke dalam satu kernel thread sehingga model ini lebih sinkron daripada model many-to-one ketika sebuah thread melakukan pemblockingan terhadap system pemanggilan. Pemetaan ini juga mengizinkan multiple thread berjalan secara paralel dalam multiprosesor. Kelemahan model ini adalah dalam pembuatan thread pengguna, dibutuhkan pembuatan korespondensi thread pengguna karena dalam proses pembuatan kernel threaddapat mempengaruhi kinerja aplikasi maka kebanyakan implementasi model ini membatasi jumlah thread yang didukung system. Model one-to-one diimplementasikan oleh Windows NT dan OS/2. Model many-to-many Thread pengguna dapat menggunakan kernel thread yang jumlahnya lebih kecil atau sama dengan jumlah thread pengguna. Jumlah kernel thread dapat ditentukan oleh beberapa aplikasi dan beberapa mesin (suatu aplikasi dapat mengalokasikan lebih dari beberapa kernel thread dalam multiprosesor daripada dalam uniprosesor) dimana model many-to-one mengizinkan pembuatan thread pengguna sebanyak

mungkin. Konkurensi tidak dapat terjadi jika hanya ada satu thread yang dapat dijadwalkan oleh kernel dalam satu waktu. Model one-to-one memiliki tingkat konkurensi yang lebih tinggi, tetapi pengembang harus membatasi jumlah thread yang dibuat. Sinkronisasi Sinkronisasi adalah mekanisme koordinasi proses-proses konkuren yang saling mempengaruhi satu sama lain agar pemakaian resource secara bersama dapat terjamin validitasnya. Ada 2 hal yang melatarbelakangi penggunaan sinkronisasi, yaitu: a. Pengaksesan yang dilakukan secara bersama-sama ke data yang sama sehingga data menjadi tidak konsisten. b. Race condition yaitu situasi dimana beberapa proses mengakses dan memanipulasi data secara bersamaan. Nilai akhir data tergantung dari proses mana yang selesai terakhir. Cara menghindari race condition adalah dengan menjaga bagian critical section.