usenix conference policies
Ninja: A Framework for Network Services
Ninja is a new framework that makes it easy to create robust scalable Internet services. We introduce a new programming model based on the natural parallelism of large-scale services, and show how to implement the model. The first key aspect of the model is intelligent connection management, which enables high availability, load balancing, graceful degradation and online evolution. The second key aspect is support for shared persistent state that is automatically partitioned for scalability and replicated for fault tolerance. We discuss two versions of shared state, a cluster-based hash table with transparent replication and novel features that reduce lock contention, and a cluster-based file system that provides local transactions and cluster-wide namespaces and replication. Using several applications we show that the framework enables the creation of scalable, highly available services with persistent data, with very little application code -- as little as one-tenth the code size of comparable stand-alone applications.
author = {J. Robert von Behren and Eric A. Brewer and Nikita Borisov and Michael Chen and Matt Welsh and Josh MacDonald and Jeremy Lau and Steve Gribble and David Culler},
title = {Ninja: A Framework for Network Services},
booktitle = {2002 USENIX Annual Technical Conference (USENIX ATC 02)},
year = {2002},
address = {Monterey, CA},
url = {https://www.usenix.org/conference/2002-usenix-annual-technical-conference/ninja-framework-network-services},
publisher = {USENIX Association},
month = jun
}
connect with us