Presentation is loading. Please wait.

Presentation is loading. Please wait.

Understanding Factors That Influence Performance of a Web Server Presentation CS535 Project By Thiru.

Similar presentations


Presentation on theme: "Understanding Factors That Influence Performance of a Web Server Presentation CS535 Project By Thiru."— Presentation transcript:

1 Understanding Factors That Influence Performance of a Web Server Presentation CS535 Project By Thiru

2 Goals Understand how a typical web server works Infer potential factors that can influence the performance Discover the dynamics of the interactions Look at each factor in detail Some miscellaneous topics, if time permits Conclude

3 What Is a Web Server ? A server program implementing HTTP protocol A typical server would: Listen on a known port (usually 80) When a request arrives, create a new socket, hand it over to a helper process Go back to the listening mode The helper process would communicate with the client and serve the request

4 What Is a Client ? Typical client – a browser. The steps involved in retrieving www.wpi.edu. www.wpi.edu

5 What Are the Potential Bottlenecks ? The listening process The forking model The disk I/O The network, i.E. The sending end The scheduling model for tasks

6 Protocol Enhancement From HTTP 1.0 to HTTP1.1 Persistent connections

7 Data Touching Operations in TCP Reference: [1]

8 Forking Spawn a new process for every request Spawn a new thread for every request Use events to handle requests Use I/O completion mechanisms to handle processing of events Use asynchronous model of execution

9 Disk I/O Not a pressing issue A lot of small files are cached in typical server implementation mmap() maps files directly to memory

10 SRPT Scheduling (Shortest- remaining-processing-time) Reference: [2]

11 SRPT Scheduling (contd…) Reference: [2]

12 Enhance Network I/O Functions Enhancements to poll() Enhancements to select() Declare_interest() /Dev/poll on Solaris – add, modify, and remove interest sets

13 Use asynchronous model RT signals in Linux – Abeshk Chandra’s paper.

14 Radically new approaches DB approach TCP server

15 The Big Picture The end user experience can be enhanced in three ways Replication of content – mirroring Distributed caching Improve WS performance

16 The Difference Between the Lab and the Real World Slow and Indeterministic behavior of connections Request sizes vary through a large range In real world there are layers of caches and mirrors

17 The Difference Between the Lab and the Real World Network speed – connection speed – varies widely It’s hard to simulate real world environment in labs. Hence the results are hard to verify The test beds are not accurate – the model is skewed. S-client paper

18 Conclusion Factors influencing performance Network I/O operations Socket behavior Scheduling TCP implementation Disk I/O does not have a big impact since small files are cached A lot more, but this is what is presentable within 1800 seconds !


Download ppt "Understanding Factors That Influence Performance of a Web Server Presentation CS535 Project By Thiru."

Similar presentations


Ads by Google