Skip to main content
Log in

Toward scalable Web systems on multicore clusters: making use of virtual machines

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Limited by the existing design pattern, a lot of existing softwares have not yet taken full use of multicore processing power, incurring low utilization of hardware, even a bottleneck of the whole system. To address this problem, in this paper, we propose a VM-based Web system on multicore clusters. The VM-based Web system is scheduled by Linux Virtual Server (LVS) and we implement the web server with Tomcat. In the mean time, we develop VNIX, a set of VM management toolkit, to facilitate managing VMs on clusters, aiming at improving the usage of multicore CPU power. To reduce resources contention among VMs, we propose to deploy LVS schedulers distributively on different physical nodes. To evaluate our approach, we conduct extensive experiments to compare VM-based Web system with classical physical machine-based Web system. Our experimental results demonstrate that the proposed VM-based Web system can result in throughput improvements of up to three times compared with the same multicore clusters, with an error rate at the server side as low as 20% of that of classic systems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Andrews DL, Niehaus D, Jidin R, Finley M, Peck W, Frisbie M, Ortiz JL, Komp E, Ashenden PJ (2004) Programming models for hybrid fpga-cpu computational components: a missing link. IEEE MICRO 24(4):42–53

    Article  Google Scholar 

  2. Apparao P, Makineni S, Newell D (2006) Characterization of network processing overheads in xen. In: Proceedings of the second international workshop on virtualization technology in distributed computing. IEEE, New York

    Google Scholar 

  3. Balakrishnan S, Rajwar R, Upton M, Lai K (2005) The impact of performance asymmetry in emerging multicore architectures. In: Proceedings of the 32nd international symposium on computer architecture. IEEE Computer Society, New York

    Google Scholar 

  4. Barham P, Dragovic B, Fraser K, Hand S, Harris T (2003) Xen and the art of virtualization. In: Proceedings of the 19th ACM symposium on operating systems principles. ACM, New York, pp 164–177

    Google Scholar 

  5. Boyd-Wickizer S, Chen H, Chen R, Mao Y, Kaashoek F, Morris R, Pesterev A, Stein L, Wu M, Dai Y, Zhang Y, Zhang Z (2008) Corey: an operating system for many cores. In: Proceedings of the 8th USENIX symposium on operating systems design and implementation. USENIX Association

    Google Scholar 

  6. Cardellini V, Casalicchio E, Colajanni M, Yu PS (2002) The state of the art in locally distributed web-server systems. ACM Comput Surv 34(2):263–311

    Article  Google Scholar 

  7. Cardellini V, Colajanni M, Yu PS (1999) Dynamic load balancing on web-server systems. IEEE Internet Comput 3(3):28–39

    Article  Google Scholar 

  8. Cherkasova L, Gardner R (2005) Measuring cpu overhead for i/o processing in the xen virtual machine monitor. In: Proceedings of 2005 USENIX annual technical conference, pp 387–390. USENIX

    Google Scholar 

  9. Dongarra J, Gannon D, Fox G, Kennedy K (2007) The impact of multicore on computational science software. CTWatch Q 3:3–10

    Google Scholar 

  10. Hu L, Jin H, Liao X, Xiong X, Liu H (2008) Magnet: a novel scheduling policy for power reduction in cluster with virtual machines. In: Proceeding of 2008 IEEE international conference on cluster computing cluster, 2008. IEEE Computer Society, New York, pp 13–22

    Google Scholar 

  11. Irwin D, Chase J, Grit L, Yumerefendi A, Becker D, Yocum KG (2006) Sharing networked resources with brokered leases. In: Proceedings of USENIX technical conference. USENIX

    Google Scholar 

  12. Iyengar A, Challenger J (1997) Improving web server performance by caching dynamic data. In: Proceedings of 1997 USENIX annual technical conference. USENIX

    Google Scholar 

  13. Iyengar A, Challenger J, Dias DM, Dantzig P (2000) High-performance web site design techniques. IEEE Internet Comput 4(2):17–26

    Article  Google Scholar 

  14. Jiang H, Iyengar A, Nahum E, Segmuller W, Tantawi A, Wright CP (2009) Load balancing for sip server clusters. In: Proceedings of the 28th conference on computer communications. IEEE, New York

    Google Scholar 

  15. Jin H (2004) Chinagrid: making grid computing a reality. In: Digital libraries: international collaboration and cross-fertilization. Lecture notes in computer science. Springer, Berlin, pp 13–24

    Chapter  Google Scholar 

  16. Karger DR, Ruhl M (2004) Simple efficient load balancing algorithms for peer-to-peer systems. In: Proceedings of ACM symposium on parallelism in algorithms and architectures. ACM, New York

    Google Scholar 

  17. Lim B-H, Bianchini R (1996) Limits on the performance benefits of multithreading and prefetching. In: Proceedings of the ACM SIGMETRICS. ACM, New York, pp 37–46

    Google Scholar 

  18. Liu H, Wee S (2009) Web server farm in the cloud: performance evaluation and dynamic architecture. In: Proceedings of CloudCom 2009. LNCS, vol 5931. Springer, Berlin

    Google Scholar 

  19. McDowell L, Eggers S, Gribble S (2003) Improving server software support for simultaneous multithreaded processors. In: ACM SIGPLAN symposium on principles and practice of parallel programming. PPoPP 03 ACM, New York

    Google Scholar 

  20. Menon A, Santos JR, Turner Y, Janakiraman GJ, Zwaenepoel W (2005) Diagnosing performance overheads in the xen virtual machine environment. In: Proceedings of the 1st international conference on virtual execution environments. ACM, New York, pp 13–23

    Chapter  Google Scholar 

  21. Moretti C, Steinhaeuser K, Thain D, Chawla NV (2008) Scaling up classifiers to cloud computers. In: Proceedings of IEEE international conference on data mining. IEEE, New York

    Google Scholar 

  22. Mosberger D, Jin T (1998) httperf—a tool for measuring web server performance. ACM SIGMETRICS Perform Eval Rev 26(3):31–37

    Article  Google Scholar 

  23. Nae V, Iosup A, Podlipnig S, Prodan R, Epema D, Fahringer T (2008) Efficient management of data center resources for massively multiplayer online games. In: Proceedings of the 2008 ACM/IEEE conference on supercomputing. IEEE, New York

    Google Scholar 

  24. Nishimura H, Maruyama N, Matsuoka S (2007) Virtual clusters on the fly—fast, scalable, and flexible installation. In: Proceedings of the seventh IEEE international symposium on cluster computing and the grid. IEEE, New York

    Google Scholar 

  25. O’Rourke P, Keefe M (2001) Performance evaluation of Linux virtual server. In: Proceedings of 15th USENIX large installation system administration conference (LISA), pp 79–92. USENIX

    Google Scholar 

  26. Padala P, Shin PG, Zhu P, Uysal P, Wang Z, Singhal P, Merchant A, Salem P (2007) Adaptive control of virtualized resources in utility computing environments. In: Proceedings of Eurosys07. ACM, New York, pp 289–302

    Google Scholar 

  27. Qian H, Miller E, Zhang W, Rabinovich M, Wills CE (2007) Agility in virtualized utility computing. In: Proceedings of the 3rd international workshop on virtualization technology in distributed computing. ACM, New York

    Google Scholar 

  28. Shi X, Pazat J-L, Rodriguez E, Jin H, Jiang H (2008) Dynasa: adapting grid applications to safety using fault-tolerant methods. In: Proceedings of the 17th international symposium on high-performance distributed computing. HPDC2008, ACM, New York, pp 237–238

    Chapter  Google Scholar 

  29. Sotomayor B, Montero RS, Llorente IM, Foster I (2009) Virtual infrastructure management in private and hybrid clouds. In: Internet computing. IEEE, New York, pp 14–22

    Google Scholar 

  30. Sotomayor B, Keahey K, Foster I (2008) Combining batch execution and leasing using virtual machines. In: Proceedings of IEEE/ACM international symposium on high performance distributed computing (HPDC). ACM, New York, pp 87–96

    Google Scholar 

  31. Wells PM, Chakraborty K, Sohi GS (2006) Hardware support for spin management in overcommitted virtual machines. In: Proceedings of the 15th PACT. IEEE Computer Society, New York

    Google Scholar 

  32. Wood T, Shenoy PJ, Venkataramani A, Yousif MS (2007) Black-box and gray-box strategies for virtual machine migration. In: Proceedings of the 4th symposium on networked systems design and implementation. NSDI 2007. pp 164–177. USENIX

    Google Scholar 

  33. Yang G, Jin H, Li M, Xiao N, Li W, Wu Z, Wu Y, Tang F (2004) Grid computing in china. J Grid Comput 2(2):193–206

    Article  Google Scholar 

  34. Zhang Q, Riska A, Sun W, Smirni E, Ciardo G (2005) Workload-aware load balancing for clustered web servers. IEEE Trans Parallel Distrib Syst 16(3):219–233

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xuanhua Shi.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Shi, X., Jin, H., Jiang, H. et al. Toward scalable Web systems on multicore clusters: making use of virtual machines. J Supercomput 61, 27–45 (2012). https://doi.org/10.1007/s11227-011-0623-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-011-0623-3

Keywords

Navigation