CMU-CS-06-101
Computer Science Department
School of Computer Science, Carnegie Mellon University



CMU-CS-06-101

A Self-Service Approach
to Scalable Service Deployment

Michael K. Reiter*, Asad Samar**

January 2006

This report is superceded by Computer Science
Technical Report CMU-CS-06-101R.

CMU-CS-06-101R.pdf


Keywords: Scalable service deployment, consistency protocols, fault tolerance, distributed algorithms

We describe a system that enables services to scale to large numbers of clients, without the addition of new server resources and without sacrificing service consistency. Our system best supports services that can be decomposed into service objects that are typically accessed individually. Scalability is achieved by migrating objects and outsourcing operation processing to the clients themselves. We present novel algorithms for ensuring consistency of the service and for recovering objects if a client disconnects and leaves the latest versions of objects unreachable. Our system outperforms a centralized service implementation when object state (and thus object migration cost) is small, and when operations are compute-intensive (thus taking advantage of client processing power). In addition, a client executing its own operations enables applications in which the client is unwilling to send its operations elsewhere for processing, due to privacy concerns. We demonstrate these advantages through the evaluation of a wide-area network traffic classification service built using our system.

23 pages

*Department of Electrical and Computer Engineering and Computer Science Department **Department of Electrical and Computer Engineering, Carnegie Mellon University


Return to: SCS Technical Report Collection
School of Computer Science

This page maintained by reports@cs.cmu.edu