Comparative Study of Web Server Performance Testing with and without Docker Based on Virtual Machines - Ramadhan, Fajar Kurnia; Garno, Garno; Solehudin, Arip (Politeknik Negeri Batam, 2024)
Web server development is often hindered by the cost and resources required, as developing a web server typically requires a bare-metal server. Container technology, which allows for the development of multiple web servers on a single bare-metal server, has become popular. One of the most widely used containers is Docker. Docker reduces the need for costs and resources. Beyond the issues of cost and resource requirements, the performance of web servers also needs to be considered. The performance of web servers with and without Docker needs to be verified. This research aims to test the performance of two web servers, one using Docker and one not using Docker, utilizing the native hypervisor VMware ESXi. The web server performance test items in this study include CPU and RAM resource usage. The method for developing infrastructure systems uses SIDLC (System Infrastructure Development Life Cycle). Performance testing (Load Test) was conducted using Apache JMeter as a tool, with the manipulation of the number of threads predetermined. Resource usage information was monitored using Prometheus and Grafana. The research results show that with the same resources for each virtual machine, the CPU resource usage of Virtual Machine 2 (Undockerized) is less than that of Virtual Machine 1 (Dockerized). Meanwhile, RAM resource usage is not affected by the number of users on both virtual machines. Virtual Machine 2 (Undockerized) is better at handling HTTP requests. Virtual Machine 1 (Dockerized) can handle only 2,790 users, while Virtual Machine 2 (Undockerized) can handle more than 2,790 users without errors.