The Design Principles of Intelligent Load Balancing for Scalable WebSocket Services Used with Grid Computing

V.A. Alexeev, Pavel Domashnev, Tamara Lavrukhina, O.A. Nazarkin · Procedia Computer Science · 2019

Large-scale grid compute projects may use computational capabilities of web browser sessions on numerous client devices to run distributed data processing algorithms. WebSocket protocol is the basis of duplex communications between browser worker nodes. Publish/Subscribe pattern defines communication scheme for client-server messaging. The downside of WebSocket-based Publish/Subscribe implementations is the stateful nature of long-living network connections. This aspect makes WebSocket scaling and load balancing a challenging task. In present work, we state that the intelligent balancer needs to consider different behavior types of client connections. We propose the negotiation-like mechanism between client and the load balancing system about the target server to set the client on. Our construction principles of scalable multi-server infrastructure with effective inter-server communications intensively use Redis instances, because Redis is a mature, well-tested, high performance system, rich of functions.

Read the paper · More papers on PaperTik