Yaksha A SelfTuning Controller for Managing the Performance

  • Slides: 29
Download presentation
Yaksha: A Self-Tuning Controller for Managing the Performance of 3 -Tiered Web Sites Abhinav

Yaksha: A Self-Tuning Controller for Managing the Performance of 3 -Tiered Web Sites Abhinav Kamra, Vishal Misra CS Department Columbia University Erich Nahum IBM TJ Watson Research Center

Dynamic Content Online shopping n Amazon, Best. Buy News snippets n http: //news. google.

Dynamic Content Online shopping n Amazon, Best. Buy News snippets n http: //news. google. com/ Current weather conditions Real-time stock tickers

Dynamic Content Generation http Web Server App Server Database Server 3 -Tier Structure: n

Dynamic Content Generation http Web Server App Server Database Server 3 -Tier Structure: n n n Web Server: Static web pages App Server: CGI / Java servlets Database Server: Backend Data Store

Major Problems Overloaded Web Sites: n n The “Slashdot Effect” Unanticipated load causes site

Major Problems Overloaded Web Sites: n n The “Slashdot Effect” Unanticipated load causes site to crash Unresponsive Web Sites: n n The “Abandoned Shopping Cart’’ Unacceptable delays lead to reduced usage

Throughput Admission Control Ideal Actual Load To prevent overload, perform admission control: n n

Throughput Admission Control Ideal Actual Load To prevent overload, perform admission control: n n n Notion of capacity in the system Identify the job ahead of time & amount of work generated Only let jobs in if they won’t overload system Once you reach full capacity: n n Make jobs wait Drop jobs

Why Self-Tuning ? Parameter Setting n n Lots of experimentation Workload characterization Re-done for

Why Self-Tuning ? Parameter Setting n n Lots of experimentation Workload characterization Re-done for every system change

Outline Motivation & Background The ‘Yaksha’ Controller n n Architecture Modeling Design Self-Tuning Experimental

Outline Motivation & Background The ‘Yaksha’ Controller n n Architecture Modeling Design Self-Tuning Experimental Environment Experimental Results Summary and Conclusions

The ‘Yaksha’ Controller Architecture Clients http Yaksha Web Server App Server Database Server Intercepts

The ‘Yaksha’ Controller Architecture Clients http Yaksha Web Server App Server Database Server Intercepts HTTP requests n Decides whether to accept or reject new connections Maintains several measurement-based estimates: n n n Per connection Response and Sojourn times Per customer-class based estimates Per query-type based estimates

Modeling + S Controller Web Server – Reference Input n n = Desired Response/Sojourn

Modeling + S Controller Web Server – Reference Input n n = Desired Response/Sojourn times = Incoming job acceptance probability

Modeling System Abstraction n n M/GI/1 Processor Sharing Queue Linearization approximation Open loop transfer

Modeling System Abstraction n n M/GI/1 Processor Sharing Queue Linearization approximation Open loop transfer function n

Design Proportional Integral (PI) Control n n Zero steady state error Closed loop transfer

Design Proportional Integral (PI) Control n n Zero steady state error Closed loop transfer function n

Design (contd. ) Setting system parameters n Fix controller time constant to 10 sec

Design (contd. ) Setting system parameters n Fix controller time constant to 10 sec n Fix phase margin at 45 degrees Bilinear transform to convert to digital form

Self-Tuning ‘Pure gain’ open loop transfer function Effective arrival rate ‘Tuned’ transfer function Running

Self-Tuning ‘Pure gain’ open loop transfer function Effective arrival rate ‘Tuned’ transfer function Running average for pa

Parameter Setting Parameters w/o Self-Tuning n n n Expected input rate Expected connection drop

Parameter Setting Parameters w/o Self-Tuning n n n Expected input rate Expected connection drop rate Target response time Parameters with Self-Tuning n Target response time

Outline Motivation & Background The ‘Yaksha’ Controller Experimental Environment n n Setup & Methodology

Outline Motivation & Background The ‘Yaksha’ Controller Experimental Environment n n Setup & Methodology Software & Hardware Experimental Results Summary and Conclusions

Experimental Setup SQL Workload Generator Web/App Server Controller Lightweight Proxy Database Server

Experimental Setup SQL Workload Generator Web/App Server Controller Lightweight Proxy Database Server

Emulated Clients http Tomcat SQL My. SQL Remote Browser Emulator n Session duration n

Emulated Clients http Tomcat SQL My. SQL Remote Browser Emulator n Session duration n Think time n Markov model Load is a function of the number of clients

Software Workload Generator Web/App Server Controller Lightweight Proxy Workload Generator TPC-W 1. 0. 1

Software Workload Generator Web/App Server Controller Lightweight Proxy Workload Generator TPC-W 1. 0. 1 Lightweight Proxy Tinyproxy 1. 6. 1 Web/App Server Tomcat 4. 1. 27 Database Server My. SQL 4. 1. 0 SQL Database Server

Hardware TPC-W Client http Tinyproxy/ Tomcat CPU Intel Pentium 1. 7 GHz Memory 512

Hardware TPC-W Client http Tinyproxy/ Tomcat CPU Intel Pentium 1. 7 GHz Memory 512 MB Disk 12 GB, 12 ms, 5400 RPM Network 100 Mbps Ethernet SQL My. SQL

Outline Motivation & Background The ‘Yaksha’ Controller Experimental Environment Experimental Results n n Response

Outline Motivation & Background The ‘Yaksha’ Controller Experimental Environment Experimental Results n n Response time control Throughput control Self-tuning Model validation Summary and Conclusions

Results: Response time control

Results: Response time control

Results: Throughput control

Results: Throughput control

Results: Self-tuning

Results: Self-tuning

Results: Self-tuning

Results: Self-tuning

Results: Model Validation

Results: Model Validation

Summary & Future Work Presented the ‘Yaksha’ Control System n n PI admission control

Summary & Future Work Presented the ‘Yaksha’ Control System n n PI admission control for http connections Overload prevention Response time bounds Self-Tuning Control Future Work n Throughput maximization

Thank You!

Thank You!

Related Work Admission Control for Static Content Web Servers: n Bhatti 99, Li 00,

Related Work Admission Control for Static Content Web Servers: n Bhatti 99, Li 00, Voigt 01, Pradhan 02 n Provide throughput/response time/BW guarantees Control n Tarek 01, Tarek 02, Hellerstein 01, Hellerstein 02, Welsh 03 n Control theory for resource management n Admission control for Apache, Lotus notes Dynamic Content: n Dynaserver project at Rice n TPC-W Benchmarks

Results: Throughput control - Pa

Results: Throughput control - Pa