@inproceedings{cccbcae003114023b5de24815e60035f,
title = "Node.Scala: Implicit parallel programming for high-performance web services",
abstract = "Event-driven programming frameworks such as Node.JS have recently emerged as a promising option for Web service development. Such frameworks feature a simple programming model with implicit parallelism and asynchronous I/O. The benefits of the event-based programming model in terms of concurrency management need to be balanced against its limitations in terms of scalability on multicore architectures and against the impossibility of sharing a common memory space between multiple Node.JS processes. In this paper we present Node.Scala, an event-based programming framework for the JVM which overcomes the limitations of current event-driven frameworks. Node.Scala introduces safe stateful programming for event-based services. The programming model of Node.Scala allows threads to safely share state in a standard event-based programming model. The runtime system of Node.Scala automatically parallelizes and synchronizes state access to guarantee correctness. Experiments show that services developed in Node.Scala yield linear scalability and high throughput when deployed on multicore machines. {\textcopyright} 2012 Springer-Verlag.",
author = "Daniele Bonetta and Danilo Ansaloni and Achille Peternier and Cesare Pautasso and Walter Binder",
year = "2012",
doi = "10.1007/978-3-642-32820-6_62",
language = "English",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
pages = "626--637",
booktitle = "Parallel Processing - 18th International Conference, Euro-Par 2012, Proceedings",
note = "18th International Conference on Parallel Processing, Euro-Par 2012 ; Conference date: 27-08-2012 Through 31-08-2012",
}