Argentina
|
λHive: Formal Semantics of an Edge Computing Model based on JavaScript
Autor
Teragni, Matias
Pons, Claudia Fabiana
Resumen
Edge computing is a paradigm that applies virtualization technology that makes it easier to deploy and run a wider range of applications on the edge servers and take advantage of largely unused computational resources. This article describes the design and formalization of Hive, a distributed shared memory model that can be transparently integrated with JavaScript using a standard out of the box runtime. To define such model a formal definition of the JavaScript language was used and extended to include modern capabilities and custom semantics. This extended model was used to prove that the distributed shared memory can operate on top of existing and unmodified web browsers. The proposed model guarantees the eventual synchronization of data across all the system and provides the possibility to have a stricter consistency using standard http operations. The technical feasibility of this proposal was empirically validated by a prototype that yields reasonably low propagation time and allows the distribution of preexisting JavaScript code without any major modifications. Additionally, the comprehensive formalization of the Hive execution model allows developers to guarantee certain properties of the synchronization mechanism, such as efficient and no blocking.