← Back to FAQ
How do I queue commission cycles for thousands of distributors?
Horizon plus Redis. Use Bus::batch() for parallelism with completion callbacks.
Horizon plus Redis queues. Dispatch one job per distributor with Bus::batch() for parallel calculation with completion callbacks; this gives you progress reporting and the ability to handle batch completion as a single event. Monitor lag in Horizon's dashboard; if the queue depth grows during high-volume periods, scale horizontally by adding queue workers. Don't run commission calculations synchronously during checkout; the latency impact and the failure mode (a queue worker can fail and retry, a synchronous checkout cannot) make queue-backed calculation the clear default.