ANALISIS PERBANDINGAN PERFORMA WEB SERVER APACHE DAN NGINX MENGGUNAKAN HTTPERF PADA VPS DENGAN SISTEM OPERASI CENTOS NASKAH PUBLIKASI

Loading....

Loading....

Loading....

Loading....

Loading....

Teks penuh

(1)

ANALISIS PERBANDINGAN PERFORMA WEB SERVER APACHE

DAN NGINX MENGGUNAKAN HTTPERF PADA VPS DENGAN

SISTEM OPERASI CENTOS

NASKAH PUBLIKASI

diajukan oleh

Fariq Adnan

12.11.6594

kepada

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM YOGYAKARTA

YOGYAKARTA

2016

(2)
(3)

1

ANALISIS PERBANDINGAN PERFORMA WEB SERVER APACHE DAN

NGINX MENGGUNAKAN HTTPERF PADA VPS DENGAN SISTEM

OPERASI CENTOS

Fariq Adnan1), Kusnawi),

1) Teknik Informatika STMIK AMIKOM Yogyakarta

Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283

Email : fariq.a@students.amikom.ac.id1), khusnawi@amikom.ac.id2)

Abstract: Web server and database performance as a media content provider is expected to always be able to meet all the needs of the user. If not taken seriously, this could result in servers are overloaded demand (request) from the user. It makes the selection of the best-performing web server becomes very important. There is two open source web-based server that is most widely used Apache and Nginx. Methods of testing the performance of web server on a VPS to perform the test with the subject Static Web, Images, PHP, WordPress and Online Store. Benchmark used is Httperf to determine the performance of a web server based on the parameters reply time and throughput. Based on the reply time parameter Nginx web server is faster in responding to requests on the subject of static web, images and Wordpress. The Apache web server is superior in terms of bandwidth on the subject of static web, images, PHP and online store.

Keywords: performance, web server, Apache, Nginx, Httperf.

1. Pendahuluan

1.1 Latar Belakang

Dunia internet di jaman globalisasi sekarang ini sudah sangat berkembang, siapapun, kapanpun dan di manapun, internet dapat diakses dengan syarat memiliki alat dan koneksi yang memadai. Dalam mengakses suatu halaman web, terdapat hubungan dua arah yaitu klien dengan server. Pada komputer klien harus ada web browser untuk dapat mengakses suatu halaman web, sedangkan Komputer server harus terdapat web server. Kinerja web server yang baik akan mempengaruhi kualitas hubungan dua arah antara computer klien dan server.

Web server merupakan software yang memberikan layanan berbasis data yang berfungsi menerima permintaan dari HTTP atau HTTPS pada web browser dan mengirimkan kembali yang hasilnya dalam bentuk beberapa halaman web atau berbentuk dokumen HTML. Terdapat dua web server berbasis open source yang paling banyak digunakan yaitu Apache dan Nginx. Kinerja web server dan database sebagai media penyedia konten diharapkan selalu dapat memenuhi semua kebutuhan dari pengguna. Jika tidak ditanggapi dengan serius, ini bisa saja berakibat pada server-server yang kelebihan beban permintaan (request) dari pengguna. Hal ini disebabkan permintaan dari pengguna lebih besar

dari kemampuan server untuk memberikan layanan. Dampak ini tentu tidak diinginkan oleh beberapa pemilik website yang semua aktivitasnya sudah ketergantungan dengan jaringan komputer. Oleh karena itu, pemilik website akan kebingungan dalam memilih layanan server yang tepat untuk dapat meminimalisir pengeluaran. Sayangnya, setiap hari permintaan layanan dari pengguna selalu meningkat. Hal ini tentu saja berhubungan dengan semakin banyaknya perangkat-perangkat yang dapat menggunakan fasilitas internet seperti komputer, notebook, netbook, smartphone, tablet, dan perangkat lainnya.

Banyaknya kelebihan dan beberapa kekurangan yang dimiliki oleh web server apache dan nginx, maka penulis ingin meneliti dengan membandingkan performa dari kedua web server tersebut menggunakan aplikasi benchmark httperf pada vps dengan sistem operasi CentOS.

1.2 Rumusan Masalah

Adapun rumusan masalah yang diperoleh dari latar belakang permasalahan ini adalah bagaimana cara membandingkan performa dari web server apache dan nginx pada vps dengan menggunakan sistem operasi CentOS, untuk mengetahui web server apa yang lebih baik untuk digunakan?

1.3 Tujuan Penelitian

Tujuan dari penelitian ini dimaksudkan untuk mengetahui perbandingan performa web server apache dan nginx pada vps dengan sistem operasi CentOS. 2. Landasan Teori

2.1 Pengertian Web Server

Web server adalah perangkat lunak yang menjadi tulang belakang dari world wide web (www). Web server menunggu permintaan dari client yang menggunakan browser seperti Netscape Navigator, Internet Explorer, Mozilla, dan program browser lainnya. Jika ada permintaan dari browser, maka web server akan memproses permintaan itu kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke browser.[1]

2.2 VPS (Virtual Private Server)

Virtual Private Server lebih dikenal dengan singkatan VPS. Ini adalah sebuah metode untuk mempartisi sebuah

(4)

2 komputer server menjadi beberapa server yang sepertinya server-server tersebut berdisi sendiri. Ia seolah-olah sebagai server mandiri dan berlaku benar-benar seperti layaknya sebuah computer. Meskipun kenyataannya dalam satu computer terdapat beberapa account VPS, namun satu account dengan account lain tidak akan saling mempengaruhi.[2]

2.3 CentOS

CentOs (singkatan dari Community ENTerprise Operating System) adalah distribusi dari linux open source yang diberikan kepada public oleh Red Hot untuk Red Hot Enterprise Linux (RHEL). Dengan demikian, tujuan fungsional linux CentOs adalah untuk dapat kompatibel dengan RHEL. Proyek CentOS diutamakan dalam pengubahan paket untuk menghapus upstream vendor branding dan artwork.[3]

2.4 Apache

Apache HTTP Server Project merupakan upaya kolaborasi pengembangan software yang bertujuan untuk menciptakan web server yang kuat, mempunyai keistimewaan dan bebas tersedia. Proyek ini dikelola bersama oleh sekelompok sukarelawan yang terletak di seluruh dunia, menggunakan internet dan web untuk berkomunikasi, merencanakan, dan mengembangkan server serta dokumentasi yang terkait. Proyek ini merupakan bagian dari Apache Software Foundation. Selain itu, ratusan pengguna telah menyumbangkan ide-ide, kode, dan dokumentasi untuk proyek.[4]

2.5 Nginx

