Comprehensive Celery Integration Enhancement in FastAPI Boilerplate#39
Open
marcosmamorim wants to merge 2 commits intoteamhide:masterfrom
Open
Comprehensive Celery Integration Enhancement in FastAPI Boilerplate#39marcosmamorim wants to merge 2 commits intoteamhide:masterfrom
marcosmamorim wants to merge 2 commits intoteamhide:masterfrom
Conversation
… Boilerplate This commit overhauls the Celery integration within the FastAPI Boilerplate project by introducing a new class, `CeleryConfigurator`, which centralizes the configuration of Celery. This includes dynamic queue setup based on the presence of `tasks.py` in module subdirectories, ensuring scalability and maintainability. Additionally, the integration now seamlessly manages database sessions between FastAPI and Celery, sharing session handling logic to reduce redundancy and improve performance.
oscarfzz
approved these changes
Jul 7, 2024
Owner
|
Sorry for the late reply. If you have any test code, I will take a close look at it. Thanks for your contribution. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Comprehensive Celery Integration Enhancement in FastAPI Boilerplate
Overview
This PR introduces a significant enhancement to the Celery integration mechanism within the FastAPI Boilerplate project. The changes aim to streamline task management and improve the efficiency of background task processing by sharing database session configurations between FastAPI and Celery components.
Key Changes
tasks.pyfiles within each module'sapp/*/application/celerydirectory, creating a dedicated queue for each module found. This approach eliminates the need for manual queue setup and enhances scalability.Benefits
Usage Example
With the new setup, adding a new module with background tasks only requires adding a
tasks.pyfile in the correct directory. The system automatically handles the rest, setting up queues and ensuring the tasks are correctly routed and executed.