Diagnostic TeardownAWS
Before You Buy More Resilience, Decide Which Failure You Need to Survive
- Author
- Alex Florian
- Published
- Updated
- Reading time
- 4 min
The architecture diagram has another location, extra copies of the data, and a backup. It looks reassuring. Then someone asks whether the second copy would contain the same corrupted records, or whether recovery depends on an approver nobody can reach during an outage.
The additional components may work exactly as designed while the business still cannot resume useful work. That changes the investment question. What failure is the company paying to survive, and what does a successful return actually look like?
Consider an illustrative order-processing service. Its users need to continue working with orders they can trust. Another running server is helpful only insofar as it supports that result.
More copies protect against particular problems
Losing one server, losing an Availability Zone, and losing access to an AWS Region are different disruptions. Corrupted data introduces another problem: replication may copy the unwanted change as efficiently as it copies legitimate updates. A recent, available replica can still contain the damage the team needs to escape. Backup and recovery strategies need to match the failure being considered. [1]
That doesn't make replication unhelpful. It means the mechanism has a purpose that should be stated. Surviving a component failure and restoring trustworthy order records may require different arrangements, even when both are discussed under resilience.
The same question applies to dependencies. Two application instances may still rely on one credential path or data store. The component count cannot tell you whether those shared dependencies preserve the promise being made to the business.
Put the recovery promise on a clock
Two terms help distinguish what users will experience. The recovery-time objective, or RTO, concerns the maximum acceptable interruption before service is restored. The recovery-point objective, or RPO, concerns the acceptable data-loss window relative to a recoverable point. They describe different limits. [2]
Here is a hypothetical rehearsal of the order service:
| Time | Event in the illustrative rehearsal |
|---|---|
| 09:52 | Latest trustworthy recoverable order state |
| 10:00 | Service interruption begins |
| 10:03 | Failure detected |
| 10:10 | Recovery decision made and access obtained |
| 10:20 | Technical restoration completes |
| 10:25 | Checks confirm that users can resume the intended work |
The elapsed interruption is 25 minutes, not just the ten minutes spent on technical restoration. The recoverable data point leaves an eight-minute potential loss window before the interruption. The actual missing orders still need to be established and reconciled; a time window doesn't tell us how many transactions occurred within it.
Those results can support different conclusions under different promises. An agreed RTO of 30 minutes and RPO of 10 minutes would contain these illustrative measurements. An RTO of 15 minutes and RPO of five minutes would not. Neither pair is a recommendation or an AWS service guarantee. They show why the requirement has to be explicit before the rehearsal can be called successful.
The next investment follows the gap
Suppose the business genuinely needs the stricter target. Buying faster standby capacity may address part of the recovery time, but it won't necessarily remove the seven minutes between detection and the recovery decision. Prepared authority and working access may be just as relevant to that delay.
The data gap needs its own answer. A newer trustworthy recovery point or an appropriate way to reconstruct missing work may help. An additional copy of the same corruption would not.
Conversely, if the more tolerant targets fit the actual business impact, paying for a substantially more complex design may offer little useful value. AWS's recovery guidance explicitly connects objectives to the consequences of downtime and data loss rather than arbitrary ambition. [2]
I would therefore compare proposals against the measured gap: which part of the interruption becomes shorter, which data becomes recoverable, and what new operating effort is required? That gives engineering and the budget owner a discussion they can both interpret.
The test ends with an order someone can use
The rehearsal should include the route the operator will actually need: credentials, supporting systems, the decision to recover, and verification of the restored work. It needn't reproduce every possible disaster at once. It does need to challenge the assumptions behind the particular protection being purchased.
If the service returns quickly but employees cannot trust the orders, recovery is incomplete from their perspective. If the data is sound but nobody can authorize the return, the interruption continues. These are findings that can improve the design without merely adding another box to it.
The business is buying a credible promise under a defined failure. Once that promise is clear, the next replica, backup, or recovery improvement has a job that can be tested—and a cost that can be judged against the work it protects.