aCDN: a Content Delivery Network for Applications
Content delivery networks (CDNs) improve the scalability of accessing
static and, recently, streaming content. However, proxy caching can
improve access to these types of content as well. A unique value of
CDNs is in improving performance of accesses to dynamic
content and other computer applications. This project explores
architectures, algorithms, and performance of a CDN for
applications (aCDN). Our system includes novel algorithms for
automatic redeployment of applications on networked servers as
required by changing demand and for distributing client requests among
application replicas based on their load and proximity. The system
also incorporates a mechanism for keeping application replicas
consistent in the presence of developer updates to the content. A
prototype of the system has been implemented using a AT&T Labs' PhD
ecruiting Database (PhReD) as a testbed application.
Publications