Skip to main content

Orchestration

Tower provides orchestration capabilities for scheduling and coordinating app runs.

Fan-Out Pattern: Parallel Runs

This example demonstrates Tower's run and wait orchestration capabilities. It downloads data for multiple tickers by launching parallel runs of the write-ticker-data-to-iceberg app, each with different parameters.

The app is idempotent and designed to run on a daily schedule.

Highlights: tower.run(), tower.wait(), parallel execution, app dependencies

Scheduling Apps

Many Tower apps support scheduling via the Tower CLI. For instance, the write-ticker-data-to-iceberg app can be scheduled to run daily:

tower schedules create --app=write-ticker-data-to-iceberg --cron="0 9 * * *"

You can also create schedules with custom parameters:

tower schedules create --app=write-ticker-data-to-iceberg --cron="0 9 * * *" \
--parameter=TICKERS="MSFT,AAPL,GOOGL"