Relé — A powerful Python integration for Google Cloud’s Pub/Sub

We are pleased to announce Relé, a comprehensive Python solution to get you up and running with Google Cloud’s Pub/Sub as quickly and easily as possible. Meant to ease development workflow, Relé comes built-in with key components for managing a project with Pub/Sub enabled services.

Out-of-the-box, Relé provides:

Powerful Publishing API

Highly Scalable Worker

Intuitive Subscription Management

Easily Extensible Middleware

Optional Django Integration

And much more!

Allowing our products to scale with ease, Pub/Sub is a vital piece of infrastructure at Mercadona Tech and we lean on Relé to manage publishing and subscribing to millions of messages.

Use Case

For many years, Python’s go-to task queuing library has either been Celery or RQ. Although on the face of it, Pub/Sub’s design may look similar, it is solving a different problem.

While Celery and RQ solve task queues within an application, Pub/Sub shines when it comes to managing task queues between many services. Leveraging Relé with Pub/Sub maintains an elegant API much like Celery and RQ’s, but instead allows for scalable messaging within a service oriented architecture.

Reasoning

Since the Google Pub/Sub client does not come built-in with solutions to database connection management, publisher management, declaring subscribers, and running workers, the Mercadona Tech team decided to coalesce around an open source solution.

To reduce complexity and risk when adopting Pub/Sub, we organized our experiences from the Python client into one comprehensive library to solve common use cases and patterns suitable for a highly-available production environment.