Skip to content

Conversation

azarboon
Copy link

@azarboon azarboon commented Oct 4, 2024

Current text implies that "redundancy" and "replication" are the same thing. A google search suggests that these two are different concepts. I'm not expert in this but whether you consider them the same or different, should be clearly stated. Unfortunately, neither Principles nor Manifesto have addressed this. I've already created another PR in Reactive Manifesto glossary to address this. Kindly please check that. I edited the current text to minimize the misunderstanding.

Anyway, adding redundancy doesn't always increase resilience / availability. It does so only when redundancy has been implemented properly. Marc Brooker has explained this in two great blog posts:

When Redundancy Actually Helps
Exponential Value at Linear Cost

Here is an excerpt of his post:

I’ve been thinking about the second part of that a lot recently, as my team starts building a new replicated system. When does redundancy actually help availability? I’ve been breaking that down into four rules:

  1. The complexity added by introducing redundancy mustn’t cost more availability than it adds.
  2. The system must be able to run in degraded mode.
  3. The system must reliably detect which of the redundant components are healthy and which are unhealthy.
  4. The system must be able to return to fully redundant mode.

I've added a summary of his rules to the text so readers are more informed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant