Professional Documents
Culture Documents
net/publication/315861457
CITATIONS READS
5 758
3 authors, including:
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Eko Didik Widianto on 05 October 2017.
Abstract – Popular websites such as Google as a balancer request proxy to deal with excessive
and Facebook must have an extremely large clients traffic requests. Arta [8] implemented a load
and providing such clients only with a single web balancing system using WRR (Weighted Round
server to serve such clients is absolutely Robin) algorithm. Jakupović [9] emulated the load
insufficient. To support service availability, two or balancing in a clustered environment using
more servers are required. This, however, needs a Virtualbox, GNS3, Haproxy and Hearbeat. Wang He
load balancing system. A load balancing server [10] explained the basic principle in using Heartbead
receives web traffic and distributes the requests to and DRBD to increase switching speed and stability.
such multiple servers. Load balancing can be Pribadi [11] implemented the Heartbeat on a VPN
implemented with a special hardware, software or a service to ensure the availability of VPN connection.
combination of both. The purpose of this research is This paper explored the performance
to develop a load balancing system with Haproxy as comparison between several algorithms on a
a software-based a load balancer and Heartbeat as combination of Haproxy and Heartbeat: Leastconn,
failover software. The results show that the average Round-Robin and Source algorithms, over unlimited
failover time when an active server down is 10ms. connections.
The Leastconn algorithm, in general, outperformed
the Round-Robin and Source algorithms in terms of II. SYSTEM DESIGN
connection rate, response time, throughput, and
failed connection. The environment for implementing 3 (three)
web servers as well as the load balancer Haproxy and
Keywords – Load Haproxy; Heartbeat; Leastconn Heartbeat can be seen in Table 1. The server is able to
Algorithm; Round-Robin Algorithm; Source replicate the database from the other servers and able
Algorithm to conduct synchronization with the other two
servers. The load balancing system may distribute
I. LITERATURE SURVEY traffic to the three servers.
Popular websites have a huge number of Table 1. Computer Specifications
clients to be served. To maintain a tolerable service
time, several servers must be provided behind a load Server
Component
balancer. Dite [1] compared the performance of two Load balancer Website
load balancer i.e., Haproxy and Pound Links to load Intel Pentium CPU Intel Pentium CPU
balance two web servers. Muhammad [2] employed Processor
G620 2.60 GHz E2200 2.20 GHz
Hearbeat on Ubuntu Linux and explained the design
Motherboard ECS H61H2-M12 HP FT917AA-AR6
of a failover system to overcome server failure to
maintain service availability. Mohammad [3] RAM 4 GB 4 GB
employed DBRD and Heartbeat in the FKIP UNS HDD 500 GB 320 GB
data center to minimize the risk of data loss and NIC 2 Fast Ethernet 1 Fast Ethernet
increase the serviceability of data. Kaushal [4]
explored the architectural design of virtual cloud
using Haproxy. The result showed the application Besides, one unit switch is used (Cisco Catalyst
server is able to recover the system only in several 2960) to interconnect computers, 1 laptop (Asus
milliseconds. Nanang [5] discussed the cluster system A43SD) functioned as client.
with failover capability using Heartbeat and tunneling The Haproxy and Heartbeat as well as the three
EOIP. The benefit of using tunneling is to make web servers are run on Ubuntu server 16.04 LTS x64.
possible the backup server located off-site. Nongki The database is backed by MySQL Server 5.7
[6] explained the testing of a cluster-based web load installed on the three Apache web servers. Unison is
distribution for both static and dynamic heavy HTTP employed to support file synchronization on web
requests. He compared the results of using the Least servers. It replicates files and directories at once and
Connection and Weighted Least Connection store to any different hosts or different hard drives.
algorithm. Noviyanto [7] implemented the Haproxy The Haproxy is used as a load balancer and mostly
used as a reverse proxy purposes, while the Heartbeat (1) webstress test without the use of a load balancer
is used for failover purposes to ensure a high web (affected by number of connection, connection rate,
service availability. A detailed physical topology of and timeouts).; and (2) webstress test employing the
this research can be seen in Figure 1 and the related load balancer with unlimited connections (Haproxy
logical topology can be seen in Figure 2. with Leastconn, Round-Robin, or Source algorithm).
Figure 3 shows the number of maximum
connections for scenario (1). Without a load balancer,
requests handled by every web server are different. In
this experiment only web server #1 handled least of
the requests in light traffic scenario.
(conn/s)
200
150
Fig. 1 Physical topology design
100
50
0
50
10
20
30
40
100
150
200
250
300
350
400
number of requests
(req/s)
100
150
200
250
300
350
400
Failed connections
(conn/s)
3000 300
2000 200
100
1000
0
0
50
10
20
30
40
100
150
200
250
300
350
400
20
400
10
30
40
50
100
150
200
250
300
350
number of requests
number of requests (req/s)
(req/s)
roundrobin leastconn source
roundrobin leastconn source
Fig. 5 Response time of every algorithm in scenario Fig. 7 Failed connections of every algorithm in
(2) scenario (2)
400
[2] M. T. Saenal, “Membangun High Availability
200 Cluster pada Web Server Dengan Sistem
Operasi Linux Ubuntu Server Menggunakan
0
Heartbeat,” Politeknik Telkom, 2012.
20
400
10
30
40
50
100
150
200
250
300
350