ActiveWorkflow workflows usually (but not always) fall into one or more of the following three use cases:
- Periodic Execution
- Event-Driven Orchestration
You want to perform a complex piece of work on a regular basis.
Often you need to execute a piece of business logic periodically, for example to generate a monthly report with data drawn from multiple data sources. With ActiveWorkflow you can orchestrate scalable execution of multiple pieces of business logic, while getting error handling, agent-level retry functionality, and execution history.
You don't care about periodicity, you care about results.
Polling is frequently checking the status of an external resource in a synchronous way. Examples of polling are checking a URL for a specific HTTP response code or calling an API to see if a specific resource has become available.
You want to connect and organise complex flows of logic, data and messages.
Often as a creator and/or consumer of various services you are interested to be notified of events that occur, when they occur, and then execute certain business logic accordingly. For example, triggering an email campaign in reaction to events generated by user behaviour.