skip to main content
article

Analytic modeling of multitier Internet applications

Published:01 May 2007Publication History
Skip Abstract Section

Abstract

Since many Internet applications employ a multitier architecture, in this article, we focus on the problem of analytically modeling the behavior of such applications. We present a model based on a network of queues where the queues represent different tiers of the application. Our model is sufficiently general to capture (i) the behavior of tiers with significantly different performance characteristics and (ii) application idiosyncrasies such as session-based workloads, tier replication, load imbalances across replicas, and caching at intermediate tiers. We validate our model using real multitier applications running on a Linux server cluster. Our experiments indicate that our model faithfully captures the performance of these applications for a number of workloads and configurations. Furthermore, our model successfully handles a comprehensive range of resource utilization---from 0 to near saturation for the CPU---for two separate tiers. For a variety of scenarios, including those with caching at one of the application tiers, the average response times predicted by our model were within the 95% confidence intervals of the observed average response times. Our experiments also demonstrate the utility of the model for dynamic capacity provisioning, performance prediction, bottleneck identification, and session policing. In one scenario, where the request arrival rate increased from less than 1500 to nearly 4200 requests/minute, a dynamic provisioning technique employing our model was able to maintain response time targets by increasing the capacity of two of the tiers by factors of 2 and 3.5, respectively.

