Need advice about which tool to choose?Ask the StackShare community!
Azure Service Bus vs Celery: What are the differences?
Azure Service Bus: Reliable cloud messaging as a service (MaaS) *. It is a cloud messaging system for connecting apps and devices across public and private clouds. You can depend on it when you need highly-reliable cloud messaging service between applications and services, even when one or more is offline; *Celery:** Distributed task queue. 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.
Azure Service Bus and Celery can be categorized as "Message Queue" tools.
Celery is an open source tool with 13.1K GitHub stars and 3.36K GitHub forks. Here's a link to Celery's open source repository on GitHub.
According to the StackShare community, Celery has a broader approval, being mentioned in 355 company stacks & 455 developers stacks; compared to Azure Service Bus, which is listed in 11 company stacks and 8 developer stacks.
Hello dear developers, our company is starting a new project for a new Web App, and we are currently designing the Architecture (we will be using .NET Core). We want to embark on something new, so we are thinking about migrating from a monolithic perspective to a microservices perspective. We wish to containerize those microservices and make them independent from each other. Is it the best way for microservices to communicate with each other via ESB, or is there a new way of doing this? Maybe complementing with an API Gateway? Can you recommend something else different than the two tools I provided?
We want something good for Cost/Benefit; performance should be high too (but not the primary constraint).
Thank you very much in advance :)
There are many different messaging frameworks available for IPC use. It's not really a question of how "new" the technology is, but what you need it to do. Azure Service Bus can be a great service to use, but it can also take a lot of effort to administrate and maintain that can make it costly to use unless you need the more advanced features it offers for routing, sequencing, delivery, etc. I would recommend checking out this link to get a basic idea of different messaging architectures. These only cover Azure services, but there are many other solutions that use similar architectural models.
https://docs.microsoft.com/en-us/azure/event-grid/compare-messaging-services
Pros of Azure Service Bus
- Easy Integration with .Net4
- Cloud Native2
- Use while high messaging need1
Pros of Celery
- Task queue98
- Python integration63
- Django integration40
- Scheduled Task30
- Publish/subsribe19
- Various backend broker8
- Easy to use6
- Great community5
- Workflow5
- Free4
- Dynamic1
Sign up to add or upvote prosMake informed product decisions
Cons of Azure Service Bus
- Limited features in Basic tier1
- Skills can only be used in Azure - vendor lock-in1
- Lacking in JMS support1
- Observability of messages in the queue is lacking1
Cons of Celery
- Sometimes loses tasks4
- Depends on broker1