Comments (1)
Stream replication in NATS implements the Raft protocol which provides quorum-based consistency of writes. This means that when a cluster receives a message to be stored in a stream, a majority of the replicas must successfully store the message before an ack is sent back to the client. For three replicas the majority would be two. For five replicas the majority would be three. The other replicas will still receive and/or sync the data, but only a quorum needs to store before an ack is returned to the client.
In the case of replica(s) being unavailable (server down, etc), the same rule applies. As long as there is a majority available, writes will still be accepted to the stream.
from nats.docs.
Related Issues (20)
- Backing filesystem constraints for JetStream HOT 1
- Add more explainations and settings related to NATS gateway behind a Load Balancer HOT 1
- [Feature Request] JetStream Docker Compose Tutorial HOT 2
- Minimize or remove examples which show `--password` flag HOT 1
- Client Protocol Field Documentation HOT 2
- Standardize installation methods for Windows
- Broken links in jetstream/streams page HOT 1
- Add Bloomberg BlazingMQ to the Compare NATS page
- Missing documentation for NATS Server MQTT Parameters
- Helm config examples are mostly wrong after 1.0 release HOT 3
- The NATS by example link is broken HOT 1
- Remove obsolete documentation of removed cli commands: `nats backup`, `nats restore` HOT 1
- Missing documentation for logfile_max_num / log_max_num
- example mis-match on pubsub_walkthrough page
- Incomplete examples in the "Using the Key/Value Store" Jetstream doc page HOT 1
- Clarify whether Nats-Msg-Id should be globally unique or per-subject only
- Clarify whether publishing between stream replicas is synced or not
- Image with hard to read text HOT 1
- `HMSG` example is missing required `sid`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nats.docs.