References

  1. Abdelzaher, T. and Bhatti, N. 1999. Web content adaptation to improve server overload behavior. In Proceedings of the World Wide Web Conference (WWW8). Tornoto, Canada. Google ScholarGoogle Scholar
  2. Abdelzaher, T., Shin, K. G., and Bhatti, N. 2002. Performance guarantees for Web server end-systems: A control-theoretical approach. IEEE Trans. Parall. Distrib. Syst. 13, 1. Google ScholarGoogle Scholar
  3. Appleby, K., Fakhouri, S., Fong, L., Goldzmidt, M. K. G., Krishnakumar, S., Pazel, D., Pershing, J., and Rochwerger, B. 2001. Oceano---SLA-based management of a computing utility. In Proceedings of the IFIP/IEEE Symposium on Integrated Network Management.Google ScholarGoogle Scholar
  4. Arlitt, M. and Jin, T. 1999. Workload characterization of the 1998 world cup Web site. Tech. rep. HPL-1999-35R1, HP Labs.Google ScholarGoogle Scholar
  5. Benani, M. and Menasce, D. 2005. Resource allocation for autonomic data centers using analytic performance models. In Proceedings of IEEE International Conference on Autonomic Computing (ICAC'05). Seattle, WA. Google ScholarGoogle Scholar
  6. Chandra, A., Gong, W., and Shenoy, P. 2003. Dynamic resource allocation for shared data centers using online measurements. In Proceedings of the 11th International Workshop on Quality of Service (IWQoS'03). Monterey, CA. Google ScholarGoogle Scholar
  7. Chandra, A., Goyal, P., and Shenoy, P. 2003. Quantifying the benefits of resource multiplexing in on-demand data centers. In 1st Workshop on Algorithms and Architectures for Self-Managing Systems.Google ScholarGoogle Scholar
  8. Chase, J., Anderson, D., Thakur, P., and Vahdat, A. 2001. Managing energy and server resources in hosting centers. In Proceedings of the 18th Symposium on Operating Systems Principles (SOSP'01). Google ScholarGoogle Scholar
  9. Chase, J. and Doyle, R. 2001. Balance of power: Energy management for server clusters. In Proceedings of the 8th Workshop on Hot Topics in Operating Systems (HotOS-VIII). Elmau, Germany. Google ScholarGoogle Scholar
  10. Chen, Y., Das, A., Gautam, N., Wang, Q., and Sivasubramaniam, A. 2004. Pricing-based strategies for autonomic control of web servers for time-varying request arrivals. Engin. Applic. Arti. Intell. Special Issue on Automatic Computing System 17, 7 (Oct.), Elsevier, 841--854. Google ScholarGoogle Scholar
  11. Chen, Y., Das, A., Qin, W., Sivasubramaniam, A., Wang, Q., and Gautam, N. 2005. Managing server energy and operational costs in hosting centers. In Proceedings of the ACM International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS'05). Banff, Canada. Google ScholarGoogle Scholar
  12. Cherkasova, L. and Phaal, P. 2002. Session-based admission control: A mechanism for peak load management of commercial Web sites. IEEE Trans. Comput. 51, 6 (June), 669--685. Google ScholarGoogle Scholar
  13. Cohen, I., Chase, J., Goldszmidt, M., Kelly, T., and Symons, J. 2004. Correlating instrumentation data to system states: A building block for automated diagnosis and control. In Proceedings of the 6th USENIX Symposium in Operating Systems Design and Implementation (OSDI'04). San Francisco, CA. Google ScholarGoogle Scholar
  14. Das, A., Datta, R., Sivasubramaniam, A., and Urgaonkar, B. 2006. Predicting Web cache behavior using stochastic state space models. Tech. rep., Department of Computer Science and Engineering, The Pennsylvania State University.Google ScholarGoogle Scholar
  15. Doyle, R., Chase, J., Asad, O., Jin, W., and Vahdat, A. 2003. Model-based resource provisioning in a Web service utility. In Proceedings of the 4th USITS. Google ScholarGoogle Scholar
  16. Elnikety, S., Nahum, E., Tracey, J., and Zwaenepoel, W. 2004. A method for transparent admission control and request scheduling in e-eommerce Web sites. In Proceedings of the 13th International Conference on World Wide Web. New York, NY. 276--286. Google ScholarGoogle Scholar
  17. Fox, A., Gribble, S., Chawathe, Y., Brewer, E., and Gauthier, P. 1997. Cluster-based scalable network services. In Proceedings of the 16th Symposium on Operating Systems Principles (SOSP'97). Google ScholarGoogle Scholar
  18. Franks, R. G. 1999. Performance analysis of distributed server systems. Ph.D. thesis, Carleton University. Google ScholarGoogle Scholar
  19. Hellerstein, J., Zhang, F., and Shahabuddin, P. 1999. An approach to predictive detection for service management. In Proceedings of the IEEE Intl. Conference on Systems and Network Management.Google ScholarGoogle Scholar
  20. Iyer, R., Tewari, V., and Kant, K. 2000. Overload control mechanisms for Web servers. In Workshop on Performance and QoS of Next Generation Networks.Google ScholarGoogle Scholar
  21. Kallahalla, M., Uysal, M., Swaminathan, R., Lowell, D. E., Wray, M., Christian, T., Edwards, N., Dalton, C. I., and Gittler, F. 2004. SoftUDC: A software-based data center for utility computing. IEEE Comput. 37, 11, 38--46. Google ScholarGoogle Scholar
  22. Kamra, A., Misra, V., and Nahum, E. 2004. Yaksha: A controller for managing the performance of 3-tiered Web sites. In Proceedings of the 12th International Workshop on Quality of Service (IWQoS).Google ScholarGoogle Scholar
  23. Kanodia, V. and Knightly, E. 2000. Multi-class latency-bounded web servers. In Proceedings of International Workshop on Quality of Service (IWQoS'00).Google ScholarGoogle Scholar
  24. Kasera, S., Pinheiro, J., Loader, C., LaPorta, T., Karaul, M., and Hari, A. 2005. Robust multi-class signaling overload control. In Proceedings of IEEE International Conference on Networks Protocol (ICNP). Google ScholarGoogle Scholar
  25. Lassettre, E., Coleman, D., Diao, Y., Froelich, S., Hellerstein, J., Hsiung, L., Mummert, T., Raghavachari, M., Parker, G., Russell, L., Surendra, M., Tseng, V., Wadia, N., and Ye, P. 2003. Dynamic surge protection: An approach to handling unexpected workload surges with resource actions that have lead times. In Proceedings of the 1st Workshop on Algorithms and Architectures for Self-Managing Systems.Google ScholarGoogle Scholar
  26. Lazowska, E., Zahorjan, J., Graham, G., and Sevcik, K. 1984. Quantitative System Performance. Prentice--Hall. Google ScholarGoogle Scholar
  27. Levy, R., Nagarajarao, J., Pacifici, G., Spreitzer, M., Tantawi, A., and Youssef, A. 2003. Performance management for cluster based web services. In IFIP/IEEE 8th International Symposium on Integrated Network Management. Vol. 246, 247--261.Google ScholarGoogle Scholar
  28. Li, S. and Jamin, S. 2000. A measurement-based admission-controlled Web server. In Proceedings of the 19th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM'00). Tel Aviv, Israel.Google ScholarGoogle Scholar
  29. Liu, T.-K., Kumaran, S., and Luo, Z. 2001. Layered queueing models for enterprise java beans applications. Tech. rep., IBM. June.Google ScholarGoogle Scholar
  30. Menasce, D. 2003. Web server software architectures. In IEEE Internet Comput. 7. Google ScholarGoogle Scholar
  31. Menasce, D., Almeida, V., and Dowdy, L. 2004. Performance by Design: Computer Capacity Planning by Example. Prentice Hall. Google ScholarGoogle Scholar
  32. Ranjan, S., Rolia, J., Fu, H., and Knightly, E. 2002. QoS-driven server migration for internet data centers. In Proceedings of the 10th International Workshop on Quality of Service, Miami, FL.Google ScholarGoogle Scholar
  33. Reiser, M. and Lavenberg, S. 1980. Mean-value analysis of closed multichain queuing networks. J. ACM 27, 2, 313--322. Google ScholarGoogle Scholar
  34. Rolia, J. and Sevcik, K. 1995. The method of layers. IEEE Trans. Softw. Engin. 21, 8, 689--700. Google ScholarGoogle Scholar
  35. Rolia, J., Singhal, S., and Friedrich, R. 2000. Adaptive internet data centers. In Proceedings of SSGRR 2000.Google ScholarGoogle Scholar
  36. S. Kounev, A. Buchmann. 2003. Performance modeling and evaluation of large-scale J2EE applications. In Proceedings of the Computer Measurement Group's International Conference (CMG'03). Dallas, TX.Google ScholarGoogle Scholar
  37. Schroeder, B. and Harchol-Balter, M. 2003. Web servers under overload: How scheduling can help. In Proceedings of the 18th International Teletraffic Congress.Google ScholarGoogle Scholar
  38. Slothouber, L. 1996. A model of web server performance. In Proceedings of the 5th International World Wide Web Conference.Google ScholarGoogle Scholar
  39. Stewart, C., Kelly, T., and Zhang, A. 2007. Exploiting nonstationarity for performance prediction. In Proceedings of EuroSys 2007. Lisbon, Portugal. Google ScholarGoogle Scholar
  40. Urgaonkar, B. 2005. Dynamic resource management in internet data centers. Ph.D. thesis, University of Massachusetts, Amherst, MA. Google ScholarGoogle Scholar
  41. Urgaonkar, B. and Shenoy, P. 2004. Cataclysm: Handling extreme overloads in internet services. In Proceedings of the 23rd Annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC'04). St. John's, Newfoundland, Canada. Google ScholarGoogle Scholar
  42. Urgaonkar, B., Shenoy, P., Chandra, A., and Goyal, P. 2005. Dynamic provisioning of multitier internet applications. In Proceedings of the 2nd IEEE International Conference on Autonomic Computing (ICAC'05). Seattle, WA. Google ScholarGoogle Scholar
  43. Urgaonkar, B., Shenoy, P., and Roscoe, T. 2002. Resource overbooking and application profiling in shared hosting platforms. In Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation (OSDI'02). Boston, MA. Google ScholarGoogle Scholar
  44. Verma, A. and Ghosal, S. 2003. On admission control for profit maximization of networked service providers. In Proceedings of the 12th International World Wide Web Conference (WWW'03). Budapest, Hungary. Google ScholarGoogle Scholar
  45. Villela, D., Pradhan, P., and Rubenstein, D. 2004. Provisioning servers in the application tier for e-commerce systems. In Proceedings of the 12th International Workshop on Quality of Service (IWQoS).Google ScholarGoogle Scholar
  46. Voigt, T., Tewari, R., Freimuth, D., and Mehra, A. 2001. Kernel mechanisms for service differrentiation in overloaded Web servers. In Proceedings of USENIX Annual Technical Conference. Google ScholarGoogle Scholar
  47. Welsh, M. and Culler, D. 2003. Adaptive overload control for busy internet servers. In Proceedings of the 4th USENIX Conference on Internet Technologies and Systems (USITS'03). Google ScholarGoogle Scholar
  48. Woodside, C. and Raghunath, G. 1995. General bypass architecture for high-performance distributed algorithms. In Proceedings of the 6th IFIP Conference on Performance of Computer Networks. Istanbul, Turkey. Google ScholarGoogle Scholar
  49. Xu, J., Oufimtsev, A., Woodside, M., and Murphy, L. 2006. Performance modeling and prediction of enterprise java beans with layered queuing network templates. SIGSOFT Softw. Eng. Notes 31, 2. Google ScholarGoogle Scholar
  50. Xu, M. and Xu, C. 2004. Decay function model for resource configuration and adaptive allocation on internet servers. In Proceedings of the 12th International Workshop on Quality-of-Service (IWQoS'04).Google ScholarGoogle Scholar
  51. Zhu, X. and Singhal, S. 2001. Optimal resource assignment in internet data centers. In Proceedings of the 9th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems (MASCOTS'01). Google ScholarGoogle Scholar

Index Terms

  1. Analytic modeling of multitier Internet applications

      Recommendations

      Reviews

      Vladimir Stantchev

      An analytical model based on a network of queues is presented in this paper. The purpose is to model multitier architectures typical for most Internet applications. The introduction gives a very thorough overview of existing modeling approaches, including single-tier models. Here, an observation of existing multilevel approaches, particularly in the area of common object request broker architecture, would bring further improvement. The model is explained clearly, with techniques for deriving response times and model parameters, enhancements to model replication and concurrency at tiers, as well as session management. One declared shortcoming is the missing ability to model resource utilization. Further stated limitations are limited applicability with fast-changing load characteristics; the fact that the model captures averages, not entire distributions of metrics (for example, response time); and the fact that only one bottleneck resource can be modeled. The model validation is well founded and thorough. The paper also demonstrates that a dynamic provisioning technique based on the model is capable of maintaining reasonable response times at sudden peaks in workload (from 1,500 to 4,200 requests per minute). Online Computing Reviews Service

      Access critical reviews of Computing literature here

      Become a reviewer for Computing Reviews.

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!