견고하고 내구성 있는 백그라운드 작업(FastAPI의 가벼운 BackgroundTasks를 넘어서)에는 진짜 작업 큐를 사용합니다: Celery(확립된 표준) 또는 ARQ(현대적 async 네이티브 큐). 이들은 Redis 같은 브로커를 백엔드로, 무겁고 재시도 가능하며 스케줄링된 작업을 별도의 워커 프로세스에서 실행합니다.
왜 그냥 BackgroundTasks가 아닌가?
BackgroundTasks는 웹 프로세스에서 실행됨 → 영속성 없음(크래시 시 손실), 재시도 없음,
스케줄링 없음, 무거운 작업이 워커를 묶음. 빠른 fire-and-forget에만 적합.
내구성 있고/중요하고/무겁고/스케줄링된 작업 → 진짜 작업 큐(Celery / ARQ) 사용.
