Scheduling
Scheduling allows workflows to execute automatically at predefined times or recurring intervals. Instead of requiring manual execution, scheduled workflows run in the background whenever their configured schedule becomes due. Scheduling is useful for automation, monitoring, maintenance, and recurring AI tasks.What is Workflow Scheduling?
A workflow schedule defines when a workflow should execute. Conceptually:Why Schedule Workflows?
Many business processes happen repeatedly. Examples include:- daily reports
- hourly monitoring
- nightly data synchronization
- recurring document processing
- periodic AI analysis
- automated maintenance
Scheduler Architecture
BindAI separates scheduling from workflow execution.Workflow Schedule
A workflow schedule contains timing information. Typical properties include:- workflow identifier
- next execution time
- execution interval
- enabled state
Scheduler
The scheduler manages registered schedules. Conceptually:Due Workflows
During each scheduling cycle:Recurring Workflows
Recurring schedules automatically calculate their next execution.One-Time Execution
Schedules may also execute only once.Rescheduling
After a recurring workflow finishes:Example
Suppose a workflow runs every hour.Background Automation
Scheduling enables continuous automation. Examples include:- checking system health
- generating summaries
- refreshing knowledge bases
- sending notifications
- cleaning temporary data
- processing queued documents
Scheduling vs Loops
Although both involve repeated execution, they solve different problems.
Loops repeat during one workflow execution.
Schedules create future workflow executions.
Time Zones
Production scheduling should use timezone-aware timestamps. Using timezone-aware datetime objects helps avoid issues caused by:- daylight saving time
- server location differences
- UTC/local time conversions
Enabling and Disabling
Schedules can be enabled or disabled.Best Practices
- Use timezone-aware datetimes.
- Keep scheduled workflows idempotent whenever possible.
- Monitor recurring workflows.
- Use reasonable execution intervals.
- Avoid overlapping executions of the same workflow unless intentionally supported.
- Log execution history for troubleshooting.
