Implementasi Load Balancer Pada Flask Web App Untuk Meningkatkan Performansi Web Server - Silvia, Helen; Gusti Amri Ginting, Jafar; Arifwidodo, Bongga (eProceedings of Engineering, 2025)
Server merupakan perangkat yang menyediakanlayanan, baik dalam bentuk hardware maupun software.Adanya server memungkinkan untuk penyediaan sumber dayaseperti data. Fungsi lain dari server adalah menjadi tempatmelakukan deploy aplikasi web. Suatu server, sebaiknya diaturagar memiliki availability atau ketersediaan sehingga ketikaclient membutuhkan data atau ingin mengakses aplikasi web,layanan akan tetap tersedia. Salah satu cara untuk menjagaavailability server adalah dengan mengimplementasikan loadbalancer. Load balancer merupakan layanan yang dapatmendistribusikan traffic ke beberapa server sehingga servertertentu tidak akan kelebihan beban. Load balancer yanglayanannya dapat digunakan antara lain adalah NGINX,dengan metode round-robin, least-connection, dan ip-hash.Setiap metode memiliki cara kerja yang berbeda-beda dandapat dianalisis Quality of Service-nya untuk menentukanmetode yang cocok. Selain itu, ketersediaan server dapatdimonitoring secara real-time menggunakan Grafana danPrometheus untuk memastikan jika server bekerja dengan baikatau ada kendala yang perlu diatas. Untuk itu, dilakukanimplementasi load balancer pada flask web app untukmeningkatkan performansi web server, serta mengintegrasikandengan layanan Grafana dan Prometheus agar dapatdimonitoring. Berdasarkan hasil penelitian, diketahui bahwaload balancer dapat membagi traffic ke 3 VM menggunakanmetode round robin, least connection, dan IP hash, sertadimonitoring pada dashboard Grafana dengan data sourcePrometheus. Dari ketiga metode, throughput terbesarmenggunakan metode IP hash (0,571 Mbps Flask C) dan roundrobin (0,215 Mbps Flask A, 0,281 Flask B, 0,241 Flask C). Lalupacket loss terkecil menggunakan metode least connection(0,5% Flask A, 0,3% Flask B, 0,4% Flask C). Kemudian delayterkecil menggunakan metode round robin (7,362 ms Flask A,5,549 ms Flask B, 7,992 Flask C). Terakhir jitter terkecilmenggunakan metode round robin (4,092 ms Flask A, 1,735 msFlask B, 3,822 Flask C).Kata kunci: load balancer, flask, nginx, grafana, Prometheus.