Overview of Inngest Flow Control mechanisms
Inngest provides several flow control methods to manage how functions are executed, preventing system overload and ensuring reliability. The available mechanisms include:
- Multi-tenancy: Groups queued work by tenant or resource to reduce head-of-line blocking and ensure best-effort fairness.
- Concurrency: Limits the number of executing steps across function runs. Useful for limiting workloads by user, resource, or globally.
- Throttling: Limits the throughput of function execution over a specific period, typically used to comply with third-party API rate limits.
- Rate Limiting: Prevents excessive runs by skipping events that exceed a specific limit over a time period, protecting against abuse.
- Debounce: De-duplicates events over a sliding time window to avoid unnecessary invocations when functions are triggered in quick succession.
- Priority: Dynamically adjusts the execution order of functions to move critical work to the front of the queue.