140 likes | 248 Views
DotSlash An Automated Web Hotspot Rescue System. Jonathan Bulava CSC8530 – Distributed Systems Dr. Paul Schragger. What is DotSlash?. An automated web hotspot rescue system. Implementation is similar to Content Delivery Networks (CDN).
E N D
DotSlashAn Automated Web Hotspot Rescue System Jonathan Bulava CSC8530 – Distributed Systems Dr. Paul Schragger
What is DotSlash? • An automated web hotspot rescue system. • Implementation is similar to Content Delivery Networks (CDN). • People: Weibin Zhao & Henning Schulzinne at Columbia University
Slashdot Effect • A term used when web servers cannot handle an influx of traffic due to links from more popular websites. • Bandwidth is consumed and/or the large number of requests cannot be processed.
Core Techniques • Detecting and predicting overload conditions in real time. • Discovering rescue servers in wide area networks. • Manage rescue relationships. • Designing and evaluating efficient mechanisms for replicating contents dynamically and redirecting client requests in wide area networks.
A Mutual-aid Community • Cost effective solution compared to CDN systems. • Spare capacity in the community is utilized to handle hotspots for an individual site. • Establishes a peer-to-peer communication model.
Configurations The prototype uses a LAMP configuration. Only Dots_Apache is required to use DotSlash.
Dots_Apache • An Apache module that supports basic DotSlash functions. • Workload monitoring • Rescue server discovery • Rescue relationship management • Request redirection • Dynamic virtual hosting • Dynamic DNS update
Dots_PHP • An extension for the PHP module that supports replicating PHP scripts dynamically. Dots_MySQL • A cache-enhanced data driver that supports caching database query results on demand. • Requires the memcached engine and libmemcache C library.
State Transitions and Restrictions Accept rescue request Additional allocation Accept rescue request Initial allocation SOS Normal Rescue Complete release Complete shutdown Partial release Partial shutdown States are mutually exclusive rescuing S3 i.e. a server cannot provide a rescue server while receiving a rescue service. S7 S1 S2 S4 S6 S8 S4
www.rescue.com (5.6.7.8) Cache HTTP Request Rescue www.origin.com (1.2.3.4) origin.com DNS Client rescue.com DNS DNS round-robin and Dynamic Virtual Hosting are implemented to manage rescue servers. (e.g. www-vh1.rescue.com, www-vh2.rescue.com, etc.)
www.origin.com (So) DB (1) (2) Client (6) (5) (4) (7) (3) (8) www.rescue.com (Sr) Rescuing Dynamic Content • Original PHP (or other server-side script) is cached on rescue servers. • File Inclusions (include, require, etc.) • Customized error handler for each script. • Security Issues?
Original Server Database Server Query Result Cache Query Result Cache Web/Application Server Web/Application Server Data Driver Data Driver Client Rescue Server Database Server The Database Bottleneck
References • Weibin Zhao, DotSlash, <http://www1.cs.columbia.edu/~zwb/project/dotslash/>. • Weibin Zhao and Henning Schulzrinne, "Building an Adaptive Distributed Web Server System on the Fly for Handling Web Hotspots," in ACM Symposium on Principles of Distributed Computing (PODC'04) (brief announcement), St. John's, Newfoundland, Canada, July 2004. • Weibin Zhao and Henning Schulzrinne, "DotSlash: Handling Web Hotspots at Dynamic Content Web Sites," in IEEE Global Internet Symposium, Miami, Florida, March 2005. • “Slashdot effect.” Wikipedia.