🪓 Postgres-only Mode

March 24th, 2025

Since we released the first build of Hatchet, we've required that RabbitMQ be installed on self-hosted instances of Hatchet. The reason for this is that RabbitMQ is responsible for brokering messages which are sent between Hatchet engine components -- for example, it's what we use to send a message from the scheduler component (the service which schedules tasks on workers) to the grpc component (the service which workers connect to).

However, we've gotten a lot of feedback from self-hosted users that they'd like to run Hatchet without RabbitMQ. This is for a number of reasons -- RabbitMQ is another dependency to set up and maintain, and it's another moving part in the system which can fail.

So, we're excited to announce a new Postgres-only mode for the Hatchet engine, using Postgres for brokering messages.

And as a bonus feature, the Postgres database also supports metrics, which means you can now view a breakdown of task metrics from the Hatchet dashboard:

Enabling Postgres-only Mode

You can enable Postgres-only mode by setting the following environment variable:

SERVER_TASKQUEUE_KIND=postgres

When not to use Postgres-only Mode

If you're queueing more than 100 tasks/second consistently, RabbitMQ is a more scalable choice for a message broker.

We use cookies

We use cookies to ensure you get the best experience on our website. For more information on how we use cookies, please see our cookie policy.

By clicking "Accept", you agree to our use of cookies.
Learn more.