Announcement

LavinMQ 1.2 Feature Highlights - Standby Replication and Streams


Written by: Christina Dahlén


We are thrilled to announce the release of LavinMQ version 1.2! The introduction of the standby replication feature and the addition of streams, in this release, marks a significant milestone for us. But...

What is standby replication?

In certain scenarios, it is crucial to have a way to get back on track, even if it takes some time, when a LavinMQ server crashes or its data is corrupted.

The standby replication feature in LavinMQ was introduced to address that need.

The replication feature would allow you to establish a leader LavinMQ server and one or more follower servers. All changes made on the leader server are seamlessly replicated to the follower nodes.

This in turn opens up new use-cases for implementing a more faul-tolerant message queuing systems with LavinMQ. For more information, refer to our documentation on standby replication in LavinMQ.

But that’s not where it ends. The LavinMQ 1.2 release also comes with Streams.

What are Streams in LavinMQ?

Streams basically perform the same tasks as queues in that they buffer messages from producers that are then read by consumers. However, Streams differ from queues in LavinMQ in one major way:

  • Streams in LavinMQ are immutable.

In this context, it means that messages written to a Stream aren’t deleted after they’re read - though, to be clear, Streams can be configured to automatically remove messages when some specified conditions are met.

To read messages from a Stream in LavinMQ, one or more consumers subscribe to it and read the same message as many times as they need.

Currently, similar to queues, consumers communicate with a Stream through AMQP-based clients, utilizing the AMQP protocol. LavinMQ does not support a dedicated stream protocol at this point.

It’s important to highlight that the Stream feature wasn’t designed to replace queues in LavinMQ, but rather to complement them. Streams open up new possibilities for LavinMQ use-cases.

For information on the usecases of LavinMQ Stream and how to get started with it, refer to our documentation on LavinMQ Streams.

Wrap up

We’ve seen how the replication feature and Streams in LavinMQ open up new use cases for LavinMQ. Ready to take the next steps? Here are some things you should keep in mind:

Managed LavinMQ instance on CloudAMQP

Beyond the replication and Streams features, we discussed, LavinMQ has been built with performance and ease of use in mind - we’ve benchmarked a throughput of about 1,000,000 messages/sec. You can try LavinMQ without any installation hassle by creating a free LavinMQ instance on CloudAMQP. Signing up is a breeze.

Asking for help and giving us feedback

We welcome your feedback and are eager to address any questions you may have about this piece or using LavinMQ. Join our Slack channel to connect with us directly. You can also find LavinMQ on GitHub.