Navigate:
Celery
~$CELER0.5%

Celery: Distributed task queue for Python

Asynchronous task queue with distributed worker execution.

LIVE RANKINGS • 10:20 AM • STEADY
OVERALL
#144
129
BACKEND & APIS
#6
6
30 DAY RANKING TREND
ovr#144
·Backe#6
STARS
28.2K
FORKS
5.0K
7D STARS
+125
7D FORKS
+15
See Repo:
Share:

Learn more about Celery

Celery is a Python library for managing distributed task queues and asynchronous job execution. It operates by having client applications place task messages onto a broker, which then routes those messages to worker processes for execution. The system supports multiple message brokers (AMQP, Redis, SQS) and allows horizontal scaling through multiple workers and brokers. Common deployment patterns include background job processing, scheduled task execution, and workload distribution across server clusters.

Celery

1

Multi-broker support

Celery integrates with multiple message broker backends including RabbitMQ/AMQP, Redis, and AWS SQS, allowing users to select infrastructure based on their deployment requirements rather than being locked to a single system.

2

Language interoperability

While written in Python, Celery's message protocol can be implemented in other languages. Implementations exist for Node.js, PHP, Go, and Rust, enabling task queue communication across polyglot systems.

3

Flexible scheduling and routing

Celery provides task scheduling capabilities, message routing options, and support for task prioritization and rate limiting, allowing fine-grained control over job execution patterns and worker allocation.


from celery import Celery

app = Celery('tasks', broker='redis://localhost:6379')

@app.task
def send_email(recipient, subject, body):
    # Send email logic here
    return f"Email sent to {recipient}"

# Call task asynchronously
result = send_email.delay('user@example.com', 'Hello', 'Welcome!')


[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers