Performance comparison of dynamic web platforms
Varsha Apte
a,1
, Tony Hansen
b,
*
, Paul Reeser
b
a
Department of Computer Science and Engineering, Indian Institute of Technology-Bombay, Mumbai 400 076, India
b
AT&T Labs, 200 Laurel Ave, Middletown, NJ 07748, USA
Received 7 August 2002; accepted 7 August 2002
Abstract
Over the last few years, the World Wide Web has transformed itself from a static content-distribution medium to an interactive, dynamic
medium. The Web is now widely used as the presentation layer for a host of on-line services such as e-mail and address books, e-cards, e-
calendar, shopping, banking, and stock trading. As a consequence (HyperText Markup Language)HTML files are now typically generated
dynamically after the server receives the request. From the Web-site providers’ point of view, dynamic generation of HTML pages implies a
lesser understanding of the real capacity and performance of their Web servers. From the Web developers’ point of view, dynamic content
implies an additional technology decision: the Web programming technology to be employed in creating a Web-based service. Since the Web
is inherently interactive, performance is a key requirement, and often demands careful analysis of the systems. In this paper, we compare four
dynamic Web programming technologies from the point of view of performance. The comparison is based on testing and measurement of
two cases: one is a case study of a real application that was deployed in an actual Web-based service; the other is a trivial application. The two
cases provide us with an opportunity to compare the performance of these technologies at two ends of the spectrum in terms of complexity.
Our focus in this paper is on how complex vs. simple applications perform when implemented using different Web programming
technologies. The paper draws comparisons and insights based on this development and performance measurement effort.
q 2002 Published by Elsevier Science B.V.
Keywords: Dynamic; Web; Common Gateway Interface; FastCGI; Cþþ; Java; Servlets; Java Server Pages; Performance; Comparison
1. Introduction
The World Wide Web (WWW) first emerged a decade
ago as a medium to render hypertext documents that were
stored on the Internet, on a user’s computer, using special
software (the browser) and a new protocol (HTTP:
HyperText Transfer Protocol). For the first few years, the
WWW grew primarily as a new medium in which static
content could be published, and information shared. The
content was published in the form of HTML (HyperText
Markup Language) files, which were served by Web
servers, on requests from browsers. However, over the last
few years the WWW has transformed itself from a static
content-distribution medium to an interactive, dynamic
medium. Content on the Web is now often personalized, and
therefore dynamically generated. The Web is now widely
used as the presentation layer for a host of on-line services
such as e-mail, e-cards, e-calendar, and address books,
shopping, banking, and stock trading. As a consequence, the
HTML files that are rendered by the client’s browser are
now typically generated dynamically after the Web server
has processed the user’s request.
This dynamic generation of HTML files has not happened
without an associated performance cost. Just when Internet
users were getting accustomed to ‘click-and-wait’ on dial-up
lines due to graphics-rich Web sites, dynamically generated
content started proliferating on the Web. Now users must
wait not only for the network delay but also for the server-
side processing delay associated with serving a request
dynamically. In many cases, this is turning out to be the
largest component of the delay. From the Web-site
providers’ point of view, dynamic generation of HTML
pages implies a lesser understanding of the real capacity of
their Web servers. The vendor-provided ‘hits-per-second’
capacity of the Web server is no longer enough, as this only
pertains to static HTML files.
Computer Communications 26 (2003) 888–898
www.elsevier.com/locate/comcom
0140-3664/03/$ - see front matter q 2002 Published by Elsevier Science B.V.
PII: S 0 14 0 -3 66 4 ( 0 2 ) 00 22 1 - 9
1
This work was done while this author was with the Network Design and
Performance Analysis Department, AT&T Labs, Middletown, NJ 07748,
USA. This author has previously published under her maiden name of
Varsha Mainkar.
*
Corresponding author.
E-mail address: mainkar@att.com (T. Hansen).