MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  The Object-Oriented Design and Performance of JAWS: A High-performance Web Server Optimized for High-speed Networks (2000) [9 citations — 7 self]

Download:
Download as a PDF | Download as a PS
by James C. Hu Irfan Pyarali
Parallel and Distributed Computing Practices Journal, special issue on Distributed Object-Oriented Systems
http://siesta.cs.wustl.edu/~schmidt/PDCP.ps.gz
Add To MetaCart

Abstract:

This paper has been submitted to the Parallel and Distributed Computing Practices journal, special issue on Distributed Object-Oriented Systems, edited by Maria Cobb. This paper provides two contributions to the study of highperformance object-oriented (OO) Web servers. First, it outlines the design principles and optimizations necessary to develop efficient and scalable Web servers and illustrates how we have applied these principles and optimizations to create JAWS. JAWS is a high-performance Web server that is explicitly designed to alleviate overheads incurred by existing Web servers on high-speed networks. In addition to its highly extensible OO design, it is also highly efficient and consistently outperforms existing Web servers (such as Apache, Java Server, PHTTPD, Zeus, and Netscape Enterprise) over 155 Mbps ATM networks on UNIX platforms. Second, this paper describes how we have customized the JAWS OO design to leverage advanced features of Windows NT for multi-processor platforms linked by high-speed ATM networks. The Windows NT features used in JAWS include asynchronous mechanisms for connection establishment and data transfer. Our previous benchmarking studies demonstrate that once the overhead of disk I/O is reduced to a negligible constant factor (e.g., via memory caches), the primary determinants of Web server performance are the concurrency and event dispatching strategies. Our performance results over a 155 Mbps ATM network indicate that certain Windows NT asynchronous I/O mechanisms (i.e., TransmitFile) provide superior performance for large file transfers compared with conventional synchronous multi-threaded servers. On the other hand, synchronous event dispatching performed better for files less than 50 Kbytes. Thus, to provide optimal performance, a Web server design

Citations

3756 Design Patterns: Elements of Reusable Object-Oriented Softwar e – Gamma, Helm, et al. - 1995
204 Removal policies in network caches for world-wide web documents – Williams, Abrams, et al. - 1996
166 ACE: an Object-Oriented Framework for Developing Distributed Applications – Schmidt - 1994
158 The case for persistent-connection HTTP – Mogul
149 Reactor: An Object Behavioral Pattern for Concurrent Event Demultiplexing and Event Handler Dispatching – Schmidt - 1995
125 Active object: An object behavioral pattern for concurrent programming – Lavender, Schmidt - 1996
110 A scalable http server: The ncsa prototype – Katz, Katz, et al. - 1994
92 Measuring the Impact of Event Dispatching and Concurrency Models on Web Server Performance Over High-speed Networks – Hu, Pyarali, et al. - 1997
85 Acceptor and Connector: Design Patterns for Initializing Communication Services – Schmidt - 1997
67 The APIC Approach to High Performance Network Interface Design – Dittia, Parulkar, et al. - 1997
59 GPERF: A Perfect Hash Function Generator – Schmidt - 1990
55 WebSTONE: The First Generation – Trent, Sake - 1995
50 Principles for Developing and Measuring High-performance Web Servers over ATM – Hu, Mungee, et al. - 1998
48 Service Configurator: A Pattern for Dynamic Configuration of Services – Jain, Schmidt - 1997
48 Performance issues in parallelized network protocols – Nahum, Yates, et al. - 1994
23 LADDIS: The Next Generation – Wittle, Keith
23 Proactor – An Object Behavioral Pattern for Dispatching Asynchronous Event Handlers – Harrison, Pyarali, et al. - 1997
21 Asynchronous Completion Token: an Object Behavioral Pattern for Efficient Asynchronous Event Handling – Pyarali, Harrison, et al. - 1997
19 Developing flexible and highperformance Web servers with frameworks and patterns – Schmidt, Hu
14 Web Server Technology: The Advanced Guide for World Wide Web Information Providers – Yeager, McGrath - 1996
11 Applying the Proactor Pattern to High-Performance Web Servers – Hu, Pyarali, et al. - 1998
9 and Per Gunningberg. Locking Strategies in Multiprocessor Implementations of Protocols – Bjorkman - 1996
9 The APIC Approach to High Performance Network Interface Design: Protected DMA and Other Techniques – Cox - 1997
7 An Explanation of the SPECweb96 Benchmark. Standard Performance Evaluation Corporation whitepaper – Carlton - 1996
7 Dynamically Configuring Communication Services with the Service Configurator Pattern – Jain, Schmidt - 1997