Dimitri Aivaliotis mengemukakan bahwa Nginx pertama kali disusun menjadi HTTP. Nginx merupakan salah satu software web server yang powerful dan mempunyai performa tinggi, selain itu Nginx juga di desain untuk server dengan sumber daya yang kecil. Nginx di rancang untuk mengatasi masalah C10K yang dijelaskan oleh Daniel Kegel di (http://www.kegel.com/c10k.html). Maksud dari C10K adalah merancang web server untuk menangani 10.000 koneksi simultan, Nginx juga mampu melakukan hal ini melalui mekanisme event-based connection-handling, tetapi harus menggunakan sistem operasi yang mendukung mekanisme tersebut.[5]

2.4 HTTPEFT

Httperf adalah alat untuk mengukur kinerja web server. Ini menyediakan fasilitas yang fleksibel untuk menghasilkan berbagai beban kerja HTTP dan untuk mengukur kinerja server. Fokus httperf tidak pada pelaksanaan satu patokan tertentu, tetapi pada penyediaan alat yang kuat, kinerja tinggi yang memfasilitasi pembangunan kedua mikro dan makro-tingkat benchmark. Tiga karakteristik yang membedakan dari httperf adalah ketahanan, yang mencakup kemampuan untuk menghasilkan dan mempertahankan kelebihan Server, dukungan untuk HTTP / 1.1 dan SSL

protokol, dan diperpanjang untuk generator beban kerja baru dan pengukuran kinerja.[6]

3. Metode Penelitian

3.1 Gambaran Umum

Metodelogi penelitian yang digunakan dalam penelitian ini adalah kuantitatif karena data yang didapatkan dinyatakan dalam bentuk angka-angka dan data hasil uji coba. Metode penelitian kuantitatif digunakan untuk meneliti pada populasi atau sampel tertentu. Teknik pengambilan sampel pada umumnya dilakukan secara random, pengumpulan data menggunakan instrumen penelitian, analisis data bersifat kuantitatif/statistik dengan tujuan untuk menguji hipotesis yang telah ditetapkan. Metode ini disebut metode kuantitatif karena data penelitian berupa angka-angka dan analisis menggunakan statistik.

Metode pengumpulan data yang digunakan adalah metode uji coba/eksperimen dan metode studi pustaka. Dimana teori-teori yang didapatkan berasal dari ebook, skripsi, dan jurnal penelitian. Metode Analisis data yang dilakukan menggunakan metode deskriptif dan metode komparasi.

Langkah-langkah pada penelitian secara umum sebagai berikut, pertama adalah mempersiapkan VPS dan OS. Operating System yang digunakan dalam penelitian ini adalah CentOS 6.7 dengan arsitektur 32-bit dan spesifikasi VPS yang digunakan akan dijelaskan pada Analisis Kebutuhan. Kedua instalasi web server Apache dan Nginx beserta aplikasi benchmark Httperf. Terakhir merupakan inti dari penelitian ini yaitu analisis performa web server Apache dan Nginx yang akan dilakukan pengujian terhadap subjek yang sudah ditentukan secara bergantian.

3.2 Parameter Pengujian

Pengujian kinerja web server apache dan web server nginx menggunakan dua parameter yang sudah tersedia pada aplikasi benchmark httperf. Kedua parameter tersebut adalah Reply Time dan Throughput.

Sebelum melakukan pengujian, peneliti menentukan beban pengujian terhadap web server Apache dan web server Nginx. Beban diberikan sesuai dengan kapasitas spesifikasi VPS. Berikut beban jumlah koneksi (num-conns) dan jumlah permintaan per detik (rate) yang diberikan oleh peneliti.

Tabel 1. Beban Pengujian

Jumlah Koneksi (num-conns)

Jumlah Permintaan per detik (rate) 100 10 500 50 1000 100 3.3 Subjek Penelitian 1. Web Statis 2. Gambar

(5)

3 3. PHP

4. Wordpress 5. Toko Online

4. Hasil dan Pembahasan

Hasil analisis data yang diperoleh merupakan gambaran dari seluruh hasil kegiatan penelitian. Pengujian akan dilakukan sebanyak kepada setiap subjek berdasarkan beban-beban pengujian yang sudah ditentukan. Data hasil penegujian akan dipaparkan dalam bentuk diagram batang.

Metode yang digunakan peneliti dalam analisis data adalah metode deskriptif. Metode deskriptif adalah metode dengan mendeskripsikan hasil pengujian perbandingan web server Apache dan web server Nginx.

Parameter yang digunakan dalam pengujian perbandingan performa web server Apache dan web server Nginx adalah Reply Time dan Throughput. Parameter reply time diambil dari response reply time hasil uji menggunakan httperf, dan throughput diambil dari Net I/O pada hasil uji httperf. Hasil penelitian setiap subjek akan dibagi menjadi dua berdasarkan parameter tersebut. Beban yang akan diberikan pada setiap subjek dalam pengujian performa web server Apache dan web server Nginx antara lain, num-conns atau jumlah koneksi keserver sebesar 100, 500 dan 1000, rate atau jumlah permintaan perdetik adalah sebersar 10, 50 dan 100.

Gambar 1.Hasil Pengujian Web Server

Pada web statis hasil data pada parameter reply time menjadikan web server Nginx mengungguli web server Apache dalam kecepatan merespon permintaan. Pada setiap beban yang diuji web server Nginx selalu lebih cepat dari web server Apache. Pada parameter throughput web server Apache mempunyai bandwidth lebih besar dibandingkan dengan web server Nginx.

Uji file gambar web server Nginx juga lebih cepat dalam merespon permintaan dari pada web server Apache. Rata-rata hasil uji reply time berdasarkan beban-beban yang sudah ditentukan menghasilkan data reply time web server Nginx lebih sedikit dibandingkan dengan reply time milik web server Apache. Hasil data parameter throughput menyebutkan bahwa web server Apache lebih besar dibandingkan dengan web server Nginx.

Hasil uji file PHP sederhana dengan hanya menampilkan text dan tanggal hari ini mempunyai nilai reply time web server Apache lebih kecil dibandingkan dengan web server Nginx pada beban-beban tertentu. Web server Nginx lebih cepat dalam merespon permintaan hanya pada 3 beban yaitu pada saat 100 koneksi dengan 10 req.s, 100 koneksi dengan 50 req/s dan 500 koneksi dengan 10 req/s, sisanya web server Apache lebih cepat dalam merespon permintaan dibandingkan dengan web server Nginx. Pada parameter throughput web server Apache selalu lebih besar bandwidthnya dibandingkan dengan web server Nginx.

Pada subjek wordpress nilai reply time masing-masing web server sangat besar, dengan nilai terkecil adalah 57.24 ms yang dimiliki oleh web server Nginx pada beban 1000 koneksi dengan 10 req/s. Jarak antara hasil reply time web server Apache dengan web server Nginx sangat besar pada beban 500 koneksi dan 1000 koneksi. Dapat dilihat pada beban 1000 koneksi dengan 50 req/s, web server Apache memiliki waktu rata-rata merespon permintaan sebesar 29751.96 ms sangat jauh perbedaannya dibandingkan dengan waktu rata-rata yang diperoleh web server Nginx yaitu sebesar 7220.08 ms. Pada beban yang sama di parameter throughput juga sangat mencolok yaitu web server Apache memiliki rata-rata sebesar 3.84 KB/s, sedangkan web server Nginx memiliki rata-rata throughput sebesar 20.06 KB/s. Maka kesimpulan yang didapatkan bahwa web server Nginx sangat unggul dalam merespon permintaan dan mempunyai bandwidth lebih besar dibandingkan dengan web server Apache pada subjek wordpress.

Berdasarkan subjek toko online web server Apache lebih unggul dalam merespon permintaan dengan mempunyai rata-rata reply time lebih sedikit pada setiap bebannya dibandingkan dengan rata-rata reply time milik web server Nginx. Pada parameter throughput web server Apache juga memiliki bandwidth lebih besar dibandingkan dengan web server Nginx, walaupun selisih rata-rata kedua web server sedikit.

(6)

4

5. Kesimpulan dan Saran

5.1Kesimpulan

Setelah melakukan pengujian terhadap web server Apache dan web server Nginx berdasarkan parameter reply time dan throughput terhadap subjek web statis, gambar, PHP, wordpress dan toko online, maka peneliti mengambil kesimpualnya sebagai berikut

1. Web server Nginx lebih cepat dalam merespon permintaan pada subjek web statis, gambar dan wordpress.

2. Web server Apache lebih cepat merespon permintaan PHP dan toko online, tetapi pada PHP web server Apache kalah cepat dalam merespon permintaan pada beban 100 koneksi dengan 10 dan 50 req/s dan 500 koneksi dengan 10 req/s.

3. Web server Apache lebih unggul dalam segi bandwidth pada subjek web statis, gambar, PHP dan toko online.

4. Throughput pada subjek wordpress memiliki selisih besar pada 500 dan 1000 koneksi, dan web server Nginx memiliki bandwidth lebih banyak pada wordpress.

5.2Saran

Penulis berharap kepada pembaca, bahwa setelah membaca penelitian ini diharapkan mampu memilih web server yang menurut pembaca baik untuk digunakan. Harapan penulis dalam penelitian selanjutnya sebagai berikut :

1. Dapat menambah subjek penelitian dengan halaman web yang lebih komplek

2 .Dapat meningkatkan spesifikasi VPS pengujian agar mampu menampung beban yang lebih besar.

3. Menambah metode analisis data dengan menggunakan uji T / T-Test.

Daftar Pustaka

[1] Lukitasari, D dan Ahmad Fali Oklilas. 2010. Analisis Perbandingan Load Balancing Web Server Tunggal Dengan Web server Cluster Menggunakan Linux Virtual Server. Universitas Sriwijaya. Vol.5 No.2 (Juli 2010)

[2] Alamsyah, Fahrizal dan SmitDev Community. 2009. E-Business Memb.Bisnis Hosting & Domain buku. Jakarta: PT Elex Media Komputindo.

[3] Anonim. https://www.centos.org/about/ diakses pada tanggal 27 Mei 2016.

[4] Apache Software Foundation. 2010. Apache HTTP Server 2.2 Official Documentation - Volume I. Fultus Corporation. U.S.

[5] Aivaliotis, Dimitri. 2013. Mastering NGINX. Birmingham: Packt Publishing Ltd.

[6] Anonim. https://github.com/httperf/httperf diakses pada tanggal 30 Mei 2016

Biodata Penulis

Fariq Adnan, memperoleh gelar Sarjana Komputer (S.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2016.

Kusnawi, memperoleh gelar Sarjana Komputer (S.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta. Memperoleh gelar Master of Engineering (M.Eng) Program Pasca Sarjana Magister Teknologi Informasi Fakultas Teknik Elektro Universitas Gajah Mada Yogyakarta. Saat ini menjadi Dosen di STMIK AMIKOM Yogyakarta.

Figur

Memperbarui...

Referensi

Memperbarui...

Related subjects :