Fault-tolerant systems: design and implementation principles
The aim of the article is to systematize the principles for the design and implementation of fault-tolerant information systems amid the rising complexity of distributed, cloud, and cyber-physical architectures and the impossibility of completely eliminating faults; it advances the thesis that service resilience arises as an emergent property through the coordinated application of redundancy, isolation, and recovery mechanisms at all levels—from hardware to organizational. Methodologically, the study relies on theoretical-methodological and comparative analysis, a hermeneutic clarification of the concepts “fault,” “error,” and “failure,” as well as conceptual mapping and tabular systematization of strategies and patterns without conducting experimental measurements; in addition, it considers CAP trade-offs, the cost of redundancy, and the requirements of real-time domains. The scientific novelty lies in a coherent classification of four strategic approaches (redundancy, recovery, error masking, proactive methods), their linkage to canonical architectural patterns (active–passive, active–active, circuit breaker, bulkhead), and tracing the evolution of the fault-tolerance concept from monoliths to distributed and microservice systems and further to CPS with an emphasis on safety; it is shown that “fault tolerance” requires breaking the causal chain “error → failure” through early detection, localization, and limitation of the blast radius. The results demonstrate that single measures have limited effect: the best outcomes are achieved through a multi-layered combination of techniques, where the choice of a specific combination is determined by context—the requirements for consistency and latency, the failure profile, the cost of ownership, and regulatory constraints; the roles of active–passive and active–active clusters, bulkheads, and circuit breakers are shown in reducing the cascading of incidents and maintaining service levels. The discussion articulates practical design principles: explicit decomposition into failure domains, automatic failover and recovery, telemetry of degradation causes, implementation of chaos engineering and predictive maintenance; a reference decision map and criteria for selecting architectures to meet NFR requirements (availability, consistency, security, cost) are proposed, culminating in recommendations for building “defense-in-depth” and formalizing target availability metrics. The practical value lies in the possibility of using the proposed classification as a checklist for engineering choices, and the presented tables as reference material for substantiating SLA/SLO and test scenarios; the theoretical value lies in harmonizing fragmented terminology and deriving invariants of resilience for heterogeneous architectures. A limitation of the study is the qualitative nature of the analysis and the dependence of a number of theses on contextual assumptions; directions for further validation are outlined through empirical cases and observability metrics.
Authors
- A. A Kuznetsov (ORCID: https://orcid.org/0009-0002-2711-7535)
Publication Details
- Journal
- Программные системы и вычислительные методы
- Published
- 2025-04-01
- DOI
- https://doi.org/10.7256/2454-0714.2025.4.76776
- Primary Topic
- Software System Performance and Reliability
- Type
- article
- Field-Weighted Citation Impact
- 0.00