Cadence is a distributed, scalable, durable, and highly available orchestration engine we developed at Uber Engineering to execute asynchronous long-running business logic in a scalable and resilient way.
cadence-client is the framework for authoring workflows and activities in Java.
If you are authoring in Go, see Go Cadence Client.
For samples, see Samples for the Java Cadence client.
Run Cadence Server
Run Cadence Server using Docker Compose:
curl -O https://raw.githubusercontent.com/uber/cadence/master/docker/docker-compose.yml docker-compose up
If this does not work, see instructions for running the Cadence Server at https://github.com/uber/cadence/blob/master/README.md.
Build a configuration
Add cadence-client as a dependency to your pom.xml:
<dependency> <groupId>com.uber.cadence</groupId> <artifactId>cadence-client</artifactId> <version>2.4.1</version> </dependency>
or to build.gradle:
compile group: 'com.uber.cadence', name: 'cadence-client', version: '2.4.1'
The documentation on how to use the Cadence Java client is here.
Javadocs for the client API are located here.
We'd love your help in making the Cadence Java client great. Please review our contribution guidelines.
Apache License, please see LICENSE for details.