Rice Computer Science: <title>Rice Computer Science-Colloquia
[RiceCS]
DEPARTMENT
RESEARCHACADEMICS
PEOPLENEWS
[Rice]
Rice Computer Science
  SEARCH:
  
Rice University
Department of Computer Science
and Department of Electrical and Computer Engineering
present


Matt Welsh
Univ. of California - Berkeley

SEDA: An Architecture for Well-Conditioned, Scalable Internet Services

Abstract

Modern Internet services are increasingly dynamic, with massive concurrency demands as well as enormous variations in load. The well-documented "Slashdot effect" demonstrates what happens to an Internet service when faced with a spontaneous load many times that of the average: typically, the service buckles under the overload, giving the impression that it has crashed. The dynamic nature of Internet services makes it difficult to engineer this problem away. Traditional thread-based models of concurrency cannot scale to many thousands of tasks, and operating systems yield little control over resource usage, leading to disastrous results under overload. We present a general-purpose software architecture that addresses the problem of supporting massive concurrency and load conditioning in a highly dynamic environment. We describe the Staged Event-Driven Architecture, or SEDA, in which applications consist of a network of event-driven stages connected by explicit queues. This architecture allows services to be well- conditioned to load, preventing resources from being over committed when demand exceeds service capacity. In addition, SEDA makes use of a set of dynamic resource controllers to keep stages within their operating regime despite large fluctuations in load. This talk presents the SEDA design as well as an implementation of an Internet services platform based on this architecture. We also discuss control mechanisms for automatic tuning and load conditioning, including thread pool sizing, event batching, and adaptive load shedding. Our results show that SEDA applications exhibit higher performance than traditional service designs, and are robust to huge variations in load.

Monday, March 25 @ 3:00p.m. in Duncan Hall 1070
A reception will follow the talk at 4:00p.m. in DH 3092

About Matt Welsh

Matt Welsh is a Ph.D. candidate at UC Berkeley. His research interests include Internet service architectures, distributed systems, language and compiler support for building robust systems, workstation clusters, and system area networks. Matt received his MS from UC Berkeley and his BS from Cornell University, and has spent time at Fujitsu Labs, University of Cambridge, University of Glasgow, and the Vrije Universiteit Amsterdam. He is a longtime Linux developer and evangelist, and is the coauthor of "Running Linux", published by O'Reilly and Associates.

--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---