Konsep Web Statis dan Web Dinamis Perograman Web
Konsep Web Statis dan Web Dinamis Perograman Web Cosmas Haryawan STMIK AKAKOM
Pemrograman Internet Vs Pemrograman Web • Pemrograman Internet: pemrograman aplikasi berbasis internet (aplikasi internet) • Aplikasi internet merupakan suatu jenis aplikasi yang menerapkan arsitektur sistem terdistribusi dengan menggunakan internet sebagai media komunikasi antar komponennya • Keyword: – Sistem terdistribusi – Komunikasi via internet 2
Sistem Terdistribusi • Jenis arsitektur sistem terdistribusi: – Client-server: sistem dibagi menjadi komponen yang berfungsi sebagai peminta layanan (client) dan pemberi layanan (server), server bersifat dedicated – Peer-to-peer: sistem terdiri atas komponen yang fungsinya setara dan dapat saling melayani atau meminta layanan, server bersifat nondedicated • Pada prinsipnya, arsitektur peer-to-peer juga merupakan arsitektur client-server di mana setiap komponennya dapat mempunyai fungsi sebagai client sekaligus server terhadap komponen lain 3
Arsitektur Client Server 4
Keunggulan Client Server • Kecepatan akses lebih tinggi karena penyediaan fasilitas jaringan dan pengelolaannya dilakukan secara khusus oleh satu komputer (server) yang tidak dibebani dengan tugas lain seperti sebagai workstation. • Sistem keamanan dan administrasi jaringan lebih baik, karena terdapat sebuah komputer yang bertugas sebagai administrator jaringan, yang mengelola administrasi dan sistem keamanan jaringan. • Sistem backup data lebih baik, karena pada jaringan client-server backup dilakukan terpusat di server, yang akan membackup seluruh data yang digunakan di dalam jaringan. 5
Kelemahan Client Server • Biaya operasional relatif lebih mahal. • Diperlukan adanya satu komputer khusus yang berkemampuan lebih untuk ditugaskan sebagai server. • Kelangsungan jaringan sangat tergantung pada server. Bila server mengalami gangguan maka secara keseluruhan jaringan akan terganggu. 6
Arsitektur Peer to peer 7
Keunggulan Peer To Peer • Antar komputer dalam jaringan dapat saling berbagipakai fasilitas yang dimilikinya seperti: harddisk, drive, fax/modem, printer. • Biaya operasional relatif lebih murah dibandingkan dengan tipe jaringan client-server, salah satunya karena tidak memerlukan adanya server yang memiliki kemampuan khusus untuk mengorganisasikan dan menyediakan fasilitas jaringan. • Kelangsungan kerja jaringan tidak tergantung pada satu server. Sehingga bila salah satu komputer/peer mati atau rusak, jaringan secara keseluruhan tidak akan mengalami gangguan. 8
Kelemahan Peer To Peer • Troubleshooting jaringan relatif lebih sulit, karena pada jaringan tipe peer to peer setiap komputer dimungkinkan untuk terlibat dalam komunikasi yang ada. Di jaringan client-server, komunikasi adalah antara server dengan workstation. • Unjuk kerja lebih rendah dibandingkan dengan jaringan clientserver, karena setiap komputer/peer disamping harus mengelola pemakaian fasilitas jaringan juga harus mengelola pekerjaan atau aplikasi sendiri. • Sistem keamanan jaringan ditentukan oleh masing-masing user dengan mengatur keamanan masing-masing fasilitas yang dimiliki. • Karena data jaringan tersebar di masing-masing komputer dalam jaringan, maka backup harus dilakukan oleh masing-masing komputer tersebut. 9
Komunikasi Via Internet 10
Contoh Aplikasi Berbasis Internet • Web (protokol aplikasi: HTTP) • E-mail (IMAP, POP, SMTP) • Chatting – open standard: IRC – non standard: YM, ICQ, MSN chat, AOL, dll • • File transfer (FTP) Remote terminal (telnet) Web service (SOAP) Voice (Vo. IP) • Catatan: – “Aplikasi” dalam konteks judul di atas mengacu pada level protokol dan dapat disebut juga sebagai “Layanan Internet”. Aplikasi dalam konteks “software” (misalnya aplikasi “web browser”) dapat mengakses atau menyediakan salah satu atau beberapa Layanan Internet di atas. 11
Aplikasi Berbasis Internet vs Berbasis Web • Aplikasi berbasis Internet – Menggunakan protokol aplikasi yang sudah ada atau mendefinisikan protokol sendiri – Aplikasi di sisi server berkomunikasi langsung dengan client – Aplikasi di sisi client dapat berupa aplikasi yang berdiri sendiri atau ditempelkan dalam aplikasi lain • Aplikasi berbasis Web – Menggunakan protokol HTTP – Aplikasi di sisi server berkomunikasi dengan client melalui web server – Aplikasi di sisi client umumnya berupa web browser • Jadi, Aplikasi berbasis Web (client/server-side script) berjalan di atas Aplikasi berbasis Internet (web client/server software) 12
Teknologi Pembangun Aplikasi Web • • Web client (web browser) Web server URL : Uniform Resource Locator HTTP : Hyper. Text Transfer Protocol HTML : Hyper. Text Markup Language CSS : Cascading Style Sheet Pemrograman. Web – CGI, eksekusi program di sisi server – server side scripting – client side scripting – plug-in, eksekusi program di sisi client 13
Cara Kerja Aplikasi Web user mengetik URL di browser menghubungi server yang tersebut pada URL setelah terhubung, browser mengirimkan HTTP request server menjawab dengan mengirim HTTP response (berisi header dan isi dokumen) • untuk dokumen yang terdiri atas beberapa file (misalnya dokumen bergambar), browser harus mengirimkan HTTP request lagi untuk setiap file • browser menampilkan semua isi dokumen kepada user • • 14
Web Client • Web browser – – merupakan suatu software dijalankan pada komputer user sebuah perangkat navigasi di dalam web menampilkan dokumen web • Perangkat lunak web browser yang populer saat ini : – – – MS Internet Explorer (Windows) Mozilla Firefox , Opera, Chrome (Windows & Linux) Opera (Windows & Linux) Safari(Mac) lynx, berbasis teks (Linux) 15
Web Server • web server – merupakan suatu software – dijalankan pada komputer server – berfungsi agar dokumen web yang disimpan di server dapat diakses oleh user di internet • Perangkat lunak web server yang populer : – Apache (Linux & Windows) – MS Internet Information Server / IIS (Windows) – Tomcat, untuk Java (Windows & Linux) 16
Jenis Pemrograman Web (eksekusi di sisi server) • CGI, eksekusi program di sisi server(perl, C) – Web server menjalankan file program dan mengambil keluarannya untuk dijadikan HTTP response • server side scripting (PHP, ASP, JSP, Phyton) – Web server mengidentifikasi dan menjalankan skrip program yang disisipkan dalam dokumen web dan menempatkan keluarannya sebagai bagian dari dokumen web (berbentuk HTML) 17
Jenis Pemrograman Web (eksekusi di sisi Client) • client side scripting (Java. Script, JScript, VBScript) – Web browser mengidentifikasi dan menjalankan skrip program yang disisipkan dalam dokumen web (yang diterima dari server), dan dapat meng-update tampilan dokumen web di komputer user tanpa mengirimkan request baru kepada web server • plug-in, eksekusi program di sisi client (applet, Active. X, Flash) – Web browser menjalankan file program dengan bantuan plug-in viewer/player dan menyediakan suatu area di dalam dokumen web sebagai tempat menampilkan antarmuka program tersebut 18
Konsep Pemrograman Web • Pemrograman web: membuat aplikasi berbasis web • Aplikasi berbasis web: Aplikasi yang dibuat dengan memanfaatkan mekanisme dan aplikasi yang sudah ada pada sistem web (WWW) • Sistem web sebenarnya merupakan aplikasi yang: – berarsitektur client-server • software web browser di sisi client • software web server di sisi server – menggunakan protokol HTTP dalam komunikasi antara client dan server – mempunyai fungsi untuk mengambil/menjalankan isi file dokumen web di server dan menampilkannya di sisi client 19
Kelebihan dan Kekurangan Pemrograman Web • Kelebihan: – Dapat diakses kapan pun dari mana pun selama ada web browser – Dapat diakses hanya dengan menggunakan web browser (umumnya sudah tersedia di PC, PDA, dan handphone terbaru), tidak perlu menginstall aplikasi client khusus • Kekurangan: – Antarmuka yang dapat dibuat terbatas sesuai spesifikasi standar untuk membuat dokumen web dan keterbatasan kemampuan web browser untuk menampilkannya – Terbatasnya kecepatan jaringan mungkin membuat respon aplikasi menjadi lambat 20
Web Statis • Website yang didalamnya tidak terdapat suatu campur tangan dari pengunjung selain melihat saja • Dalam website statis tidak dibutuhkan bahasa pemrograman dan tidak berhubungan dengan database. • Dalam pengupdate-an tiap halamannya juga dilakukan tidak secara langsung dalam website tetapi dilakukan penulisan contentnya secara manual oleh web master. 21
Web Statis (lanjutan) 22
Web Statis (lanjutan) • Website statis adalah website yang kontennya statis yang berarti tidak / jarang berubah-rubah. • Website statis ini disusun dari html yang antar halamannya dihubungkan dengan hyperlink tanpa pemrograman disisi server karena tujuannya adalah ’sebatas’ menampilkan informasi di internet. • Aplikasi dari website statis sering kali ditemukan di website company profile, personal profile, website penawaran produk, dan semua website yang bertujuan melakukan komunikasi satu arah dari pemilik website ke pengunjung tanpa diperlukan interaksi. 23
Web Dinamis • Website yang didalamnya terdapat campur tangan dari sisi pengunjung atau sistem yang lain, dengan kata lain terdapat interaktivitas didalam website itu, karena dalam website tersebut terdapat pemrograman dan unsur database. Sehingga pengupdate-an akan lebih mudah dan bisa dilakukan secara real time, atau online 24
Web Dinamis (lanjutan) 25
Web Dinamis dalam Cient Server • Dalam Client Server, web dinamis masuk dalam Three Tier, dengan posisi middleware (php, dll) di bagian Application logic / Business Layer 26
Web Dinamis (lanjutan) • Website dinamis memiliki program yang bekerja di sisi server untuk memanage perubahan data yang ditampilkan oleh website dinamis tersebut. • Konten dari website tersebut bisa berubah apabila ada isian data dari pengunjung atau ada update data dari sistem yang lain. • Contoh website dinamis adalah : portal berita, social networking, web penjualan online, dll. 27
Perbedaan Web Statis dan Web Dinamis Web Statis Web Dinamis Interaksi antara pengunjung dengan pemilik web Tidak ada. Pengunjung hanya baca/lihat Ada, pengunjung bisa memberikan komentar, buku tamu, transaksi, pengisian forum Adanya script language yang digunakan Tidak ada Ada pemrograman di sisi server pemrograman di server, seperti PHP, ASP, dll hanya HTML Penggunaan database Tidak Menggunakan basis data seperti My. SQL, postgre. SQL, dll untuk menyimpan dan memproses data. Content Hanya diberikan oleh pemiliki web/web master dan jarang diupdate Bisa berasal dari pengunjung atau dari sistem lain dan sering diupdate 28
- Slides: 28