Abstract
For fine-grain microservices, queue-waiting-time is defined as load index of a server for the first time. However, as internet traffic is bursty, queue-waiting-time is not merely calculated by adding up the normal service time of queued requests due to resource contention. Moreover, normal service time changes over time especially for database-driven web applications. Therefore, an adaptive load balancing algorithm is required. This paper focuses on load balancing algorithms under differentiated requests and heterogeneous servers. In order to solve the tuning problem in load balancing, an online learning algorithm of time-weight (OLTW) is designed, which can learn the time-weight of request adaptively. Based on OLTW, a shortest queue-waiting-time load balancing algorithm (SQLB) is then proposed, in this algorithm, an incoming request is dispatched to the server with shortest queue-waiting-time. The experimental results show that 80% prediction values of OLTW have relative error of less than 25%, and SQLB outperforms the classical load balancing algorithms in terms of throughput, mean response time and deadline drop rate.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Lewis, J., Fowler, M.: Microservices (2014). http://martinfowler.com/articles/microservices.html
Jenkins, J., Shipman, G.: A case study in computational caching microservices for HPC. In: IEEE Parallel and Distributed Processing Symposium Workshops, pp. 1309–1316 (2017)
Taibi, D., Lenarduzzi, V.: Processes, motivations, and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput. 4(5), 22–32 (2017)
Ask Jeeves. http://www.ask.com
Teoma search. http://www.teoma.com
Zhou, J., Zhang, C.: Request-aware scheduling for busy internet services. In: IEEE International Conference on Computer Communications, pp. 1–11 (2006)
Gilly, K., Juiz, C.: An up-to-date survey in web load balancing. World Wide Web-Internet Web Inf. Syst. 14(2), 105–131 (2011)
Shen, K., Yang, T.: Cluster load balancing for fine-grain network services. In: IEEE Parallel and Distributed Processing Symposium (2002)
Zhang, W., Wang, H., Yu, B.: A request distribution algorithm for web server cluster. J. Netw. 6, 1760–1766 (2011)
Casalicchio, E., Tucci, S.: Static and dynamic scheduling algorithms for scalable web server farm. In: IEEE Parallel and Distributed Processing, pp. 369–376 (2001)
Zhang, L., Li, X.P.: A Content-based dynamic load-balancing algorithm for heterogeneous web server cluster. Comput. Sci. Inf. Syst. 7, 153–162 (2010)
Sharifian, S., Motamedi, S.A.: An approximation-based load-balancing algorithm with admission control for cluster web servers with dynamic workloads. J. Supercomput. 53, 440–463 (2010)
Singh, H., Kumar, S.: WSQ: web server queueing algorithm for dynamic load balancing. Wirel. Pers. Commun. 80, 229–245 (2015)
Acme Air sample and benchmark. https://github.com/acmeair/acmeair
Ueda, T., Nakaike, T., Ohara, M.: Workload characterization for microservices. In: IEEE International Symposium on Workload Characterization, pp. 1–10 (2016)
Ogasawara, T.: Workload characterization of server-side JavaScript. In: IEEE International Symposium on Workload Characterization, pp. 13–21 (2014)
Park, G., et al.: Adaptive load balancing mechanism for server cluster. In: Gavrilova, M.L., et al. (eds.) ICCSA 2006. LNCS, vol. 3983, pp. 549–557. Springer, Heidelberg (2006). https://doi.org/10.1007/11751632_60
Awada U.: Improving resource efficiency of container-instance clusters on clouds. In: IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 929–934 (2017)
Paxson, V.: Fast approximation of self-similar network traffic. ACM SIGCOMM Comput. Commun. Rev. 27, 5–18 (1997)
Lee, J.Y., Kim, S.: Bandwidth optimization for internet traffic in generalized processor sharing servers. IEEE Trans. Parallel Distrib. Syst. 16(4), 324–334 (2005)
Jin, X.: Performance analysis of priority scheduling mechanisms under heterogeneous network traffic. J. Comput. Syst. Sci. 73(8), 1207–1220 (2007)
Silva, R.A.C.D., Fonseca, N.L.S.D.: Topology-aware virtual machine placement in data centers. J. Grid Comput. 14, 75–90 (2016)
Tars, Tencent corporation (2017). https://github.com/Tencent/Tars
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Liu, X., Jin, Y., Song, Y., Zhao, X. (2018). Queue-Waiting-Time Based Load Balancing Algorithm for Fine-Grain Microservices. In: Ferreira, J., Spanoudakis, G., Ma, Y., Zhang, LJ. (eds) Services Computing – SCC 2018. SCC 2018. Lecture Notes in Computer Science(), vol 10969. Springer, Cham. https://doi.org/10.1007/978-3-319-94376-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-94376-3_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-94375-6
Online ISBN: 978-3-319-94376-3
eBook Packages: Computer ScienceComputer Science (R0)