Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 2, No. 4, April 2018, hlm. 1457-1463
e-ISSN: 2548-964X http://j-ptiik.ub.ac.id
Perbandingan Performa Reverse Proxy Caching Nginx dan Varnish Pada Web Server Apache Muhammad Luthfi1, Mahendra Data2, Widhi Yahya3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email:
[email protected],
[email protected],
[email protected] Abstrak Web server sudah menjadi bagian yang penting bagi perusahaan, baik perusahaan yang sedang berkembang maupun yang baru memulai layanannya. Apache adalah aplikasi web server dengan penerimaan terbanyak di dunia. Akan tetapi Apache memiliki beberapa kekurangan salah satunya adalah Apache menjadi lamban pada saat permintaan yang masuk berjumlah besar. Salah satu cara untuk melakukan peningkatan performa web server Apache adalah dengan reverse proxy caching. Dari sekian banyak reverse proxy caching, Nginx dan Varnish memiliki reputasi tertinggi. Untuk mengetahui manajemen sumberdaya dan kualitas layanan revese proxy caching Nginx dan Varnish pada web server Apache akan diuji dengan mengirimkan sejumlah request ke web server. Hasilnya, kedua server dengan reverse proxy caching dapat mengungguli web server Apache tanpa reverse proxy caching pada penggunaan CPU dan latensi pada 3 pengujian pertama, sedangkan pada pengujian dengan beban berat server Apache tanpa reverse proxy caching memberikan latesi yang lebih kecil dibandingkan dengan server Apache tanpa revese proxy caching. Hasil perbandingkan antara reverse proxy caching Varnish dan Nginx yang dipasangkan pada web server Apache, memberikan hasil server Apache dengan reverse proxy caching Varnish memiliki performa yang lebih baik dibandingkan dengan server Apache dengan reverse proxy caching Nginx. Kata kunci: web server, apache, nginx, varnish, reverse proxy caching Abstract Web servers are now an essential part of both developing and newly started companies. Apache is the web application server with the most revenue in the world. Apache, however, has some drawbacks, one of which is that Apache is become slower when serving many requests continuously. One way to improve the performance of Apache web servers is by reverse proxy cahing. Of the many reverese proxy caching, Nginx and Varnish have the highest reputation. To find out the resource management and quality of service revese proxy caching Nginx and Varnish on the Apache web server will be tested by sending a number of requests to the web server. As a result, both servers with reverse proxy caching can outperform the Apache web server without reverse proxy caching on CPU usage and latency in the first 3 tests, whereas on Apache server load testing without reverse proxy caching it provides smaller latecy than Apache servers without revese Proxy cacahing. The comparison between Varnish reverse proxy caching and Nginx paired on the Apache web server, giving the Apache server results with reverse proxy caching Varnish performs better than the Apache server with Nginx reverse proxy caching. Keywords: web server, apache, nginx, varnish, reverse proxy caching al., 1999), termasuk bagi perusahaan yang ingin memulai layanan mereka, atau biasa disebut startup. Hal ini dikarenakan kinerja dari sebuah web server yang bagus sangat berpengaruh dalam kualitas layanan yang diberikan. Kualitas web server dapat dikatakan baik apabila mampu melayani setiap permintaan (request) dari pengguna secara cepat dan kecil kemungkinannya dalam melakukan kesalahan
1. PENDAHULUAN Seiring dengan berkembangnya teknologi informasi, jumlah situs yang meyajikan layanan web bagi pengguna Internet juga semakin bertambah. Jumlah situs yang terus meningkat mengakibatkan semakin banyak perusahaan dan organisasi yang bergantung pada kinerja web server untuk kesuksesan bisnis mereka (Hu, et Fakultas Ilmu Komputer Universitas Brawijaya
1457
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
(Kurniawan & Widiyanto, 2016). Saat ini, sudah banyak perusahaan yang menyediakan layanan web server. Dari sekian banyaknya penyedia layanan web server, berdasarkan survei yang diadakan oleh Netcraft pada Desember 2016, diketahui bahwa Apache merupakan web server yang paling banyak digunakan (Netcraft, 2017). Apache juga merupakan web server yang memiliki performa yang tinggi dan lebih unggul dibandingkan dengan berbagai web server berbasis UNIX lainnya baik dari segi fungsionalitas, efisiensi, dan kecepatan (Hu, et al., 1999). Salah satu cara dalam meningkatkan performa web server adalah dengan reverse proxy caching. Reverse proxy caching bertindak sebagai perantara antara aplikasi web dan client (Dély, 2014). Cara kerjanya adalah dengan menyimpan konten dari aplikasi dan meneruskan aplikasi tersebut ke pengguna. Apabila pengguna membutuhnya kembali maka konten yang disimpan pada server caching tidak akan diminta kembali ke web server. Hal ini untuk menghindari web server harus memproduksi konten baru terus-menerus pada setiap permintaan (Dély, 2014). Dalam menjalankan fungsinya, terdapat beberapa reverse proxy caching seperti Nginx, aiCatch, Lighttpd, Varnish, Squid, dan sebagainya. Di antara banyaknya reverse proxy caching yang tersedia, penggunaan Varnish dan Nginx masih menjadi yang paling banyak digunakan. Hal ini terbukti dengan digunakannya Varnish di beberapa situs terkenal di dunia seperti Facebook, Wikia dan Slashdot ( Poul & Kamp, 2010). Varnish sendiri mengalahkan performa dari Squid pada perusahaan koran Norwegia yang akhirnya mengganti 12 mesin yang menjalankan Squid dengan hanya 3 mesin yang dijalankan dengan Varnish. Sedangkan, performa dari Nginx pernah di teliti oleh (Chi, dkk., 2012) dimana hasil pengujiannya menunjukan hasil yang baik dan efektif untuk penggunaan web server yang tinggi. Penelitian ini bertujuan untuk memberikan dasar yang kuat dalam pemilihan reverse proxy caching dengan membandingkan kinerja dari reverse proxy caching Nginx dan Varnish. Performa dari keduanya akan dievaluasi dengan waktu respon yang diperlukan dalam memproses permintaan. Penggunaan CPU dan memori juga akan diperhatikan dalam melakukan evaluasi. Waktu respon diuji untuk melakukan evaluasi Fakultas Ilmu Komputer, Universitas Brawijaya
1458
terhadap web server dari sisi client. Sedangkan, penggunaan memori dan CPU merupakan faktor penting dalam menentukan dampaknya pada sumberdaya server antar aplikasi Berdasarkan banyak pertimbangan yang telah dijelaskan, maka peneliti mengusung sebuah penelitian yang berjudul “Perbandingan Performa Reverse Proxy Caching Nginx Dan Varnish Pada Web Server Apache”. Penelitian ini diharapkan dapat mengetahui perbandingan kinerja dari penggunaan reverse proxy caching Nginx dan Varnish pada web server Apache. 2. LANDASAN TEORI 2.1. Apache Web Server Web server merupakan entitas atau perangkat lunak pada suatu jaringan yang berfungsi untuk menyediakan objek dari suatu website kepada client. Secara ringkas, fungsi utama dari web server ialah sebagai tempat aplikasi web dan sebagai penerima request dari client (Warman & Zahni, 2013). Apache merupakan sebuah web server berbasis UNIX yang dapat digunakan secara bebas. Apache mendukung berbagai macam fitur dan banyak diimplementasikan sebagai modul yang dapat diintegrasikan dengan aplikasi lainnya untuk meningkatkan fungsionalitas inti aplikasi tersebut (Dedoimedo, 2011). 2.2. Reverse Proxy Caching Reverse proxy caching merupakan suatu perantara antara aplikasi web dengan client (Dély, 2014). Reverse proxy caching seringkali disebut juga dengan web server acceleration. Hal ini dikarenakan tujuan dari penggunaan reverse proxy caching adalah untuk mengurangi beban pada web server, baik yang menyediakan konten statis maupun dinamis (Visolve Squid Team, 2006). Reverse proxy caching diletakkan lebih dekat kepada web server daripada client (Nanda, 2015). Cara utama yang digunakan untuk meringankan beban web server yaitu dengan menggunakan cache antara server dan internet (Visolve Squid Team, 2006). 2.3. Nginx Nginx merupakan sebuah perangkat lunak open source yang berfungsi sebagai web server (Aivaliotis, 2013). Nginx menggunakan arsitektur asinkron yang berbasis event-driven
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
dalam menangani permintaan (request) (NGINX Software, 2017). Selain untuk web server, Nginx juga dapat digunakan untuk reverse proxy caching, load balancing, media streaming, dan lain sebagainya. Nginx terkenal dapat menangani koneksi yang bervolume tinggi. Karenanya, Nginx umumnya digunakan sebagai reverse proxy caching (NGINX Software, 2017). Pada saat client melakukan request, Nginx akan menerima request tersebut dan membuat sebuah kunci hash untuk kemudian disimpan ke dalam memori. Kemudian, Nginx akan mengecek apakah kunci hash yang dihasilkan terdapat dalam memori. Apabila tersedia, Nginx akan melayani request dengan mengambil file cache dari file sistem dan akan langsung diberikan kepada client tanpa perlu melibatkan web server. Jika kunci hash tidak tersedia dalam memori, reqeust akan diteruskan ke web server. Web server akan menanggapi request tersebut dan akan disimpan dalam file sistem untuk kemudian diteruskan ke client (Czeraszkiewicz, 2015). 2.4. Varnish Varnish merupakan sebuah reverse proxy HTTP yang juga biasa disebut sebagai akselerator HTTP atau akselerator web. Jika sebuah permintaan datang kepada Varnish, maka server akan mencoba melayani permintaan tersebut dengan memberikan sumberdaya yang dibutuhkan langsung dari cache. Jika cache tidak memiliki sumberdaya tersebut, maka Varnish server akan merespon permintaan cache. Jika Varnish tidak dapat memberikan jawaban atas permintaan oleh cache, maka permintaan akan diteruskan kepada backend. Kemudian setelah dari backend, Varnish mengambil jawaban atas permintaan tersebut yang kemudian akan diberikan kepada cache. Oleh cache, permintaan tersebut dikirimkan kepada client sesuai dengan yang diminta (Varnish, 2014). 3. METODOLOGI Tahapan yang dilakukan dalam penelitian ini yaitu studi literatur, analisis kebutuhan, perancangan lingkungan pengujian, implementasi, pengujian dan analisis, serta pengambilan kesimpulan. Alur metodologi penelitian dapat dilihat pada Gambar 1. Pengujian dalam penelitian ini memerlukan lingkungan yang terisolasi untuk mengumpulkan data dan melakukan perbandingan serta analisis. Fakultas Ilmu Komputer, Universitas Brawijaya
1459
Studi Literatur
Analisis Kebutuhan
Perancangan Lingkungan Pengujian
Implementasi Lingkungan Pengujian
Pengujian dan Analisis
Kesimpulan
Gambar 1 Alur Metodologi Penelitian
Proxy memerlukan web server untuk bertindak sebagai back-end dimana konten asli berasal dan menimum satu client untuk mengirimkan sejumlah permintaan. Desain sistem secara keseluruhan terdiri dari client, server, reverse proxy cache server, dan database seperti yang ditunjukkan oleh Gambar 2.
Gambar 2 Desain Sistem
4. HASIL DAN PEMBAHASAN Hasil perbandingan performa web server Apache dengan reverse proxy caching Nginx dan Varnish diperoleh dari pengujian yang dilakukan. Pengujian dalam penelitian ini dilakukan dalam 2 skenario pengujian, yaitu pengujian manajemen sumberdaya kemudian dilanjutkan dengan pengujian kualitas layanan atau Quality of Services (QoS) dari penggunaan Nginx dan Varnish pada web server Apache. Pada kedua pengujian, beban yang diberikan kepada setiap server dibagi ke dalam 3 kategori beban, yaitu full traffic, half traffic, dan quarter traffic. Banyaknya permintaan untuk maisng-masing kategori beban secara berurutan ialah sebanyak 2500, 1250, dan 625 permintaan
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
setiap menitnya. Request dilakukan hanya terhadap satu halaman web sehingga server akan mengulang halaman web yang diminta. Dalam pengujian tersebut juga dilakukan pengujian dengan konten berukuran besar. Cara yang dilakukan yaitu dengan mengirimkan request sebanyak 250 requests per menit yang dilakukan oleh 100 pengguna. Konten yang diakses adalah sebuah file gambar dengan ukuran 15.2Mb 4.1. Pengujian Manajemen Sumberdaya Pengujian pertama yang dilakukan yaitu pengujian manajemen sumberdaya. Pengujian ini dilakukan dengan cara melakukan monitoring sumberdaya (resources) dari web server. Pengujian ini bertujuan untuk mengetahui nilai RAM serta CPU yang digunakan dalam memproses permintaan. Hasil rata-rata penggunaan sumberdaya CPU dari ketiga web server ditunjukkan dalam bentuk grafik pada Gambar 3.
Gambar 3 Grafik Rata-Rata Penggunaan CPU
Hasil rata-rata penggunaan memori dari ketiga web server ditunjukkan dalam bentuk grafik pada Gambar 4. Kemudian, hasil pengujian sumberdaya untuk konten berukuran bear ditunjukkan pada Gambar 5.
Gambar 4 Grafik Rata-Rata Penggunaan Memori
Berdasarkan grafik pada Gambar 3, diketahui bahwa penggunaan sumberdaya CPU Fakultas Ilmu Komputer, Universitas Brawijaya
1460
pada web server Apache dengan reverse proxy caching selalu bernilai lebih rendah dan lebih unggul pada semua kategori pengujian dibandingkan dengan web server Apache tanpa reverse proxy caching. Hal ini dikarenakan penggunaan reversse proxy caching sehingga Apache tidak perlu menyusun request pada tiap permintaan yang datang secara berulang. Namun, Apache hanya perlu mengumpulkan file dinamis yang tidak disimpan oleh reverse proxy caching server. Grafik juga menunjukkan bahwa web server dengan reverse proxy caching Varnish lebih unggul dibandingkan dengan Nginx dalam penggunaan CPU. Ketertinggalan Nginx disebabkan karena algoritma pada caching Nginx tidak memperbolehkan konten yang disimpan berada pada memori RAM. Akibatnya, Nginx harus melakukan system call secara terus menerus untuk mendapatkan konten yang sebelumnya tersimpan. Sedangkan, algoritma Varnish memperbolehkan konten yang telah di-cache berada pada penyimpanan memori RAM.
Gambar 5 Grafik Rata-Rata CPU dan Memori untuk Konten Berukuran Besar
Kemudian, Gambar 4 menunjukkan bahwa memori yang digunakan oleh web server Apache tanpa reverse proxy caching justru menunjukkan hasil yang lebih kecil dibandingkan dengan web server Apache dengan reverse proxy caching menggunakan reverse proxy caching. Hal ini dikarenakan web server Apache yang menggunakan reverse proxy caching perlu menggunakan memori untuk menjalankan aplikasi tambahan, yaitu Varnish dan Nginx. Selain itu, penyebab utama kedua server yang di uji memiliki load memori yang lebih besar adalah pada setiap mesin harus menjalankan dua server sekaligus yang menyebabkan pembengkakan pada sisi memori. Kedua web server Apache dengan reverse proxy caching Nginx dan Varnish pun memiliki load memori yang tidak jauh berbeda. Hal ini
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
dikarenakan konten yang simpan pada tiap server tidak berubah sama sekali. Perubahan load memori pada Nginx dan Varnish tidak terlalu signifikan karena cara kerja keduanya adalah dengan menyimpan beberapa konten atau kunci hash pada memori. Dalam pengujian ini, konten yang digunakan untuk pengujian tidak terlalu banyak sehingga tidak terjadi perubahan yang signifikan pada memori load. Selanjutnya adalah pengujian dengan melakukan request pada konten yang besar. Hasilnya, nilai persentase CPU dari web server Apache memiliki rata-rata yang lebih tinggi dari kedua web server dengan reverese proxy caching. Hal ini berbanding terbalik dengan persentase memori web server Apache yang memiliki nilai yang cukup rendah dan baik. Persentase memori web server Apache yang menggunakan reverse proxy caching cukup tinggi. Hal ini disebabkan karena Apache tidak harus memanggil database MySQL yang merupakan penggunaan memori terbesar pada kasus sebelumnya. 4.2. Pengujian Kualitas Layanan Pengujian selanjutnya yaitu pengujian kualitas layanan atau Quality of Services (QoS) dari penggunaan Nginx dan Varnish untuk peningkatan performa web server Apache. Pada pengujian ini, sejumlah request yang terbagi ke dalam 3 kategori beban akan dikirimkan. Waktu respon yang didapat oleh client saat melakukan request sebuah halaman ke web server Apache kemudian akan dibandingkan baik dengan reverse proxy caching Nginx maupun Varnish. Hasil pengujian QoS untuk kategori full traffic ditunjukkan pada Gambar 6. Hasil pengujian QoS untuk kategori half traffic ditunjukkan pada Gambar 7. Hasil pengujian QoS untuk kategori quarter traffic ditunjukkan pada Gambar 8.
1461
dengan reverse proxy caching. Hal yang mempengaruhi nilai latensi tersebut adalah pembuatan thread worker pada server. Pada saat web server melayani sebuah permintaan, worker akan dibuat. Pembuatan worker tentunya membutuhkan waktu untuk pemrosesan. Dengan begitu, web server Apache tanpa reverse proxy caching akan lebih baik pada pengujian dengan request pada halaman yang berbeda-beda dan konten yang banyak. Hal ini dikarenakan web server Apache dengan reverse proxy caching akan meneruskan request ke web server Apache. Akhirnya, proses yang dibutuhkan oleh web server Apache dengan reverse proxy caching akan memakan waktu yang lebih lama. Pada Gambar 6 juga terlihat bahwa Nginx membutuhkan waktu yang lama dalam memroses request dibandingkan Varnish. Hal ini dikarenakan algortima dari Nginx yang mengaruskan pembuatan hash dari tiap konten yang akan disimpan dalam cache. Hasil dari nilai hash tersebut selanjutnya akan di simpan kedalam memori sementara kontennya akan disimpan ke disk. Sedangkan, Varnish menggunakan algoritma LRU yang memungkinkan proses penyimpanan konten ke dalam memori secara langsung. Hasilnya, latensi pada web server Apache dengan reverse proxy caching Varnish akan lebih rendah dibandingkan dengan web server Apache dengan reverse proxy caching Nginx. Hal ini tentunya dikarenakan kecepatan membaca memori lebih cepat dari pada kecepatan membaca pada disk. Algortima yang diterapkan pada Nginx juga akan membebani kinerja CPU dikarenakan Nginx tetap melakukan system call ke penyimpanan disk.
Gambar 7 Grafik Latensi untuk Half Traffic Gambar 6 Grafik Latensi untuk Full Traffic
Pada pengujian dengan kategori full traffic, web server Apache tanpa reverse proxy caching agaknya lebih baik daripada web server Apache Fakultas Ilmu Komputer, Universitas Brawijaya
Pada pengujian dengan kategori half traffic, seperti pada grafik pada Gambar 7, nilai latensi mengalami penurunan pada detik ke 18-23 dan naik kembali pada dua interval waktu berikutnya. Hal ini disebabkan oleh recycle
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1462
workers pada web server Apache yang dilakukan karena request pada detik tersebut tidak terlalu banyak. Sedangkan, pada interval waktu selanjutnya, request yang di terima oleh web server Apache kembali tinggi. Untuk membuat workers kembali, tentu membutuhkan sejumlah waktu yang mengakibatkan latensi naik kembali pada detik ke 23-33.
Gambar 9 Grafik Pengujian QoS untuk Konten Berukuran Besar
Gambar 8 Grafik Latensi untuk Quarter Traffic
Pada pengujian di kategori quarter traffic, web server Apache tetap memberikan konsistensi dalam hal latensi. Sedangkan, web server Apache dengan reverse proxy caching Varnish tetap stabil dengan nilai latensi paling rendah. Hal ini dikarenakan pada request per detik yang lebih kecil, workers yang dibuat oleh web server Apache lebih sederhana dibandingkan dengan web server Apache yang menggunakan Nginx. Pada reverse proxy caching Nginx, konten statis akan ditangani oleh workers, sedangkan konten dinamis akan ditangani langsung oleh workers web server Apache. Hal ini membuat request yang sedikit diproses secara terlalu panjang. Sedangkan pada reverse proxy caching Varnish, semua konten yang dibutuhkan pada satu halaman terdapat pada penyimpanan volatile yang tentunya proses akan dilakukan lebih cepat. Pada pengujian dengan kategori beban half traffic dan quarter traffic juga terlihat bahwa latensi pada web server Apache dengan reverse proxy caching Varnish cenderung lebih stabil dibandingkan dengan Nginx. Tingkat latensi tertinggi web server Apache dengan reverse proxy caching Varnish berada pada interval awal yang disebabkan pembuatan worker dari Apache. Nilai latensi yang dihasilkan oleh web server Apache dengan reverse proxy caching Varnish pun selalu lebih rendah dibandingkan dengan web server Apache dengan reverse proxy caching Nginx. Hal ini membuktikan bahwa algortima caching yang diterapkan oleh Varnish lebih efektif daripada Nginx. Fakultas Ilmu Komputer, Universitas Brawijaya
Pada Gambar 9 terlihat bahwa saat interval awal pengujian ketiga web server tidak memiliki nilai latensi yang tinggi dan bertolak belakang dengan pengujian sebelumnya. Hal ini disebabkan karena workers yang dibuat oleh web server tidak terlalu banyak mengingat nilai request yang tidak terlalu tinggi. Pelonjakan nilai latensi rata-rata terjadi pada interval akhir saja. Tentunya ini dikarenakan aplikasi penguji akan melakukan request lebih banyak pada akhir periode. Pada Gambar 9 juga terlihat nilai latensi web server Apache tanpa reverse proxy caching memiliki rata-rata latensi yang lebih rendah dibandingkan dengan web server Apache menggunakan reverse proxy caching. Hal ini disebabkan karena banyaknya request yang masuk akan di teruskan ke server backend dan server reverse proxy caching tidak akan melakukan cache dikarenakan ukuran konten yang terlalu besar. Hasilnya reverse proxy caching hanya akan memberatkan server backend dikarenakan fungsi reverse proxy caching yang tidak terpakai pada tiap request yang dilakukan. 5. KESIMPULAN Berdasarkan hasil pengujian dan analisis hasil penelitian terhadap perbandingan performa web server Apache dengan reverse proxy caching Nginx dan Varnish, maka dapat diambil beberapa kesimpulan, yaitu : 1. Dapat di simpulkan Kedua reverse proxy caching yang di uji terbukti memiliki manajemen sumberdaya perangkat keras CPU yang lebih baik daripa web server Apache tanpa reverse proxy caching. Tetapi pada penggunaan memory server Apache tanpa reverse proxy caching memiliki tingkat penggunaan memory yang lebih rendah daripada server Apache dengan reverse proxy cacahing. Daripada itu, dari semua pengujian yang di lakukan Varnish
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
2.
memiliki manajemen sumberdaya yang lebih baik daripada Nginx pada sisi penggunaan CPU dan bebeda sangat tipis pada penggunaan memory. Reverse proxy caching Varnish memberikan performa yang yang lebih baik daripada reverse proxy caching Nginx di setiap tahap pengujian. Sedangkan web server dengan reverse proxy cahing Nginx masih dapat menggunguli performa web server Apache tanpa reverse proxy caching pada beban 2500 request per menit dan 1250 request per menit.
6. DAFTAR PUSTAKA Aivaliotis, D., 2013. Mastering NGINX. Birmingham: Packt Publishing. Bakhtiyari, S., 2012. Performance Evaluation of the Apache Traffic Server and Varnish Reverse Proxies. Norway: University of OSLO. Czeraszkiewicz, M., 2015. Nginx Caching Tutorial - You Can Run Faster. [Online] Available at: http://czerasz.com/2015/03/30/nginxcaching-tutorial/#home [Accessed 21 Juli 2017]. Dedoimedo, 2011. Apache Web Server Complete Guide. [Online] Available at: www. dedoimedo.com [Accessed 21 Juli 2017]. Dély, T. L., 2014. Caching HTTP : A comparative study of caching reverse proxies Varnish and Nginx (Student Paper). Högskolan i Skövde: University of Skovde. Hu, Y., Nanda, A. & Yang, Q., 1999. Measurement, Analysis and Performance Improvement of the Apache Web Server. IEEE International Performance, Computing and Communications Conference, pp. 261267. Iyengar , A. & Challenger, J., 1997. Improving Web Server Performance by Caching Dynamic Data. Proceedings of the USENIX Symposium on Internet Technologies and Systems. Kurniawan, H. & Widiyanto, E. P., 2016. Analisis Peningkatan Performa Akses Website dengan Web Server Stress Tool. Jatisi, 2(2), pp. 108-119. Nanda, P. S. S. &. S. G., 2015. A Review of Web
Fakultas Ilmu Komputer, Universitas Brawijaya
1463
Caching Techniques and Caching Algorithms for Effective and Improved Caching. International Journal of Computer Applications , 128(10), pp. 41-45. Netcraft, 2017. December 2016 Web Server Survey. [Online] Available at: https://news.netcraft.com/archives/2016 /12/21/december-2016-web-serversurvey.html NGINX Software, 2017. What is NGINX. [Online] Available at: https://www.nginx.com/ Poul & Kamp, H., 2010. You're Doing It Wrong. ACM Queue, 8(6), pp. 1-8. Varnish, S., 2014. www.varnish-cache.org. [Online] Available at: https://varnishcache.org/docs/4.0/tutorial/introduction. html [Accessed 12 July 2017]. Visolve Squid Team, 2006. Implementing Reverse Proxy Using Squid. s.l.:Visolve Open Source Solutions. Warman, I. & Zahni, A., 2013. Rekayasa Web Untuk Pemesanan Handphone Berbasis Jquery Pada Permata Cell. Jurnal Momentum, Volume 15, pp. 30-38.