TU Darmstadt / ULB / TUbiblio

CPL: A Core Language for Cloud Computing -- Technical Report

Bračevac, Oliver and Erdweg, Sebastian and Salvaneschi, Guido and Mezini, Mira :
CPL: A Core Language for Cloud Computing -- Technical Report.
In: CoRR, abs/1602.00981
[Article] , (2016)

Abstract

Running distributed applications in the cloud involves deployment. That is, distribution and configuration of application services and middleware infrastructure. The considerable complexity of these tasks resulted in the emergence of declarative JSON-based domain-specific deployment languages to develop deployment programs. However, existing deployment programs unsafely compose artifacts written in different languages, leading to bugs that are hard to detect before run time. Furthermore, deployment languages do not provide extension points for custom implementations of existing cloud services such as application-specific load balancing policies. To address these shortcomings, we propose CPL (Cloud Platform Language), a statically-typed core language for programming both distributed applications as well as their deployment on a cloud platform. In CPL, application services and deployment programs interact through statically typed, extensible interfaces, and an application can trigger further deployment at run time. We provide a formal semantics of CPL and demonstrate that it enables type-safe, composable and extensible libraries of service combinators, such as load balancing and fault tolerance.

Item Type: Article
Erschienen: 2016
Creators: Bračevac, Oliver and Erdweg, Sebastian and Salvaneschi, Guido and Mezini, Mira
Title: CPL: A Core Language for Cloud Computing -- Technical Report
Language: English
Abstract:

Running distributed applications in the cloud involves deployment. That is, distribution and configuration of application services and middleware infrastructure. The considerable complexity of these tasks resulted in the emergence of declarative JSON-based domain-specific deployment languages to develop deployment programs. However, existing deployment programs unsafely compose artifacts written in different languages, leading to bugs that are hard to detect before run time. Furthermore, deployment languages do not provide extension points for custom implementations of existing cloud services such as application-specific load balancing policies. To address these shortcomings, we propose CPL (Cloud Platform Language), a statically-typed core language for programming both distributed applications as well as their deployment on a cloud platform. In CPL, application services and deployment programs interact through statically typed, extensible interfaces, and an application can trigger further deployment at run time. We provide a formal semantics of CPL and demonstrate that it enables type-safe, composable and extensible libraries of service combinators, such as load balancing and fault tolerance.

Journal or Publication Title: CoRR
Volume: abs/1602.00981
Divisions: Department of Computer Science > Software Technology
Department of Computer Science
Date Deposited: 21 Mar 2016 09:47
Related URLs:
Export:

Optionen (nur für Redakteure)

View Item View Item