|Sang, Bo; Petri, Gustavo; Ardekani, Masoud Saeida; Ravi, Srivatsan; Eugster, Patrick
|Designing low-latency cloud-based applications that are adaptable to unpredictable workloads and efficiently utilize modern cloud computing platforms is hard. The actor model
is a popular paradigm that can be used to develop distributed applications: actors encapsulate state and communicate with each other by sending events. Consistency is
guaranteed if each event only accesses a single actor, thus
eliminating potential data races and deadlocks. However
it is nontrivial to provide consistency for concurrent events
spanning across multiple actors.
This paper addresses this problem by introducing AEON:
a framework that provides the following properties: (i) Programmability: programmers only need to reason about sequential semantics when reasoning about concurrency resulting from multi-actor events; (ii) Scalability: AEON runtime protocol guarantees serializable and starvation-free execution of multi-actor events, while maximizing parallel execution; (iii) Elasticity: AEON supports fine-grained elasticity enabling the programmer to transparently migrate individual actors without violating the consistency or entailing
significant performance overheads.
Our empirical results show that it is possible to combine
the best of all the above three worlds without compromising
on the application performance.
|Middleware '16 Proceedings of the 17th International Middleware Conference, p.16:1