fastapi-celery - Example of how to handle background processes with FastAPI, Celery, and Docker

  •        548

Example of how to handle background processes with FastAPI, Celery, and Docker. Check out the post.

https://github.com/testdrivenio/fastapi-celery

Tags
Implementation
License
Platform

   




Related Projects

fastapi-crudrouter - A dynamic FastAPI router that automatically creates CRUD routes for your models

  •    Python

Tired of rewriting generic CRUD routes? Need to rapidly prototype a feature for a presentation or a hackathon? Thankfully, fastapi-crudrouter has your back. As an extension to the APIRouter included with FastAPI, the FastAPI CRUDRouter will automatically generate and document your CRUD routes for you, all you have to do is pass your model and maybe your database connection. FastAPI-CRUDRouter is also lighting fast, well tested, and production ready.

fastapi-admin - A fast admin dashboard based on FastAPI and TortoiseORM with tabler ui, inspired by Django admin

  •    Python

fastapi-admin is a fast admin dashboard based on FastAPI and TortoiseORM with tabler ui, inspired by Django admin. You can check a online demo here.

fastapi-users - Ready-to-use and customizable users management for FastAPI

  •    Python

Add quickly a registration and authentication system to your FastAPI project. FastAPI Users is designed to be as customizable and adaptable as possible.

fastapi-code-generator - This code generator creates FastAPI app from an openapi file.

  •    Python

This code generator creates a FastAPI app from an openapi file. See documentation for more details.


opyrator - 🪄 Turns your machine learning code into microservices with web API, interactive GUI, and more

  •    Python

Turns your Python functions into microservices with web API, interactive GUI, and more. Instantly turn your Python functions into production-ready microservices. Deploy and access your services via HTTP API or interactive UI. Seamlessly export your services into portable, shareable, and executable files or Docker images. Opyrator builds on open standards - OpenAPI, JSON Schema, and Python type hints - and is powered by FastAPI, Streamlit, and Pydantic. It cuts out all the pain for productizing and sharing your Python code - or anything you can wrap into a single Python function.

FastAPI - Web framework for building APIs with Python

  •    Python

FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. It uses OpenAPI for API creation, including declarations of path operations, parameters, body requests, security, etc. It produces interactive API documentation and exploration web user interfaces.

bolt-python - A framework to build Slack apps using Python

  •    Python

A Python framework to build Slack apps in a flash with the latest platform features. Read the getting started guide and look at our code examples to learn how to build apps using Bolt. The Python module documents are available here. Create a Bolt for Python app by calling a constructor, which is a top-level export. If you'd prefer, you can create an async app.

Celery - Distributed Task Queue

  •    Python

Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well. The execution units, called tasks, are executed concurrently on a single or more worker servers using multiprocessing, Eventlet, or gevent. Tasks can execute asynchronously (in the background) or synchronously (wait until ready).

gocelery - Celery Distributed Task Queue in Go

  •    Go

Having being involved in a number of projects migrating server from python to go, I have realized Go can help improve performance of existing python web applications. Celery distributed tasks are used heavily in many python web applications and this library allows you to implement celery workers in Go as well as being able to submit celery tasks in Go. You can also use this library as pure go distributed task queue.

flower - Real-time monitor and web admin for Celery distributed task queue

  •    Python

Flower is a web based tool for monitoring and administrating Celery clusters. Flower API enables to manage the cluster via REST API, call tasks and receive task events in real-time via WebSockets.

node-celery - Celery client for Node.js

  •    Javascript

Note: When using AMQP as result backend with celery prior to version 3.1.7 the result queue needs to be non durable or it will fail with a: Queue.declare: (406) PRECONDITION_FAILED. For RabbitMQ backends, the entire broker options can be passed as an object that is handed off to AMQP. This allows you to specify parameters such as SSL keyfiles, vhost, and connection timeout among others.

piccolo - A fast, user friendly ORM and query builder which supports asyncio.

  •    Python

A fast, user friendly ORM and query builder which supports asyncio. Read the docs. The syntax is clean and expressive.

dingo - An easy-to-use, distributed, extensible task/job queue framework for #golang

  •    Go

One important concept I learned from Celery and inherited in Dingo is that Caller and Worker could share the same codebase. When you send a task message in Celery, that message will not contain any source code, but only the name of the task you want to execute. This works similarly to how host names work on the internet: every worker maintains a mapping of task names to their actual functions, called the task registry.

tasktiger - Python task queue. Because celery is gross.

  •    Python

TaskTiger is a Python task queue using Redis.TaskTiger forks a subprocess for each task, This comes with several benefits: Memory leaks caused by tasks are avoided since the subprocess is terminated when the task is finished. A hard time limit can be set for each task, after which the task is killed if it hasn't completed. To ensure performance, any necessary Python modules can be preloaded in the parent process.

yotaq - yotaq - Your Own Task Queue for Python

  •    Python

So you need a task queue for your Python project. Sure you could check celery, and after three months trying to understand the basic configuration options you'll be good to go. Or you could use a simpler task queue like huey or rq. Pretty good. Our python code will use dill to serialize the functions to be run and redis to store the tasks.

django-celery-beat - Celery Periodic Tasks backed by the Django ORM

  •    Python

This extension enables you to store the periodic task schedule in the database. The periodic tasks can be managed from the Django Admin interface, where you can create, edit and delete periodic tasks and how often they should run.

celery-once - Celery Once allows you to prevent multiple execution and queuing of celery tasks.

  •    Python

Celery Once allows you to prevent multiple execution and queuing of celery tasks. To use celery_once, your tasks need to inherit from an abstract base task called QueueOnce.

Exq - Job processing library for Elixir - compatible with Resque / Sidekiq

  •    Elixir

Exq is a job processing library compatible with Resque / Sidekiq for the Elixir language.While you may reach for Sidekiq / Resque / Celery by default when writing apps in other languages, in Elixir there are some good options to consider that are already provided by the language and platform. So before adding Exq or any Redis backed queueing library to your application, make sure to get familiar with OTP and see if that is enough for your needs. Redis backed queueing libraries do add additional infrastructure complexity and also overhead due to serialization / marshalling, so make sure to evaluate whether or it is an actual need.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.