# Queue

The application queue controls how background work runs for video processing, media moderation, and future jobs.

Configure it from `Admin > Settings > Runtime > Queue`.

- **Inline request** runs immediately while the user waits. This is the safest default for shared hosting.
- **Deferred after response** sends the page response first, then runs in the same PHP process.
- **Spawned background process** starts a separate PHP CLI process. Your host must allow process spawning.
- **Queue worker** stores durable jobs for a Laravel worker. Use this for larger sites or long scans.

When using **Queue worker**, choose Database, Redis, or Amazon SQS, then copy the worker command shown in the admin panel. Redis and SQS can store jobs remotely, but a running application worker is still required to execute them.

The Queue page includes a setup explanation, a generated worker command, and a test that dispatches a real job. On shared hosting, use inline mode, spawned mode if your host supports it, or a cron worker with `--stop-when-empty`.

If you use queue workers, restart them after updates or queue/media setting changes: `php artisan queue:restart`.
