Скачать презентацию Handling Web Hotspots at Dynamic Content Web Sites Скачать презентацию Handling Web Hotspots at Dynamic Content Web Sites

2f610a27acdc2f245a163ae5cd7b1ae9.ppt

  • Количество слайдов: 16

Handling Web Hotspots at Dynamic Content Web Sites Using Dot. Slash Weibin Zhao Henning Handling Web Hotspots at Dynamic Content Web Sites Using Dot. Slash Weibin Zhao Henning Schulzrinne {zwb, hgs}@cs. columbia. edu Columbia University NYMAN’ 04 September 10, 2004 09/10/2004 Dot. Slash

The Problem n Web hotspots n n n Short-term dramatic surge of request rate The Problem n Web hotspots n n n Short-term dramatic surge of request rate Flash crowds, the Slashdot effect Dynamic content web sites n n n CPU-bound, request rate supported is low Hard to cache dynamic content Bottleneck at different servers n Database server: on-line bookstore (Amazon) n Web server: auction (e. Bay), bulletin board (Slashdot) 09/10/2004 Dot. Slash 2

Our Approach: Dot. Slash n Rescue system n n n Different sites, mutual aid Our Approach: Dot. Slash n Rescue system n n n Different sites, mutual aid Cost effective: for rare events Self-configuring n Build an adaptive distributed web server system on the fly (fully automated) mutual-aid community server server directory 09/10/2004 Dot. Slash server directory 3

Dot. Slash Overview n n n Workload monitoring: CPU/Link Rescue server discovery: different sites Dot. Slash Overview n n n Workload monitoring: CPU/Link Rescue server discovery: different sites Load migration: HTTP redirect, DNS-RR Dynamic virtual hosting: on the fly Adaptive rescue control: desired load region origin reverse caching proxy (2) (1) DNS 09/10/2004 (1) rescue (3) client 1 client 2 Dot. Slash (2) Static content 4

Implementation n Apache module Dynamic DNS: dot-slash. net Service discovery: enhanced SLP Mod_dots client Implementation n Apache module Dynamic DNS: dot-slash. net Service discovery: enhanced SLP Mod_dots client HTTP SHM Apache DNS BIND 09/10/2004 Dot. Slash Dotsd DSRP Other Dotsd SLP m. SLP 5

Dot. Slash for Dynamic Content n n n Remove the web server bottleneck Dynamic Dot. Slash for Dynamic Content n n n Remove the web server bottleneck Dynamic script replication LAMP configuration Apache origin server (1) client (2) (3) My. SQL database (4) (5) PHP rescue server (6) PHP Apache 09/10/2004 Dot. Slash 6

Dynamic Script Replication n Operations at rescue server n n n Map a redirected Dynamic Script Replication n Operations at rescue server n n n Map a redirected URI to a script file Trigger 404 handler if the script file not found n Retrieve the script file n Handle file inclusions n Set query variables n Run the script by invoking native include Operations at origin server n If a request is from a rescue server and for dynamic content, return the script file 09/10/2004 Dot. Slash 7

Handling File Inclusions n The problem n n n A replicated script may include Handling File Inclusions n The problem n n n A replicated script may include files that are located at the origin server Assume: included files under Document. Root Approaches n n Renaming inclusion statements n Need to parse scripts: heavy weight Customized error handler n Catch inclusion errors: light weight 09/10/2004 Dot. Slash 8

Evaluation n Experimental Setup n n Linux machines: Redhat 9. 0 n HC: 2 Evaluation n Experimental Setup n n Linux machines: Redhat 9. 0 n HC: 2 GHz CPU, 1 GB memory n LC: 1 GHz CPU, 512 MB memory Apache: 2. 0. 49, Dot. Slash module PHP: 4. 3. 6, Dot. Slash extension My. SQL: 4. 0. 18, n n open_files_limit, max_connection RUBBo. S bulletin board benchmark n 19 scripts: 1 KB to 7 KB n 439 MB database 09/10/2004 Dot. Slash 9

Increasing Max Request Rate: R Configuration: Origin (HC) Rescue(LC) Rescue(LC) Rescue (LC) DB (HC) Increasing Max Request Rate: R Configuration: Origin (HC) Rescue(LC) Rescue(LC) Rescue (LC) DB (HC) No rescue: R=118 CPU: Origin=100% DB=45% With rescue: R=245 #rescue servers: 9 CPU: Origin=55% DB=100% 245/118>2 09/10/2004 Dot. Slash 10

Effectiveness Another Configuration: Origin (LC) Rescue(LC) Rescue(LC) Rescue(LC) Rescue With rescue: R=245 #rescue server: Effectiveness Another Configuration: Origin (LC) Rescue(LC) Rescue(LC) Rescue(LC) Rescue With rescue: R=245 #rescue server: 10 245/49=5 No rescue: R=49 Comparison: DB (HC) origin server HC LC improvement 2 5 #rescue servers 9 10 Conclusion: remove web server bottleneck 09/10/2004 Dot. Slash 11

CPU Utilization Control 09/10/2004 Dot. Slash 12 CPU Utilization Control 09/10/2004 Dot. Slash 12

Workload Migration 09/10/2004 Dot. Slash 13 Workload Migration 09/10/2004 Dot. Slash 13

Handling Worst-Case Workload Settling time: 24 second #timeouts 921/113565 09/10/2004 Dot. Slash 14 Handling Worst-Case Workload Settling time: 24 second #timeouts 921/113565 09/10/2004 Dot. Slash 14

Reducing Settling Time and #Timeouts Allocate rescue servers in parallel Assign different priorities to Reducing Settling Time and #Timeouts Allocate rescue servers in parallel Assign different priorities to rescue requests and client requests 09/10/2004 Dot. Slash 15

Conclusions n Prototype n n n On-going work n n 10 -fold improvement for Conclusions n Prototype n n n On-going work n n 10 -fold improvement for static content web sites Removing the web server bottleneck for dynamic content web sites DNS-RR experiments Planet. Lab experiments for dynamic content Real Slashdot test For further information n http: //www. cs. columbia. edu/IRT/dotslash 09/10/2004 Dot. Slash 16