Selasa, 06 Oktober 2015

Tulisan 'Arsitektur Client-Server'

A). Arsitektur Sisi Client
Klien-server atau 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.
Arsitektur Client merujuk pada pelaksanaan atau penyimpanan data pada browser (atau klien) sisi koneksi HTTP. JavaScript adalah sebuah contoh dari sisi klien eksekusi, dan cookie adalah contoh dari sisi klien penyimpanan.
Ada beberapa karakteristik dari sisi klien pada umunya sudah kita ketahui, yaitu :
1.      Pihak klien selalu memulai permintaan/permohonan ke pihak server
2.      Setelah mengirim permintaan, kemudian klien akan menunggu balasan atau  jawaban atas permintaannya dari server
3.      Menerima balasan dari server atas permintaannya 
4.      Biasanya klien akan terhubung ke sejumlah kecil dari server pada satu waktu
5.      Biasanya berinteraksi langsung dengan end-user (pengguna akhir) dengan
menggunakan user interface (antarmuka pengguna)
6.      Khusus jenis klien mencakup web browser, email klien dan online chat klien

B).  Arsitektur Sisi Server
Sebuah eksekusi sisi server adalah server Web khusus eksekusi yang melampaui standar metode HTTP itu harus mendukung. Sebagai contoh, penggunaan CGI script sisi server khusus tag tertanam di halaman HTML; tag ini memicu tindakan terjadi atau program untuk mengeksekusi.
Sama dengan sisi klien (client side), sisi server (side server) juga memiliki karakteristik seperti di bawah ini :
1.      Sebagai penyedia layanan, sisi server akan selalu menunggu permintaan dari
sisi klien
2.      Sesuai dengan tugasnya, melayani dan menjawab permintaan data yang
diminta oleh klien
3.      Sebuah server dapat berkomunikasi dengan server lain untuk melayani
permintaan klien
4.      Jenis server khusus mencakup web server, FTP server, database server, email
server, file server, print server. Mayoritas dari web layanan tersebut juga merupakan jenis server.
 
C). Kolaborasi Arsitektur Sisi Client Dan Server.

Ada beberapa model arsitektur klien-server ini yang umum, yaitu

1. Arsitektur mainframe
2. Arsitektur file-sharing
3. Arsitektur client/server

Arsitektur client server dapat dibedakan menjadi 3 model, yaitu single-tier (satu lapis), two-tier (dua lapis) dan three-tier (3 lapis).
Berikut penjeLasan dari ketiga modeL arsiTektur cLient server tersebut di atas :

Arsitektur Single-tier (Satu Lapis)

Semua komponen produksi dari sistem dijalankan pada komputer yang sama pada arsitektur single tier ini. Model single tier adalah model yang sederhana, mudah digunakan pengguna (user) dan paling sedikit memiliki alternatif. Kelemahan dari arsitektur ini adaLah kurang aman dan kurang memiliki skalabilitas.
Keuntungan arsitektur standalone (one-tier):
·         Sangat mudah
·         Cepat dalam merancang dan mengaplikasikan
Kelemahan arsitektur standalone (one-tier):
·         Skala kecil
·         Sulit diamankan
·         Menyebabkan perubahan terhadap salah satu komponen diatas tidak mungkin dilakukan, karena akan mengubah semua bagian.
·         Tidak memungkinkan adanya re-usable component dan code.

Arsitektur Two-tier (Dua Lapis)
  

Pengolahan  informasi pada arsitektur ini dapat dibagi menjadi dua, yaitu sistem user interface (antarmuka pengguna) lingkungan dan lingkungan server manajemen database. Arsitektur two tier memiliki tingkat kemanan yang lebih tinggi dan terukur daripada arsitektur single-tier. Arsitektur ini memiliki database pada computer yang terpisah dan hal tersebut menyebabkan arsitektur ini dapat meningkatkan kinerja keseluruhan situs.Arsitektur two- tier memiliki keLemahan, yaitu biayanya yang mahal, arsitekturnya yang kompleks, tidak adanya pembaruan kode, skalabilitasnya kurang dan tingkat kemanannya kurang.
Di samping itu, kelebihan dari arsitektur two tier adalah mudah digunakan oleh pengguna, dapat menangani database server secara khusus dan bisnis lingkup kecil sangat cocok menggunakan arsitektur ini.
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 Three-tier (tiga Lapis)

  Karena arsitektur sebelumnya memiliki cukup banyak kelemahan, maka dikembangkanlah arsitektur three tier ini yang akan membantu mengatasi kelemahan dari arsitektur two-tier. Kelebihan dari arsitektur ini adalah memiliki skala yang besar, transfer informasi antara web server dan server database optimal, tidak akan menyebabkan lapisan lain terkontaminasi salah jika salah satu lapisan terdapat keslahan. Dan kekurangannya, arsitektur ini lebih sulit untuk merancang, lebih sulit untuk mengatur dan lebih mahal.

>> Kelebihan arsitektur Three Tier :
·         Segala sesuatu mengenai database terinstalasikan pada sisi server, begitu pula dengan pengkonfigurasiannya. Hal ini membuat harga yang harus dibayar lebih kecil.
·         Apabila terjadi kesalahan pada salah satu lapisan tidak akan menyebabkan lapisan lain ikut salah
·         Perubahan pada salah satu lapisan tidak perlu menginstalasi ulang pada lapisan yang lainnya dalam    hal ini sisi server ataupun sisi client.
>> Skala besar.
·         Keamanan dibelakang firewall.
·         Transfer informasi antara web server dan server database optimal.
·         Komunikasi antara system-sistem tidak harus didasarkan pada standart internet, tetapi dapat  menggunakan protocol komunikasi yang lebvih cepat dan berada pada tingkat yang lebih rendah.
·         Penggunaan middleware mendukung efisiensi query database dalam SQL di pakai untuk menangani pengambilan informasi dari database.
>> Kekurangan arsitekture Three Tier :
·         Lebih susah untuk merancang
·         Lebih susah untuk mengatur
·         Lebih mahal
Dibagi dalam 2 bagian Arsitektur yaitu :

Arsitektur Client Side
Merujuk pada pelaksanaan data pada browser sisi koneksi HTTP. JavaScript adalah sebuah contoh dari sisi eksekusi client dan contoh dari sisi penyimpanan pada client adalah cookie.

Karakteristik :
- Memulai terlebih dahulu permintaan ke server.
- Menunggu dan menerima balasan.
- Terhubung ke sejumlah kecil server pada waktu tertentu.
- Berinteraksi langsung dengan pengguna akhir, dengan menggunakan GUI.

Arsitektur Server Side
Pada server side, ada sebuah server Web khusus yang bertugas mengeksekusi perintah dengan menggunakan standar metode HTTP. Misalnya penggunaan CGI script pada sisi server yang mempunyai tag khusus yang tertanam di halaman HTML. Tag ini memicu terjadinya perintah untuk mengeksekusi.

Karakteristik :
- Menunggu permintaan dari salah satu client.
- Melayani permintaan klien dan menjawab sesuai data yang diminta oleh client.
- Suatu server dapat berkomunikasi dengan server lain untuk melayani permintaan client.
- Jenis-jenisnya : web server, FTP server, database server, E-mail server, file server, print server.

Tidak ada komentar:

Posting Komentar