common

Messaging Queue Terminology Across Different Ecosystems

 

 

Concept

Python/Celery

Golang/Machinery

PHP/Symfony Messenger

PHP/Laravel Queue

Node.js/Bull

Message

Task

Task

Message

Job

Job

Publisher

app.send_task()

server.SendTask()

MessageBus->dispatch()

Queue::push()

queue.add()

Consumer

Worker

Worker

Worker

Worker

Worker

Handler

Task function

Task function

MessageHandler

Job::handle()

Process function

Queue

Queue

Queue

Transport

Queue

Queue

Broker

Broker (RabbitMQ, Redis, ...)

Broker (RabbitMQ, Redis, ...)

Transport (AMQP, Redis, ...)

Connection (Redis, SQS, ...)

Redis

Batch Processing

Chunks

Group

-

Bus::batch()

Queue.addBulk()

Delayed Execution

apply_async(countdown=)

Delay

DelayStamp

delay()

queue.add({delay:})

Retry on Failure

retry()

RetryTask()

RetryStrategyInterface

retryUntil()

attempts

Scheduler

Celery Beat

PeriodicTask

-

Schedule::command()

repeat option

Load Distribution

worker_concurrency

concurrency

-

connection->size

concurrency

Error Storage

Dead Letter Queue

ErrorHandler

failure_transport

failed_jobs table

failedJobs

Task Chains

chain()

Chain()

-

Bus::chain()

queue.add().then()

Prioritization

task_priority

-

StampInterface

pushWithPriority()

priorit

 

y

 

 

 

Афоризм дня:
Наслаждаться общением – главный признак дружбы. (500)

Leave a reply