skip to main content
10.1145/1526709.1526833acmconferencesArticle/Chapter ViewAbstractPublication PagesthewebconfConference Proceedingsconference-collections
research-article

Highly scalable web applications with zero-copy data transfer

Published: 20 April 2009 Publication History

Abstract

The performance of server-side applications is becoming increasingly important as more applications exploit the Web application model. Extensive work has been done to improve the performance of individual software components such as Web servers and programming language runtimes. This paper describes a novel approach to boost Web application performance by improving inter-process communication between a programming language runtime and Web server runtime. The approach reduces redundant processing for memory copying and the context switch overhead between user space and kernel space by exploiting the zero-copy data transfer methodology, such as the sendfile system call. In order to transparently utilize this optimization feature with existing Web applications, we propose enhancements of the PHP runtime, FastCGI protocol, and Web server. Our proposed approach achieves a 126% performance improvement with micro-benchmarks and a 44% performance improvement for a standard Web benchmark, SPECweb2005.

References

[1]
Erich Nahum, Tsipora Barzilai, Dilip D.Kandlur, Performance Issues in WWW servers, IEEE/ACM Transactions on Networking (TON), Volume 10, Issue 1, February, 2002
[2]
Vivek S. Pai, Peter Druschel, et al. "IO-Lite: A Unified I/O Buffering and Caching System", OSDI 1999 (Third Symposium in Operating Systems Design and Implementation), 1999
[3]
Dragan Stancevic, Zero copy I: user--mode perspective, Linux Journal, Volume 3, Issue 105 (January 3), 2003
[4]
Hsiao-keng Jerry Chu, Zero-copy TCP in Solaris, In Proceedings of the annual conference on USENIX 1996 Annual Technical Conference, 1996
[5]
Mark R. Brown, "FastCGI: A High-Performance Gateway Interface", Fifth International World Wide Web Conference, 1996
[6]
Mark R. Brown, "Understanding FastCGI Application Performance", http://www.fastcgi.com/
[7]
Arun Iyengar and Jim Challenger, Improving Web Server Performance by Caching Dynamic Data, In Proceedings of the USENIX Symposium on Internet Technologies and Systems, 1997
[8]
Lighttpd, http://www.lighttpd.net/
[9]
PHP, http://www.php.net/
[10]
Robert B. King, Mark Russinovich T, John M. Tracey, High-Performance Memory-Based Web Servers: Kernel and User-Space Performance, Proceedings of the 2001 USENIX Annual Technical Conference, 2001
[11]
David Pariaq, Tim Brecht, et al., Comparing the Performance of Web Server Architectures, ACM SIGOPS Operating Systems Review, 2007
[12]
Gaurav Banga, Peter Druschel, Jeffrey C. Mogul, Better operating system features for faster network servers, In Proc. Of the Workshop on Internet Server Performance 1999
[13]
SCGI: A Simple Common Gateway Interface Alternative, http://python.ca/scgi/protocol.txt
[14]
SPECweb2005 http://www.spec.org/web2005/
[15]
Khalil Amiri, Sanghyun Park, et al., "DBProxy: A dynamic data cache for Web applications" ICDE 2003, pages 821--831, 2003
[16]
Z. N. J. Peterson and R. Burns: Ext3cow; A Time-Shifting File System for Regulatory Compliance, ACM Transactions on Storage (TOS), Volume 1, Issue 2 (May 2005), Pages 190--212
[17]
Moti N. Thadani, An Efficient Zero--Copy I/O Framework for Unix, Sun Microsystems Technical Report, May 1995
[18]
Dong-Jae Kang, Young-Ho Kim, et al., Design and Implementation of Zero-Copy Data Path for Efficient File Transmission, Sep, 2006
[19]
Netcraft, http://survey.netcraft.com/Reports/200806/
[20]
Apache Web Server: http://httpd.apache.org/
[21]
Armol Shukla, et.al, Evaluating the performance of user-space and kernel-space Web servers, IBM Centre for Advanced Studies Conference, 2004
[22]
Ruby, http://www.ruby-lang.org/en/
[23]
S. Trent, M. Tatsubori, T. Suzumura, A. Tozawa, and T. Onodera. Performance comparison of PHP and JSP as server--side scripting languages. In Proceedings of Middleware, 2008, ACM/IFIP/USENIX 9th International Middleware Conference, Leuven, Belgium, December 1--5, 2008, pages 164--182. Springer, 2008.
[24]
Angelos D. Keromytis et al., Cryptography as an operating system service: A case study, ACM Transactions on Computer Systems (TOCS), Volume 24, Issue 1 (February 2006)
[25]
Sathish K. Palaniappen, et al., Efficient Data Transfer through zero copy, IBM developerworks, Sep, 2008 http://www.ibm.com/developerworks/library/j-zerocopy
[26]
Francis O'Carroll, et Al., "The design and implementation of zero copy MPI using commodity hardware with a high performance network", Proceedings of the 12th International Conference on Supercomputing, 1998
[27]
Nick Mitchell, Gary Sevitsky, Harini, Srivivasan, et al., The Diary of a Datum: An Approach to Modeling Runtime Complexity in Framework-Based Applications, IBM Research Report, RC23703, 2005
[28]
Akihiko Tozawa, Michiaki Tatsubori, Scott Trent, Toyotaro Suzumura, and Tamiya Onodera, P9: High Performance PHP Runtime, Japan Society for Software Science and Technology, 25th Workshop, 2008
[29]
OProfile, http://oprofile.sourceforge.net/
[30]
Netperf, http://www.netperf.org/
[31]
Lakshmish Ramaswamy, Ling Liu, and Fred Douglis Automatic Fragment Detection in Dynamic Web Pages and its Impact on Caching. In IEEE Transactions on Knowledge and Data Engineering vol. 17 #6, 2005
[32]
Michiaki Tatsubori and Toyotaro Suzumura, HTML Templates that Fly -- A Template Engine Approach to Automated Offloading from Server to Client, WWW 2009 (18th International World Wide Web Conference), Spain Madrid, April, 2009
[33]
Cecchet, E. Chanda, A., Elnikety, S., Marguerite, J., Zwaenepoel, W.: "Performance Comparison of Middleware Architectures for Generating Dynamic Web Content", 4th ACM/IFIP/USENIX International Middleware Conference (2003)

Cited By

View all
  • (2019)uSendfile: A User-Space Sendfile Verb Based on Flash and RDMA2019 IEEE 12th International Conference on Cloud Computing (CLOUD)10.1109/CLOUD.2019.00080(465-469)Online publication date: Jul-2019
  • (2019)Design and testbed evaluation of RDMA-based middleware for high-performance data transfer applicationsJournal of Systems and Software10.1016/j.jss.2013.01.07086:7(1850-1863)Online publication date: 3-Jan-2019
  • (2016)Scalable Kernel TCP Design and Implementation for Short-Lived ConnectionsACM SIGARCH Computer Architecture News10.1145/2980024.287239144:2(339-352)Online publication date: 25-Mar-2016
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
WWW '09: Proceedings of the 18th international conference on World wide web
April 2009
1280 pages
ISBN:9781605584874
DOI:10.1145/1526709

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 April 2009

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. PHP
  2. fastcgi
  3. scripting
  4. sendfile
  5. web server
  6. zero copy

Qualifiers

  • Research-article

Conference

WWW '09
Sponsor:

Acceptance Rates

Overall Acceptance Rate 1,899 of 8,196 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)11
  • Downloads (Last 6 weeks)0
Reflects downloads up to 22 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2019)uSendfile: A User-Space Sendfile Verb Based on Flash and RDMA2019 IEEE 12th International Conference on Cloud Computing (CLOUD)10.1109/CLOUD.2019.00080(465-469)Online publication date: Jul-2019
  • (2019)Design and testbed evaluation of RDMA-based middleware for high-performance data transfer applicationsJournal of Systems and Software10.1016/j.jss.2013.01.07086:7(1850-1863)Online publication date: 3-Jan-2019
  • (2016)Scalable Kernel TCP Design and Implementation for Short-Lived ConnectionsACM SIGARCH Computer Architecture News10.1145/2980024.287239144:2(339-352)Online publication date: 25-Mar-2016
  • (2016)Scalable Kernel TCP Design and Implementation for Short-Lived ConnectionsACM SIGOPS Operating Systems Review10.1145/2954680.287239150:2(339-352)Online publication date: 25-Mar-2016
  • (2016)Scalable Kernel TCP Design and Implementation for Short-Lived ConnectionsACM SIGPLAN Notices10.1145/2954679.287239151:4(339-352)Online publication date: 25-Mar-2016
  • (2016)Scalable Kernel TCP Design and Implementation for Short-Lived ConnectionsProceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/2872362.2872391(339-352)Online publication date: 25-Mar-2016
  • (2014)The performance improvements of highly-concurrent grid-based serverSimulation Modelling Practice and Theory10.1016/j.simpat.2013.12.00842(129-146)Online publication date: Mar-2014
  • (2011)Message efficient leader finding algorithm for mobile ad hoc networks2011 Third International Conference on Communication Systems and Networks (COMSNETS 2011)10.1109/COMSNETS.2011.5716512(1-6)Online publication date: Jan-2011
  • (2011)Study of combined effects of zero copy and pre-processing on Input/Output performance of multimedia on demand streaming server2011 Third International Conference on Communication Systems and Networks (COMSNETS 2011)10.1109/COMSNETS.2011.5716477(1-4)Online publication date: Jan-2011
  • (2010)Evaluation of a just-in-time compiler retrofitted for PHPACM SIGPLAN Notices10.1145/1837854.173601545:7(121-132)Online publication date: 17-Mar-2010
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media