From: Designing fault-tolerant SOA based on design diversity
Failure mode | Fault latency | Fault assumption | How to tolerate |
---|---|---|---|
Delay | Permanent | Inefficient Algorithm | Change the faulty service to another one |
 |  | Hardware problem | Change the application server |
 | Transient | Server overload | Change the application server |
 | Intermittent | Environmental instability | Execution in parallel to get the fastest reply |
Output | Permanent | Software bug | Use variant services to detect and majority election to tolerate |
 | Transient | Server overload | Use variant services to detect and majority election to tolerate |
 | Intermittent | Electromagnetic interference | Use variant services to detect and majority election to tolerate |
Specification | Permanent | Malicious service | Use variant services to detect and majority |
 |  |  | election to tolerate |
 | Transient | DNS mistake due to environmental instability | Use variant services to detect and majority election to tolerate |
 | Intermittent | Unknown cause | Use variant services to detect and majority election to tolerate |
Server | Permanent | Hardware failure | Change the application to a mirror server |
 | Transient | Memory overload | Change the application to a mirror server |
 | Intermittent | Environmental instability | Use redundant servers in parallel, and synchronisation algorithms for keeping the consistency among servers |
Communication | Permanent | Breaking the optical fibber cable | Change the network link |
 | Transient | Network overload | Change the network link |
 | Intermittent | Electromagnetic interference | Use redundant communication channel in parallel |