...

/

Applying Failure Handling Techniques

Applying Failure Handling Techniques

Learn where and how to apply failure handling techniques in distributed systems.

The end-to-end argument principle

The end-to-end argument is a design principle, which suggests that some functions such as the fault tolerance techniques described previously can be implemented completely and correctly only with the knowledge and help of the application standing at the endpoints of the communication system.

A canonical example to illustrate this point is the careful file transfer application, where a file needs to be moved from computer A’s storage to computer B’s storage without damage.

As shown in the following illustration, hardware failures can happen in many places during this process, such as:

  • The disks of computers
  • The software of the file system
  • The hardware processors, their local memory
  • The communication system

Implementing error recovery functionality at the application level

Even if the various subsystems embed error recovery functionality, this can only cover lower levels of the system, and it cannot ...