NATS global cluster with KV store is almost ready

The NATS Team now have added a KV store that is part of JetStream itself !

So you get a global clustered fault tolerant KV store for free.

blog post: JetStream for Key-Value Store Tech Preview | NATS blog

spec: nats-architecture-and-design/ADR-8.md at main · nats-io/nats-architecture-and-design · GitHub

Its still very new and so there is no release yet, but you can pay with it via the source code:

You could use this for Discovery / Registry where as Services boot up they register with the global KV store, or as a cache replacement for data or even images.

Curious what people think.

5 Likes

Oh this is clever!

We haven’t done anything with JetStream yet because we’re moving away from client/server infrastructure models. Do you know if it’s possible to run in multiple regions?

hey @kurt

Yeah i guess, from the NATS Team point of view, once you have all the other properties that Jetstream has, doing a global KV that competes with Redis is kind of easy peasy then. All the hard work is now paying off to to speak for them.

The NATS Cli and NATS Server has all the goodies in them for it. I think they are working on the NATS golang client as we speak…

Regions should work since it is designed for clusters and superclusters ( leaf nodes etc).
I am still playing around with it though and cant confirm fully yet.

We actually use a super cluster for nats server. This is what you subscribe to for logs, for example. I don’t think the super clusters work with JetStream yet, so let us know what you find. :slight_smile:

Yep will update stuff here…

Is holiday time here don’t expect rapid updates…

cheers

ged

Super clusters should work with JetStream :+1: