Skip to main content

Workflows

At a high level, a workflow encompasses flow of your business logic and orchestrates the flow of service calls.

Conductor workflows are a composition of Tasks and Operators.

  • An Operator in a workflow is your programming language construct such as switch, loop, fork/join or a return statement.
  • A Task represents business logic execution such as making an HTTP call, sending email, or doing work such as processing data files or executing some business logic.
Workflow = {Tasks + Operators}

Tasks and Workers

Tasks are executed by Workers that run outside the Conductor server deployment. Conductor is agnostic to how the workers are deployed and run and provides lightweight SDKs in all major languages that allows you to expose existing functionality as Conductor Workers. Workers can run on bare metal, on containers, VMs, or as serverless functions.

System Tasks

Conductor also provides pre-built workers for most commonly used tasks.

Conductor has the following set of system tasks available.

TaskDescriptionUse Case
HTTPHTTP TaskInvoke any HTTP(S) endpoints
Inline Code ExecutionInline TaskExecute arbitrary lightweight javascript code
Event PublishingEvent TaskExternal eventing system integration. e.g. amqp, sqs, nats
JQ TransformJQ TaskUse JQ to transform task input/output
Kafka PublishKafka TaskPublish messages to Kafka
Business RulesBusiness Rule TaskEvaluate Business rules from a spreadsheet