Robust Distributed Programming Made Easy and Efficient
Перейти к файлу
Ryan Newton 3468e56dd9 Update all references to AmbrosiaLibCS to the latest version. Delete PerformanceTestInterruptible/GeneratedSourceFiles. They have version-specific info that is not portable. 2018-12-07 16:06:25 -08:00
AKS-scripts Update bash scripts for compatibility with ancient (2007) Bash 3.2 shipped by Mac OS 2018-12-06 23:36:35 -08:00
Ambrosia Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00
AmbrosiaTest updated for async test 2018-12-05 16:47:05 -08:00
Clients Update all references to AmbrosiaLibCS to the latest version. Delete PerformanceTestInterruptible/GeneratedSourceFiles. They have version-specific info that is not portable. 2018-12-07 16:06:25 -08:00
DevTools Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00
ImmortalCoordinator Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00
InternalImmortals Update all references to AmbrosiaLibCS to the latest version. Delete PerformanceTestInterruptible/GeneratedSourceFiles. They have version-specific info that is not portable. 2018-12-07 16:06:25 -08:00
Samples Update all references to AmbrosiaLibCS to the latest version. Delete PerformanceTestInterruptible/GeneratedSourceFiles. They have version-specific info that is not portable. 2018-12-07 16:06:25 -08:00
Scripts Script typo fix 2018-12-07 11:20:54 -08:00
docs Delete _config.yml 2018-12-06 13:50:44 -08:00
.dockerignore Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00
.gitattributes Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00
.gitignore Add CodeGenDependencies to .gitignore 2018-12-07 14:12:28 -08:00
.travis.yml Pull .travis.yml file from wip/travis branch 2018-12-06 15:12:57 -08:00
Ambrosia.nuspec Updating tag for Nuspec 2018-12-05 17:20:27 -08:00
BuildCore.cmd Restore BuildCore.cmd to its state that uses an absolute directory, e.g. C:\ambrosia 2018-12-06 10:55:19 -08:00
Dockerfile Improvements to runAmbrosia. Clenaup Dockerfile. Add script for easy non-dockerized dotnetcore builds. 2018-12-07 10:53:07 -08:00
Dockerfile.release Install the rest of the dotnet runtime prereqs on ubuntu for Dockerfile.release 2018-12-06 23:04:57 -08:00
LICENSE License 2018-12-06 12:04:28 -08:00
README.md Improvements to runAmbrosia. Clenaup Dockerfile. Add script for easy non-dockerized dotnetcore builds. 2018-12-07 10:53:07 -08:00
ValidatePreCommit.ps1 Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00
build_docker_images.sh Update bash scripts for compatibility with ancient (2007) Bash 3.2 shipped by Mac OS 2018-12-06 23:36:35 -08:00
build_dotnetcore_bindist.sh Script typo fix 2018-12-07 11:20:54 -08:00
createWindows.bat Initial state for moving over to github.com 2018-12-05 16:15:09 -08:00

README.md

Ambrosia: Highly Robust Distributed Programming Made Easy and Efficient

  • Linux Build and Test: Linux Build and Test status

  • Windows Build-Only: Windows Build Status

  • Travis/Linux Build-Only: Travis Linux Build-only (fork)

Ambrosia is a programming language independent approach for authoring and deploying highly robust distributed applications. Ambrosia dramatically lowers development and deployment costs and time to market by automatically providing recovery and high availability.

Today's datacenter oriented applications, which include most popular services running in Azure today, are composed of highly complex, distributed software stacks. For instance, they typically incorporate Event Hub or Kafka to robustly journal input and interactions for recoverability, log important information to stores like Azure blobs for debuggability, and use extremely expensive mechanisms like distributed transactions, and stateless functions with distributed persistent back-ends, in order to ensure exactly once execution of service code.

In contrast, Ambrosia automatically gives programmers recoverability, high availability, debuggability, upgradability, and exactly once execution, without requiring developers to weave together such complex systems, or use overly expensive mechanisms. Check out the overview deck linked to the left to learn more or email us.

Quick Start

Build the PerformanceTestInterruptible example, using this one-line powershell command:

.\CmdLine-FreshBuild.ps1

Overview of directories

  • LocalAmbrosiaRuntime: the core reliable messaging and coordination engine.

  • InternalImmortals: example programs and services built on Ambrosia.

  • Tools: additional console tools for interacting with the Azure metadata that supports an Ambrosia service.

  • AmbrosiaTest: integration tests.

  • Ambrosia : Language binding for C#

Out of place things that should move:

  • Franklin_TestApp/
    • this contained the first kubernetes prototype, obsolete [2018.09.13]