1
Config. config/horizon.php: environments, each with named supervisors. defaults is merged into every one of them.
2
Master process. php artisan horizon, kept alive by Supervisor on a server. horizon:terminate on deploy to pick up new code.
3
Supervisor, a named group of workers over a list of queues: balance auto, simple or false; tries, timeout, backoff.
4
Workers. Scaled between minProcesses and maxProcesses, at most balanceMaxShift every balanceCooldown seconds.
5
Redis. Holds the queues and, on its own horizon connection, the job history, tags and metric snapshots.
6
Dashboard. /horizon, local only until the viewHorizon gate allows more. Metrics need horizon:snapshot on the scheduler.