Skip to content

choria-io/stream-replicator

Choria Stream Replicator

Overview

This is a Stream data replicator for Choria Streams aka NATS JetStream.

Conceptually it's like a JetStream Source that runs outside the JetStream process and can therefore be used to copy data between 2 completely independent clusters.

In addition to the core Source-like behavior this replicator has some features of particular use to the Choria project in that it can sample a Source Stream and, for any unique publisher, only replicate data on a set interval like once an hour or when there is a significant change in the data being sent.

When sampling it publishes advisories about senders that have not been seen recently and other significant events allowing a central aggregator to have a more granular time window awareness than it could get by looking at its data alone.

Deployment

Multiple Streams can be replicated and order is preserved.

Go Report Card CodeQL Unit Tests