|
ABSTRACT
There has been much debate over the past few years about the practice of moving traditional user-space applications, such as web servers, into the kernel for better performance. Recently, the user-space userver web server has shown promising performance for delivering static content. In this paper we first describe how we augmented the userver to enable it to serve dynamic content. We then evaluate the performance of the userver and the kernel-space TUX web server, using the SPECweb99 workload generator under a variety of static and dynamic workloads. We demonstrate that the gap in the performance of the two servers becomes less significant as the proportion of dynamic-content requests increases. In fact, for workloads with a majority of dynamic requests, the µserver outperforms TUX. We conclude that a well-designed user-space web server can compete with an in-kernel server on performance, while retaining the reliability and security benefits that come from operating in user space. The results presented in this paper will help system developers and administrators in choosing between the in-kernel and the user-space approach for web servers.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
{2} A. Iyengar, E. MacNair, and T. Nguyen. An analysis of web server performance. In Proceedings of GLOBECOM '97, 1997.
|
| |
3
|
{3} V. Almeida and M. Mendes. Analyzing the impact of dynamic pages on the performance of web servers. In Computer Measurement Group Conference, December 1998.
|
| |
4
|
{4} Vivek S. Pai, Peter Druschel, and Willy Zwaenepoel. Flash: An efficient and portable Web server. In Proceedings of the USENIX 1999 Annual Technical Conference, 1999.
|
 |
5
|
Matt Welsh , David Culler , Eric Brewer, SEDA: an architecture for well-conditioned, scalable internet services, Proceedings of the eighteenth ACM symposium on Operating systems principles, October 21-24, 2001, Banff, Alberta, Canada
|
| |
6
|
{6} N. Provos and C. Lever. Scalable network I/O in Linux. In Proceedings of USENIX Annual Technical Conference, FREENIX Track, June 2000.
|
| |
7
|
|
| |
8
|
{8} G. Banga, J.C. Mogul, and P. Druschel. A scalable and explicit event delivery mechanism for UNIX. In Proceedings of the 1999 USENIX Annual Technical Conference, June 1999.
|
| |
9
|
|
 |
10
|
|
| |
11
|
{11} M. Ostrowski. A mechanism for scalable event notification and delivery in Linux. Master's thesis, Department of Computer Science, University of Waterloo, November 2000.
|
| |
12
|
{12} Red Hat Inc. TUX 2.2 Reference Manual, 2002. Available at http://www.redhat.com/ docs/manuals/tux/TUX-2.2-Manual.
|
| |
13
|
|
| |
14
|
Qing Wang , Dwight Makaroff , H. Keith Edwards , Ryan Thompson, Workload characterization for an E-commerce web site, Proceedings of the 2003 conference of the Centre for Advanced Studies on Collaborative research, p.313-327, October 06-09, 2003, Toronto, Ontario, Canada
|
| |
15
|
{15} The µserver home page. HP Labs, 2004. Available at http://hpl.hp.com/research/linux/ userver.
|
| |
16
|
{16} Tim Brecht, David Pariag, and Louay Gammo. accept()able strategies for improving web server performance. In Proceedings of the 2004 USENIX Annual Technical Conference, General Track, June 2004.
|
| |
17
|
{17} Louay Gammo, Tim Brecht, Amol Shukla, and David Pariag. Comparing and evaluating epoll, select, and poll event mechanisms. In Proceedings of 6th Annual Linux Symposium, July 2004.
|
| |
18
|
{18} Arjan van de Ven. kHTTPd Linux HTTP accelerator. Available at http://www.fenrus. demon.nl.
|
| |
19
|
{19} Giorgos Gousios and Diomidis Spinellis. A comparison of portable dynamic web content technologies for the Apache web server. In Proceedings of the 3rd International System Administration and Networking Conference SANE 2002, pages 103-119, May 2002.
|
| |
20
|
{20} J. Millaway and P. Conrad. C Server Pages: An architecture for dynamic web content generation. In WWW2003, May 2003.
|
| |
21
|
{21} C. Lever, M. Eriksen, and S. Molloy. An Analysis of the TUX Web Server. Technical report, University of Michigan, CITI Technical Report 00-8, Nov. 2000.
|
| |
22
|
{22} SPECweb99 Dynamic API module source code. Standard Performance Evaluation Corporation. Available at http://www.specbench .org/web99/results/api-src/Dell-20030527- RHCA.tgz.
|
| |
23
|
{23} SPECweb99 Benchmark. Standard Performance Evaluation Corporation. Available at http://www.specbench.org/web99/.
|
| |
24
|
{24} Erich M. Nahum. Deconstructing SPECweb99. In the 7th International Workshop on Web Content Caching and Distribution (WCW), August 2001.
|
| |
25
|
{25} SPECweb99 Design Document. Standard Performance Evaluation Corporation. Available at http://www.specbench.org/ web99/docs/whitepaper.html.
|
CITED BY
|
|
Shaneel Narayan , Samad Kolahi , Rick Waiariki , Madeleine Reid, Performance analysis of network operating systems in local area networks, Proceedings of the 2nd WSEAS International Conference on Computer Engineering and Applications, p.186-188, January 25-27, 2008, Acapulco, Mexico
|
REVIEW
"Pierre N. Radulescu-Banu : Reviewer"
Various techniques have been investigated to improve the performance of Web servers. Kernel space Web servers are an emerging trend; the overheads of context switching and event notification are avoided, and redundancy in data read and copy is red
more...
|