Abstract
Today’s connected world demands applications that are responsive, always available, and can service a large number of users. However, the task of writing such applications is daunting, even for experienced developers. We propose CScale, a programming model that attempts to simplify this task. The objective of CScale is to let programmers specify their application’s core logic declaratively without explicitly managing distribution. CScale applications have simple semantics that simplify reasoning about correctness and enable testing and debugging on the single machine. In turn, the CScale runtime manages all aspects of execution of a CScale application on large clusters, including deployment, state management (replication and data partitioning) and fault tolerance. CScale ensures high availability by using distributed wait-free data structures to manage state. CScale does impose some constraints on the kind of operations clients can perform. However, we find that many real-world web applications can be naturally expressed using CScale.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Agrawal, P., Silberstein, A., Cooper, B.F., Srivastava, U., Ramakrishnan, R.: Asynchronous view maintenance for vlsd databases. In: SIGMOD 2009, Stanford InfoLab (June 2009)
Faleiro, J., Rajamani, S., Rajan, K., Ramalingam, G., Vaswani, K.: Generalized lattice agreement. In: Principles of Distributed Computing (PODC) (July 2012)
Fischer, M.J., Lynch, N., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. Journal of the ACM 32(2), 374–382 (1985)
Lamport, L.: The part-time parliament. ACM Transactions on Computer Systems 16, 133–169 (1998)
Shapiro, M., Preguiça, N., Baquero, C., Zawirski, M.: Convergent and commutative replicated data types. Bulletin of the European Association for Theoretical Computer Science (EATCS) (104), 67–88 (2011)
Zhuge, Y., Garcia-molina, H., Wiener, J.L.: The strobe algorithms for multi-source warehouse consistency. In: International Conference on Parallel and Distributed Information Systems, pp. 146–157 (1996)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Faleiro, J., Rajamani, S., Rajan, K., Ramalingam, G., Vaswani, K. (2012). CScale – A Programming Model for Scalable and Reliable Distributed Applications. In: Calinescu, R., Garlan, D. (eds) Large-Scale Complex IT Systems. Development, Operation and Management. Monterey Workshop 2012. Lecture Notes in Computer Science, vol 7539. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34059-8_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-34059-8_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-34058-1
Online ISBN: 978-3-642-34059-8
eBook Packages: Computer ScienceComputer Science (R0)