Freshness-driven adaptive caching for dynamic content Web sites

https://doi.org/10.1016/S0169-023X(03)00093-4Get rights and content

Abstract

Both response time and content freshness are essential to e-commerce applications on the Web. One option to achieve good response time is to build a high performance Web site by deploying the state of art IT infrastructures with large network and server capacities. With such a system architecture, freshness of the content delivered is limited by the network latency since when users receive the contents, the contents may have changed at the server. With the wide availability of content delivery networks, many e-commerce Web applications utilize edge cache servers to cache and deliver dynamic contents at locations much closer to users, avoiding network latency. By caching a large number of dynamic content pages in the edge cache servers, response time can be reduced, benefiting from higher cache hit rates. However, this is achieved at the expense of higher invalidation cost. On the other hand, a higher invalidation cost leads to a longer invalidation cycle (time to perform invalidation check on the pages in caches) at the expense of freshness of cached dynamic content. In this paper, we propose a freshness-driven adaptive dynamic content caching technique, which monitors response time and invalidation cycle length and dynamically adjusts caching policies. We have implemented the proposed technique within NEC’s CachePortal Web acceleration solution. We have conducted experiments to evaluate effectiveness of the proposed freshness-driven adaptive dynamic content caching technique. The experimental results show that the proposed technique consistently maintains the best content freshness to users. The experimental results also show that even a Web site with dynamic content caching enabled can further benefit from deployment of our solution with improvement of its content freshness up to 10 times especially during heavy user request traffic and long network latency delay.

Introduction

Response time and content freshness are essential to e-commerce Web sites. In business terms, the brand name of an e-commerce site is correlated to the type of experience users receive. The need for accounting for users’ quality perception in designing Web servers for e-commerce systems has been highlighted by [1]. Snafus and slow-downs at major Web sites during special events or peak times demonstrate the difficulty of scaling up e-commerce sites. Slow response times and down times can be devastating for e-commerce sites as reported in a study by Zona Research [2] on the relationship between Web page download time and user abandonment rate. The study shows that only 2% of users will leave a Web site (i.e. abandonment rate) if the download time is less than 7 s. However, the abandonment rate jumps to 30% if the download time is around 8 s. The abandonment rate reaches 70% as download times exceed 12 s. This study clearly establishes the importance of fast response times to an e-commerce Web site to retain its customers. In technical terms, ensuring the timely delivery of fresh dynamic content to end-users and engineering highly scalable e-commerce Web sites for special peak access times put heavy demands on IT staff. This load is compounded by the ever-changing complexity of e-commerce applications.

For many e-commerce applications, Web pages are created dynamically based on the current state of a business, such as product prices and inventory, stored in database systems. This characteristic requires e-commerce Web sites to deploy and integrate Web servers, application servers, and database systems at the backend. A basic system architecture of database-driven Web sites consists of the following components:

  • 1.

    A Web server (WS) which receives user requests and delivers the dynamically generated Web pages.

  • 2.

    An application server (AS) that incorporates all the necessary rules and business logic to interpret the data and information stored in the database. AS receives user requests for HTML pages and depending upon the nature of a request may need to access the DBMS to generate the dynamic components of the HTML page.

  • 3.

    A database management system (DBMS) to store, maintain, and retrieve all the necessary data and information to model a business.


When the Web server receives a request for dynamic content, it forwards the request to the application server along with its request parameters (typically included in the URL string). The Web server communicates with the application server using URL strings and cookie information, which is used for customization, and the application server communicates with the database using queries. When the application server receives such a request from the Web server, it processes it and it may access the underlying databases to extract the relevant information needed to dynamically generate the requested page.

To improve the response time, one option is to build a high performance Web site to improve network and server capacity by deploying the state of art IT infrastructure. However, without the deployment of dynamic content caching solutions and content delivery network (CDN) services, dynamic contents are generated on demand. In this case, all delivered Web pages are generated based on the current business state in the database. However, when users receive the contents, the business state could already have changed due to the network latency.

The alternative solution is to deploy network-wide caches so that a large fraction of requests can be served remotely rather than all of them being served from the origin Web site. This solution has two advantages: serving users via a nearby cache closer to the users and reducing the traffic to the Web sites. Many content delivery network services [3], [4] provide Web acceleration services. A study in [5] shows that CDN indeed has significant performance impact. However, for many e-commerce applications, HTML pages are created dynamically based on the current state of a business, such as product prices and inventory, rather than static information. As a result, the time to live (TTL) for these dynamic pages cannot be estimated in advance. Therefore, content delivery by most CDNs is limited to handling static portions of the pages and streaming media, rather than the full spectrum of dynamic content that constitutes the bulk of the e-commerce Web sites.

