A. Defenisi Arsitektur Web
Pendekatan secara teknis dalam membuat desain website yang menekankan pada sisi estetis dan fungsionalitasnya. Hal ini tentunya akan membutuhkan perhatian yang lebih konten website, business plan, kegunaan, dan juga interface desain arsitektur web.
B. MVC
MVC merupakan pola yang paling sering digunakan oleh developer website di seluruh dunia. Pola MVC memisahkan sebuah aplikasi, khusunya aplikasi website menjadi tiga bagian, yaitu.
- Model
Model berperan untuk mengelola data, menyimpan dan mengambil entity yang digunakan aplikasi dari sebuah database.
- View
View memiliki fungsi untuk menampilkan data yang sebelumnya diolah oleh model. Berhubungan kepada interface akhir aplikasi.
- Controller
Controller berguna sebagai penghubung agar model dan view dapat bekerka sama. Controller menerima request dari client, lalu memanggil model untuk melakukan operasi, kemudian mengirimkan data pada view. Akhirnya view akan menampilkan data tersebut dalam bentuk sebuah halaman html.
- Aliran Proses Kontrol
C. Komponen Arsitektur Web Dasar
- Client –> Merupakan pengguna browser yang mengoperasikan aplikasi web.
- Firewall –> Software atau aplikasi yang mengatur, mengamankan, dan memfilter komunikasi yang sedang terjadi pada jaringan.
- Proxy –> Digunakan untuk menyimpan halaman website pada suatu cache serta sebagai user tracking.
- Web Server –> Aplikasi yang menerima request dari client. Web server juga mendukung protokol aplikasi Web seperti HTTP dan HTTPS.
- Database Server –> Server yang menyediakan akses ke database.
- Media Server –> Komponen yang menyediakan layanan untuk akses media yang memiliki data besar, seperti audio dan video.
- Content Management Server –> Server yang menangani konten semi terstruktur yang dapat diakses oleh aplikasi. Misalnya dokumen XML.
D. Perbedaan MVC dan n-Tier
MVC merupakan metode untuk membuat sebuah aplikasi website dengan memisahkan antara data (model), tampilan (view), dan cara memrosesnya (controller). Dengan menggunakan MVC developer aplikasi akan memisahkan aplikasi, khususwa web menjadi beberapa bagian yaitu manipulasi data, interface, dan bagian pengendali (control).
Sedangkan N-Tier merupakan arsitektur client server dimana presentasi, pemrosesan aplikasi, dan data fungsi manajemen secara logis dipisahkan. Huruf n pada n-tier menunjukan variabel yang dapat berisi angka sebanyak apapun.
E. n-Tier
1. Istilah Umum
a. Tier –> Tier berarti tingkatan. Aplikasi dengan menggunakan metode n-Tier akan memiliki beberapa tingkatan di dalamnya.
b. Layer –> Layer memiliki aplikasi yang berfungsi sebagai antarmuka yang memungkinkan programmer untuk mengakses data yang ada di dalamnya (data layer). Data dapat berupa free table, basis data (MS Access, DBF), basis data SQL ataupun berkas XML. Aplikasi antarmuka bagi data tersebut merupakan aplikasi yang dapat membaca data.
c. Procces Process layer merupakan inti sebuah aplikasi. Dalam lapisan ini kode SQL ditulis untuk kemudian dikirimkan ke lapisan data. Setelah data layer membalas dengan mengirimkan data yang diminta maka, data tersebut dikirimkan ke presentation layer untuk ditampilkan ke pengguna.
2. Jenis
a. 1 atau 2 Tier
1 tier (single tier) memiliki konsep yaitu semua komponen pada sistem dijalankan di komputer yang sama. Keuntungannya adalah model yang sederhana, mudah digunakan pengguna (user) dan paling sedikit memiliki alternatif. Kerugian single tier adalah skalanya kecil, susah diamankan, tidak memungkinkan adanya re-usable component dan code. Contoh penggunaan single tier adalah suatu aplikasi yang dijalankan pada komputer desktop dan tersimpan pada folder di komputer tersebut.
2 tier (two tier) memiliki konsep aplikasi ditempatkan pada komputer client dan mesin database dijalankan pada server jarak-jauh. Dengan menggunakan konsep two tier, maka kita telah menggunakan dua lapisan, yaitu client dan server. Two tier memiliki keuntungan yaitu mudah, database ditangani secara khusus, dan relatif sederhana. Kerugiannya yaitu skalabilitas kurang, tingkat keamanannya sangat kurang, dan lebih mahal. Contohnya adalah aplikasi web berbasis database. Client akan melakukan request melalui web browser untuk mengakses databasenya. Lalu web server akan merespon request tersebut dengan mencari apakah database yang diminta ada atau tidak pada server.
b. 3 Tier
Terdapat application server yang antara client dan database server. Contoh dari Application server adalah IIS, WebSphere, dan sebagainya. Biasanya, implementasi arsitektur Three Tier terkendala dengan network bandwidth. Karena aplikasinya berbasiskan web, maka application server selalu mengirimkan Web. Keuntungan three tier adalah independensi (jika terjadi kesalahan pada salah satu lapisan tidak akan menyebabkan lapisan lain ikut salah), jika terjadi perubahan tidak memengaruhi lapisan yang lain baik server atau pun client, komunikasi web server dan database server optimal. Namun kerugiannya adalah lebih susuah dalam perancangannya, lebih susah untuk mengatur aplikasinya, dan juga biayanya lebih mahal.
c. N-Tier
Metodenya mirip dengan three tier. Bedanya, pada n-Tier akan diperjelas bagian user interface dan data processing. Yang membedakan arsitektur ini adalah dengan adanya business logic server. Database server dan bussines logic server merupakan bagian dari data processing, sedangkan application server dan client merupakan bagian dari use interface. Keuntungannya adalah bussiness logic yang mudah diimplementasikan dan dipelihara, client dapat mengakses berbagai tipe DBMS yang berbeda-beda secara transparan, dapat dikembangankan tanpa perlu banyak dari program (skalabilitas), dapat berjalan pada banyak sistem tanpa harus banyak mengubah program tersebut (probabilitas). Kerugiannya adalah query yang dilakukan harus memanggil prosedur yang telah dibuat, serta biaya yang lebih mahal.
Tidak ada komentar:
Posting Komentar