Implementasi Mekanisme Load Balancer dan Failover pada IoT Middleware berbasis Publish-Subscribe - Ahmad Naufal Romiz; Eko Sakti Pramukantoro; Widhi Yahya (Fakultas Ilmu Komputer (FILKOM), Universitas Brawijaya, 2019)
Previously, IoT middleware was built to overcome the problem of syntactical interoperability (silo). The IoT middleware was implemented on the Raspberry Pi. In addition, to make IoT middleware functions more scalable, cluster message edge storage was developed which can increase memory capacity on the IoT middleware node (Raspberry Pi engine). In that system, the entire message delivery process was limited to one IoT middleware node which function is as a broker. That results in unbalanced loads by stacking on one IoT middleware node. The problem of unbalanced loads, can be overcome by adding a load balancer on the system, with multiple IoT middleware as the aim of traffic load balancing. Round robin algorithm is used in the research as a traffic distribution method by load balancer. Load balancers are developed as a single entry point on a system. Two devices are used as load balancer. Keepalived is also implemented so that a failover mechanism in the node load balancer can be occured. Testing was carried out to determine the time process done by IoT middleware on publish and subscribe messages. In addition, the testing was also used to determine the number of messages per second which IoT middleware can handle. From the testing result, the average concurrent publish value of CoAP is 62 messages/second on a system without a load balancer and 63 messages/second on a system with a load balancer. The concurrent publish average value of MQTT is 41 messages/second on systems without load balancers and 73 messages/second on systems with load balancers. The concurrent subscribe average value is 37 messages/second on the system without a load balancer and 68 messages/second on the system with a load balancer.