"""RQ Worker for processing background tasks.""" import redis from loguru import logger from rq import Worker, Queue, Connection from app.infra.config import get_settings settings = get_settings() def main(): """Start RQ worker to process thumbnail generation tasks.""" logger.info("Starting RQ worker for thumbnail generation...") # Parse Redis URL redis_url = settings.redis_url logger.info(f"Connecting to Redis: {redis_url}") # Connect to Redis redis_conn = redis.from_url(redis_url) # Listen to 'thumbnails' queue with Connection(redis_conn): worker = Worker( [Queue("thumbnails")], connection=redis_conn, name="thumbnail-worker", ) logger.info("Worker started, listening for tasks...") worker.work() if __name__ == "__main__": main()