120 likes | 208 Views
A Method for Transparent Admission Control and Request Scheduling in E-Commerce Web Sites. S. Elnikety, E. Nahum, J. Tracey and W. Zwaenpoel Presented By Tyrel Russell. The Idea. Reduce contention at the database server No modification of existing systems
E N D
A Method for Transparent Admission Control and Request Scheduling in E-Commerce Web Sites S. Elnikety, E. Nahum, J. Tracey and W. Zwaenpoel Presented By Tyrel Russell
The Idea • Reduce contention at the database server • No modification of existing systems • Increase response time and maintain peak throughput
Outline • Introduction • The Gatekeeper Proxy • Experimental Environment • Conclusion and Discussion
The Problems • Two problems for e-commerce web sites • Overload • Responsiveness • Solution is admission control • Measures performance • Enables overload protection • Improves response time
The Gatekeeper Proxy • Intercepts dynamic web content requests • Requests generated by Java servlets on the application server • Estimates expected service times for each type • Determines the capacity of the system • Schedules the requests to improve performance
Estimated Load • Generates estimated load from expected service times for each servlet • This is a measure based on recent executions of requests • Much greater variation between servlets than within servlets • Service times vary based the load
System Capacity • Determined offline • Capacity is defined as the maximum load level that produces the highest capacity • Found by searching the space using candidate values and experimentally verifying them
Admission Control • Maintains running estimate of system load • When request is made, the work estimate is checked against the capacity • If there is room, it is admitted otherwise the request is queued • When jobs are finished, the queued requests are admitted when the room allows
Request Scheduling • To reduce average response time, they use the shortest-job first policy • Queues request based on their expected processing times • To prevent starvation, they used an agin mechanism which enforces an upper bound on the length of time the request can stay in the queue
Experimental Environment • Locking is done by using concurrency control at the application server • They don’t control the serving of images as they are stored at the web server • Evaluate throughput and response time as a function of load
Discussion and Conclusion • Is the concavity assumption of capacity reasonable? • Is the sliding window average of execution time actually a good measure of expected execution time? • Is the assumption that servlets will have relatively uniform loads justified? • Is locking at the server side a good idea? For example, what happens if multiple application servers are used for the same database? • They use a finite-state Markov model is used to model user client behaviour. How were the transition probabilities generated and is this realistic? • How does holding up requests at the proxy effect the scheduling and optimization mechanisms of the database server?