Monday, 25 March 2013

Fail Fast vs Fail Safe

Fail Fast vs Fail Safe:-  

How does a system react when there is a failure characterizes it as a fail fast or a fail safe system.

 This article is to discuss whether fail safe or fail fast is better. Then what it has to do with java.

 

Fail fast or fail safe – which is better? 

 

Though the word ‘fail safe’ sounds better, I feel fail fast is best. Fail safe is not safe. Fail safe doesn’t

mean robustness. We are preserving, concealing defects in the system. Resilience exhibited by fail

safe systems may not be permanent. Fail safe system is need for high availability scenarios. When a

failure is detected a workaround is substituted and the availability of system is ensured.

Fail fast brings out the defect as and when it is detected. The error is taken out wide open to public

and the system is shutdown. Business is obstructed, but we get a chance to rectify. We fix the error

and bring the system up and proceed. Thus continuing really makes the system robust, not concealing

 the error condition. Though it results in interrupted availability, over a period it results in a robust

system. Fail fast ensures that we don’t ride a punctured bike and create irreversible issues. Do not

expect failures in the program as natural, but it should be designed in a way such that in case of

unexpected failure the program should fail fast.

Just a thought provoking question. Is fail fast better for a nuclear reactor?

 

No comments:

Post a Comment