Applying caching solutions for Web applications and content distribution has received a lot of attentions in the Web and database communities [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [17]. These provide various solutions to accelerate content delivery as well as techniques to assure the freshness of the cached pages. Note that since Web content is delivered through the Internet, the content freshness can only be assured rather than being guaranteed.

For the Web sites that are dynamic content caching enabled, by caching more dynamic contents in edge cache servers, response time can be improved through the benefit of higher cache hit rates and low network latency. However, in a database-driven Web site, databases must be monitored so that the cached pages which are impacted by database content changes can be invalidated or refreshed in a timely manner. As a result, caching a large number of Web pages at edge cache servers to yield fast response time are achieved at the expense of invalidation cycles. Thus, it requires more computational resources and time to complete invalidation checking. On the other hand, when invalidation cycle is long, the freshness of cached pages cannot be maintained at a desirable level. Furthermore, many parameters, such as database update rates, user request rates, and network latency, also have effect on user response time and length of invalidation cycles.

How to architect Web sites and tune caching policy dynamically to serve fresh content in short response time is a complex issue. In this paper, we focus on the issue of how to maintain the best content freshness that can be assured for a given set of user request rate and database update rate. We propose an adaptive dynamic content caching technique that monitors response time and invalidation cycle as feedback for dynamic adjustment of caching policy. By considering the trade-off of invalidation cycle and response time, it maintains the best content freshness to the users. The rest of this paper is organized as follows. In Section 2, we discuss issues in caching policy tuning specifically for dynamic content Web sites. In Section 3, we give an overview of our proposed solution. In Section 4 we describe the dynamic content invalidation schemes used in NEC’s CachePortal. In Section 5, we describe dependency between user request response time and invalidation cycles. In Section 6 we identify how to fine tune caching policy for balancing response time and invalidation cycles for maintaining freshness. We also present experimental results that evaluate effectiveness of our proposed technique for ensuring content freshness. Section 7 summarizes related work and Section 8 concludes the paper.

Section snippets

Issues in caching policy tuning for dynamic content Web sites

In this section, we present the problem formulation and give an overview of our proposed solution. We start with the description of an e-commerce Web site system architecture that is dynamic content caching enabled.

There are multiple tiers in the content delivery infrastructure where cache servers can be deployed. They include the following:

  • Database caches, which are placed between application servers and database systems for acceleration of database access via JDBC or ODBC interfaces. The work

Solution overview

From Section 2, we learn that the freshness of requested pages can be ensured at the highest level when the hit rate is tuned to a point where the response time from the origin site and invalidation cycle for the cached pages are equivalent as shown in Fig. 2(d). In this paper, we propose a freshness-driven adaptive dynamic content caching technique. The proposed technique aims at maintaining the best content freshness that a system configuration can support and assure. Our technique does not

Invalidation checking process

In this section, we describe the invalidation process in the CachePortal technology: Consolidated Invalidation Checking, a method to enable invalidation checking process. In Section 5, we will show the dependency between cache hit rates and invalidation cycles and how the invalidation checking process can be tuned to achieve target cache hit rate; and consequently, desired response time. We start by introducing an example database and terminology used later in this section.

Dependency between response time and invalidation cycle

In this section, we examine the dependency between the response time and the invalidation cycle length. We have conducted experiments to verify this dependency. We first describe the general experiment setup that consists of databases, application servers, and network infrastructure that are used in the experiments.

Freshness-driven adaptive dynamic content caching

In this section, we describe the proposed freshness-driven adaptive dynamic content caching followed by the discussion and analysis of the experimental results.

Related work

Issues related to caching of dynamic data have received significant attention recently [26], [27]. Applying caching solutions for Web applications and content distribution has also received a lot of attentions in the Web and database communities [7], [8], [9], [10], [11], [12]. In citedy2002, Katsaros and Manolopoulos give summary of refresh, re-fetch, consistence maintenance technologies associated with Web-powered databases.

Although a lot of research have been done on view maintenance [28],

Concluding remarks

Both response time and content freshness are essential to e-commerce applications on the Web. Many e-commerce Web applications deploy dynamic content caching solutions to serve user requests at locations much close to users, avoiding network latency. For such Web sites, the highest level of content freshness that can be assured is the larger value of the response time and invalidation cycle. In this paper, we propose a freshness-driven adaptive dynamic content caching technique. It monitors

Wen-Syan Li is a Senior Research Staff Member at Computers & Communications Research Laboratories (CCRL), NEC USA Inc. He received his Ph.D. in Computer Science from Northwestern University in December 1995. He also holds an MBA degree. His main research interests include content delivery network, multimedia/hypermedia/document databases, WWW, E-Commerce, and information retrieval. He is leading CachePortal project at NEC USA Venture Development Center and Content Awareness Network project at

References (41)

  • R.L. Carter et al.

    On the network impact of dynamic server selection

    Computer Networks

    (1999)
  • N. Bhatti, A. Bouch, A. Kuchinsky, Integrating user-perceived quality into Web server design, in: Proceedings of the...
  • Zona Research,...
  • Akamai Technology, Information available at...
  • Digital Island, Ltd., Information available at...
  • B. Krishnamurthy, C.E. Wills, Analyzing factors that influence end-to-end Web performance, in: Proceedings of the 9th...
  • P. Deolasee, A. Katkar, A. Panchbudhe, K. Ramamritham, P. Shenoy, Adaptive push-pull: dissemination of dynamic Web...
  • K. Selçuk Candan, W.-S. Li, Q. Luo, W.-P. Hsiung, D. Agrawal, Enabling dynamic content caching for database-driven Web...
  • C. Mohan, Application servers: born-again TP monitors for the Web? (panel abstract), in: Proceedings of the 2001 ACM...
  • W.-S. Li, K. Seluk Candan, W.-P. Hsiung, O. Po, D. Agrawal, Q. Luo, W.-K.W. Huang, Y. Akca, C. Yilmaz, CachePortal:...
  • C. Mohan, Caching technologies for Web applications, in: Proceedings of the 2001 VLDB Conference, Roma, Italy,...
  • M. Cherniack, M.J. Franklin, S.B. Zdonik, Data management for pervasive computing, in: Proceedings of the 2001 VLDB...
  • Q. Luo, J.F. Naughton, Form-based proxy caching for database-backed Web sites, in: Proceedings of the 2001 VLDB...
  • A. Ninan, P. Kulkarni, P. Shenoy, K. Ramamritham, R. Tewari, Cooperative leases: scalable consistency maintenance in...
  • A. Datta, K. Dutta, H.M. Thomas, D.E. VanderMeer, Suresha, K. Ramamritham, Proxy-based acceleration of dynamically...
  • Q. Luo, S. Krishnamurthy, C. Mohan, H. Pirahesh, H. Woo, B.G. Lindsay, J.F. Naughton, Middle-tier database caching for...
  • K. Selcuk Candan, D. Agrawal, W.-S. Li, O. Po, W.-P. Hsiung, View invalidation for dynamic content caching in...
  • W.-S. Li, W.-P. Hsiung, D.V. Kalashnikov, R. Sion, O. Po, D. Agrawal, K. Selçuk Candan. Issues and evaluations of...
  • A. Datta, K. Dutta, K. Ramamritham, H. Thomas, D. VanderMeer, Dynamic content acceleration: a caching solution to...
  • Oracle9i data cache,...
  • Cited by (11)

    View all citing articles on Scopus

    Wen-Syan Li is a Senior Research Staff Member at Computers & Communications Research Laboratories (CCRL), NEC USA Inc. He received his Ph.D. in Computer Science from Northwestern University in December 1995. He also holds an MBA degree. His main research interests include content delivery network, multimedia/hypermedia/document databases, WWW, E-Commerce, and information retrieval. He is leading CachePortal project at NEC USA Venture Development Center and Content Awareness Network project at NEC CCRL in San Jose. Wen-Syan is the recipient of the first NEC USA Achievement Award for his contributions in technology innovation.

    Oliver Po is currently a Research Engineer at Computer & Communications Research Laboratories (CCRL), NEC USA. From 1985 to 1993 he worked for IBM Taiwan as a system engineer. From 1994 to 1999 he joint IBM Toronto Lab and worked as a database developer focusing on database functions and tools design and enhancement. He received his B.S. degree at 1984. His current work involves mainly the CCRL CachePortal project which studies and provides dynamic content caching solutions.

    Wang-Pin Hsiung is a Research Associate at Computers & Communications Research Laboratories (CCRL), NEC USA Inc. He received his masters degree in Computer Science from Stanford University in 1999 and BSE from Arizona State University. His research interests are in the areas of computer network architectures and protocols; multimedia systems; performance evaluations; and databases. He works on CachePortal project developing static/dynamic Web content caching and also involve in the development of Content Awareness Network.

    Kasım Selçuk Candan is a tenure track assistant professor at the Department of Computer Science and Engineering at the Arizona State University. He joined the department in August 1997, after receiving his Ph.D. from the Computer Science Department at the University of Maryland at College Park. His dissertation research concentrated on multimedia document authoring, presentation, and retrieval in distributed collaborative environments. He received the 1997 ACM DC Chapter award of Samuel N. Alexander Fellowship for his Ph.D. work. His research interests include development of formal models, indexing schemes, and retrieval algorithms for multimedia and Web information and development of novel query optimization and processing algorithms. He has published various articles in respected journals and conferences in related areas. He received his B.S. degree, first ranked in the department, in computer science from Bilkent University in Turkey in 1993.

    Divyakant Agrawal is a Visiting Senior Research Scientist at CCRL, NEC USA, Inc. in San Jose. He received his Ph.D. from SUNY, Stony Brook. His current research interests are in the area of distributed hypermedia databases, multimedia information storage and retrieval, and Web based technologies.

    View full text