Towards a Function-as-a-Service Choreographic Programming Language: Examples and Applications
Fuente:
arXiv
Enregistré dans:
| Auteurs principaux: | , , , , |
|---|---|
| Format: | Preprint |
| Publié: |
2024
|
| Sujets: | |
| Accès en ligne: | |
| Tags: |
Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
|
| _version_ | 1866910485434073088 |
|---|---|
| author | De Palma, Giuseppe Giallorenzo, Saverio Mauro, Jacopo Trentin, Matteo Zavattaro, Gianluigi |
| author_facet | De Palma, Giuseppe Giallorenzo, Saverio Mauro, Jacopo Trentin, Matteo Zavattaro, Gianluigi |
| contents | Choreographic Programming (CP) is a language paradigm whereby software artefacts, called choreographies, specify the behaviour of communicating participants. CP is famous for its correctness-by-construction approach to the development of concurrent, distributed systems. In this paper, we illustrate FaaSChal, a proposal for a CP language tailored for the case of serverless Function-as-a-Service (FaaS). In FaaS, developers define a distributed architecture as a collection of stateless functions, leaving to the serverless platform the management of deployment and scaling. We provide a first account of a CP language tailored for the FaaS case via examples that present some of its relevant features, including projection. In addition, we showcase a novel application of CP. We use the choreography as a source to extract information on the infrastructural relations among functions so that we can synthesise policies that strive to minimise their latency while guaranteeing the respect of user-defined constraints. |
| format | Preprint |
| id |
arxiv_https___arxiv_org_abs_2406_09099 |
| institution | arXiv |
| publishDate | 2024 |
| record_format | arxiv |
| spellingShingle | Towards a Function-as-a-Service Choreographic Programming Language: Examples and Applications De Palma, Giuseppe Giallorenzo, Saverio Mauro, Jacopo Trentin, Matteo Zavattaro, Gianluigi Programming Languages Distributed, Parallel, and Cluster Computing Choreographic Programming (CP) is a language paradigm whereby software artefacts, called choreographies, specify the behaviour of communicating participants. CP is famous for its correctness-by-construction approach to the development of concurrent, distributed systems. In this paper, we illustrate FaaSChal, a proposal for a CP language tailored for the case of serverless Function-as-a-Service (FaaS). In FaaS, developers define a distributed architecture as a collection of stateless functions, leaving to the serverless platform the management of deployment and scaling. We provide a first account of a CP language tailored for the FaaS case via examples that present some of its relevant features, including projection. In addition, we showcase a novel application of CP. We use the choreography as a source to extract information on the infrastructural relations among functions so that we can synthesise policies that strive to minimise their latency while guaranteeing the respect of user-defined constraints. |
| title | Towards a Function-as-a-Service Choreographic Programming Language: Examples and Applications |
| topic | Programming Languages Distributed, Parallel, and Cluster Computing |
| url | https://arxiv.org/abs/2406.09099 |