Abstract
Increasingly, HTML documents are dynamically generated by interactive Web services. To ensure that the client is presented with the newest versions of such documents it is customary to disable client caching causing a seemingly inevitable performance penalty. In the <bigwig> system, dynamic HTML documents are composed of higher-order templates that are plugged together to construct complete documents. We show how to exploit this feature to provide an automatic fine-grained caching of document templates, based on the service source code. A <bigwig> service transmits not the full HTML document but instead a compact JavaScript recipe for a client-side construction of the document based on a static collection of fragments that can be cached by the browser in the usual manner. We compare our approach with related techniques and demonstrate on a number of realistic benchmarks that the size of the transmitted data and the latency may be reduced significantly.
Similar content being viewed by others
References
D. Atkins, T. Ball, G. Bruns, and K. Cox, “Mawl: A domain-specific language for form-based services,” IEEE Transactions on Software Engineering, June 1999.
P. Barford, A. Bestavros, A. Bradley, and M. Crovella, “Changes in Web client access patterns: Characteristics and caching implications,” World Wide Web Journal 2(1–2), January 1999, 15–28.
G. Barish and K. Obraczka, “World Wide Web caching: Trends and techniques,” IEEE Communications Magazine Internet Technology Series, May 2000.
C. Brabrand, A. Møller, and M. I. Schwartzbach, “The bigwig project,” in Transactions on Internet Technology 2(2), ACM, 2002. http://www.brics.dk/bigwig/
C. Brabrand, A. Møller, and M. I. Schwartzbach, “Static validation of dynamically generated HTML,” in Proceedings of Workshop on Program Analysis for Software Tools and Engineering (PASTE 2001), ACM, 2001.
P. Cao, J. Zhang, and K. Beach, “Active cache: Caching dynamic contents on the Web,” in Proceedings of the 1998 Middleware Conference, 1998.
J. Challenger, P. Dantzig, and A. Iyengar, “A scalable system for consistently caching dynamic Web data,” in Proceedings of the 18th Annual Joint Conference of the IEEE Computer and Communications Societies, March 1999.
F. Douglis, A. Haro, and M. Rabinovich, “HPP: HTML macro-preprocessing to support dynamic document caching,” in Proceedings of the 1997 USENIX Symposium on Internet Technologies and Systems (USITS-97), December 1997.
J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, and T. Berners-Lee, “Hypertext transfer protocol, HTTP/1.1,” 1999, http://www.w3.org/Protocols/rfc2616/rfc2616.html
ICONOCAST Newsletter, August 17, 2000, http://www.iconocast.com/issue/20000817.html
A. Iyengar and J. Challenger, “Improving Web server performance by caching dynamic data,” in USENIX Symposium on Internet Technologies and Systems, December 1997.
D. A. Ladd and J. C. Ramming, “Programming the Web: An application-oriented language for hypermedia services,” in 4th International World Wide Web Conference (WWW4), 1995.
H. Liefke and D. Suciu, “XMill: An efficient compressor for XML data,” ACM SIGMOD Record 29(2), 2000, 153–164.
J. C. Mogul, F. Douglis, A. Feldmann, and B. Krishnamurthy, “Potential benefits of delta encoding and data compression for HTTP,” in SIGCOMM, 1997, pp. 181–194.
J. Nielsen, Designing Web Usability: The Practice of Simplicity, New Riders Publishing, 2000.
K. Rajamani and A. Cox, “A simple and effective caching scheme for dynamic content,” Technical Report, CS Department, Rice University, September 2000.
A. Sandholm and M. I. Schwartzbach, “A type system for dynamic Web documents,” in Principles of Programming Languages (POPL'00), ACM, 2000.
B. Smith, A. Acharya, T. Yang, and H. Zhu, “Exploiting result equivalence in caching dynamic Web content,” in USENIX Symposium on Internet Technologies and Systems, 1999.
M. Tsimelzon, B. Weihl, and L. Jacobs, “ESI language pecification 1.0,” 2001, http://www.edge-delivery.org/language_spec_1-0.html
J. Wang, “A survey of Web caching schemes for the Internet,” ACM Computer Communication Review 29(5), October 1999, 36–46.
C. Wills and M. Mikhailov, “Studying the impact of more complete server information on Web caching,” Computer Communications 24(2), 2001, 184–190.
A. Wolman, “Characterizing Web workloads to improve performance,” University of Washington, July 1999.
K. Yagoub, D. Florescu, V. Issarny, and P. Valduriez, “Caching strategies for data-intensive Web sites,” The VLDB Journal, 2000, 188–199.
H. Zhu and T. Yang, “Class-based cache management for dynamic Web contents,” in Proceedings of IEEE INFOCOM 2001, 2001, pp. 1215–1224.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Brabrand, C., Møller, A., Olesen, S. et al. Language-Based Caching of Dynamically Generated HTML. World Wide Web 5, 305–323 (2002). https://doi.org/10.1023/A:1021020226173
Issue Date:
DOI: https://doi.org/10.1023/A:1021020226173