Web Arsitektur
Pada minggu ini, saya akan kembali mereview matakuliah pemrograman web, dengan pelajaran berjudul "Web Arsitektur". Kalau mendengar kata arsitektur pasti rata-rata dalam bayangan teman-teman semua adalah sebuah design atau rancangan yaa.. Nah dalam web arsitektur, kurang lebih sama seperti itu, untuk mengetahui lebih lanjut, yuk kita bahas sama sama 😀
Definisi Web Arsitektur
> Suatu metode perencanaan dalam merancang situs web yang melibatkan teknis, estetika, dan fungsionalitas. Selain itu juga melibatkan sumberdaya dan batasan dalam pembuatannya.Komponen Web Arsitektur
Dalam Web Arsitektur terdapat 7 komponen di dalamnya yaitu :
1.Client
> Melakukan request/akses halaman, contohnya : web browser
2.Firewall
> Software yang mengatur jaringan internet dengan LAN perusahaan serta mengatur, mengamankan, dan memfilter komunikasi yang terjadi pada jaringan.
3.Proxy
> Berfungsi untuk menyimpan halaman website pada suatu cache dan user training.
4.Web Server
> Aplikasi yang menerima request dari client. Web server juga mendukung protokol aplikasi web seperti HHTP & HTTPS
5.Database Server
> Menyediakan akses ke database
6.Media Server
> Menyediakan layanan untuk akses media yang memiliki data besar, contohnya : audio dan video
7.Content Management Server
> Server yang menangani konten semi terstruktur yang dapat diakses oleh aplikasi, contoh : dokumen XML
Istilah-istilah umum dalam Web Arsitektur
1. Tier
> Tingkatan. Dengan metode n-Tier akan punya beberapa tingkatan didalamnya
2. Layer
> Memiliki aplikasi yang fungsinya sebagai antarmuka yang memungkinkan programmer untuk mengakses data yang ada di dalamnya (data layer). Contohya : Free table, basis data (Ms Access, DBF), basis data SQL atau berkas XML
3. Process
> Inti sebuah aplikasi. Pada layer ini kode SQL ditulis untuk dikirim ke lapisan data. Setelah data layer membalas dengan ngirim data yang diminta, baru data tersebut dikirim ke presentation layer (yang di tampilkan ke pengguna / interface nya)
Penggunaan MVC ini nantinya akan membagi developer aplikasi menjadi 3 bagian :
- Manipulasi data
- Interface
- Control
Perbedaan MVC dan N-Tier
MVC (Model, View , Control)
> merupakan pola yang paling sering digunakan oleh developer web
> Merupakan metode untuk membuat suatu aplikasi web dengan memisahkan antara :
- Model : Datanya. Perannya mengelola data, simpan, dan ambil entity yang digunakan apilasi dari sebuah database
- View : Tampilannya. Untuk menampilkan data yang sudah diolah oleh Model
- Control : Cara memprosesnya. Sebagai penghubung agar model dan view dapat bekerja sama
N-Tier
> Arsitektur client serveer dimana presentasi, pemrosesan aplikasi dan data fungsi manajemen secara logis dipisahkan.
1. 1 atau 2 Tier
> Single Tier : Semua komponen pada sistem dijalankan di komputer yang sama
Keuntungan
- Model sederhana
- Mudah digunakan user
- Sedikit alternatif
Kerugian
- Skala kecil
- Susah diamankan
- Tidak memungkinkan re-useable component & code
Contoh : suatu aplikasi yang dijalankan pada komputer desktop dan tersimpan dalam folder komputer itu juga.
> Two Tier : Konsep aplikasi ditempatkan pada komputer client dan mesin database dijalankan pada server jarak jauh.
Menggunakan 2 lapisan : client & server
Keuntungan
- Mudah
- Database ditangani secara khusus
- Relatif sederhana
Kerugian
- Skalabilitas kurang
- Tingkat keamanan sangat kurang
- Lebih mahal
Contoh : Aplikasi web berbasis database
2. 3 Tier
> Terdapat application server antara client dan database server
contoh : IIS, Websphere
implementasi : biasanya terkendala dengan network bandwidth
Keuntungan
- Indenpendensi (salah satu lapis, yang lain tidak ikut salah)
- Jika ada perubahan tidak mempengaruhi lapisan yang lain (baik server/client)
- Komunikasi web server dan database server optimal
Kerugian
- Perancangan susah
- Susah atur aplikasi
- Biaya mahal
3. N-Tier
> Metodenya mirip 3 tier, bedanya pada n-Tier diperjelas bagian user interface dan data processing.
> Mempunyai business logic server
Database server dan business logic server, merupakan Data Processing
Application server dan client, merupakan User Interface
Keuntungan
- Business logic mudah di implementasikan dan dipelihara
- Client bisa akses berbagai tipe DBMS yang beda beda secara transparant
- Bisa dikembangkan tanpa banyak program
- Bisa berjalan pada banyak sistem tanpa harus banyak ngubah program
Kerugian
- Query yang dilakuka harus panggil prosedur yang telah dibuat
- Biaya mahal
Sekian pembahasan mengenai WEB ARSITEKTUR pada minggu ini, jika ada kesalahan dalam menyampaikan informasi mohon maklum karena saya masih belajar. Terimakasih sudah membaca 😉😉
Tidak ada komentar:
Posting Komentar