I've decided to offload some of the long-running tasks to a task queuing system. For this purpose, I've selected ARQ as the middleware for task management, with FastAPI serving as the frontend framework. According to ARQ's documentation, a separate worker process is required alongside the main application. This means that in production, I’ll need to run two containers: one for the FastAPI app and another for the ARQ worker. Do you have any recommendations or best practices for setting this up effectively in a production environment? Continue reading...