Publication Date
8-2021
Date of Final Oral Examination (Defense)
6-25-2021
Type of Culminating Activity
Thesis
Degree Title
Master of Science in Computer Science
Department
Computer Science
Supervisory Committee Chair
Amit Jain, Ph.D.
Supervisory Committee Member
Catherine Olschanowsky, Ph.D.
Supervisory Committee Member
Casey Kennington, Ph.D.
Abstract
The actor model is a model for concurrent computation, centered around message passing between entities in a system. It is well suited for distributed programming, due to its semantics including very little guarantees or assumptions of reliability. Actor model implementations have grown more widespread in many languages.
The library Akka (written in Scala) is one of the most popular actor libraries. However, Akka is missing some key features. Our goal is to create our own actor library called Aurum, which not only has these features but exhibits higher performance. The new features include easy ways to forge references, configure and launch clusters, message type translations, and the ability to inject message drops and delays into every part the application. Aurum will be implemented in Rust, a programming language designed for high performance, asynchrony and high levels of abstraction that is well suited for IoT devices.
Our results show that Aurum outperforms Akka. In our benchmarks, a single server running Aurum gives three times the throughput as an equivalent Akka server, while maintaining good programmability and having features useful for IoT.
DOI
https://doi.org/10.18122/td.1869.boisestate
Recommended Citation
Shukla, Arjun, "Actors for the Internet of Things" (2021). Boise State University Theses and Dissertations. 1869.
https://doi.org/10.18122/td.1869.boisestate