Pass-by-move semantics for function mobility in distributed systems.

In distributed computing systems, function entities live on single machines, and data is shared between nodes in order to carry out calculations. This leads to undesirable characteristics, such as increased network load, a greater amount of shared information, and data vulnerabilities. The introduct...

Full description

Autores:
Bonet De Vivero, Juan Camilo
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2024
Institución:
Universidad de los Andes
Repositorio:
Séneca: repositorio Uniandes
Idioma:
eng
OAI Identifier:
oai:repositorio.uniandes.edu.co:1992/75067
Acceso en línea:
https://hdl.handle.net/1992/75067
Palabra clave:
Distributed computing
Metaprogramming
Fog computing
Ingeniería
Rights
openAccess
License
Attribution-ShareAlike 4.0 International
Description
Summary:In distributed computing systems, function entities live on single machines, and data is shared between nodes in order to carry out calculations. This leads to undesirable characteristics, such as increased network load, a greater amount of shared information, and data vulnerabilities. The introduction of fog computing architectures, mitigates these problems by moving part of the computation to edge devices. To further tackle these problems, this work explores the use of pass-by-move semantics to distribute functions between many nodes, effectively reducing network load and avoiding unnecessary information sharing. To build the new semantics, we use Elixir’s metaprogramming capabilities. In order to show the usability of this approach, we implement a proof-of-concept app that demonstrates reduced network load and a reduced amount of shared data, which protects data vulnerabilities and confidentiality.