ਵੱਡੇ ਪੱਧਰ 'ਤੇ, ਅਸਫਲਤਾਵਾਂ ਅਜਿਹੀ ਚੀਜ਼ ਹਨ ਜਿਨ੍ਹਾਂ ਤੋਂ ਬਚਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ — ਸਰਵਰ ਕਰੈਸ਼ ਹੁੰਦੇ ਹਨ, ਨੈਟਵਰਕ ਫੇਲ ਹੁੰਦੇ ਹਨ, ਡਿਪੈਂਡੈਂਸੀਜ਼ ਅਣਉਪਲਬਧ ਹੁੰਦੀਆਂ ਹਨ। ਅਸਫਲਤਾ ਲਈ ਡਿਜ਼ਾਈਨ ਕਰਨਾ ਭਵਨ ਅਜਿਹੇ ਸਿਸਟਮ ਦਾ ਮਤਲਬ ਹੈ ਜੋ ਅਸਫਲਤਾਵਾਂ ਨੂੰ ਸਹਿ ਸਕਦੇ ਅਤੇ ਸਲੀਕੇ ਨਾਲ ਉਹਨਾਂ ਤੋਂ ਬਰਾਮਦ ਹੋ ਸਕਦੇ ਹਨ ਇਸ ਦੀ ਬਜਾਏ ਕਿ ਇਹ ਮੰਨ ਲਿਆ ਜਾਵੇ ਕਿ ਸਭ ਕੁਝ ਕੰਮ ਕਰਦਾ ਹੈ। ਇਹ ਭਰੋਸੇਮੰਦ ਸਿਸਟਮਾਂ ਲਈ ਜ਼ਰੂਰੀ ਹੈ।
ਅਸਫਲਤਾ ਲਈ ਡਿਜ਼ਾਈਨ ਕਰੋ (ਸੋਚਣ ਦਾ ਤਰੀਕਾ)
ASSUME things WILL fail → at scale, failures are NORMAL, not exceptional:
→ servers crash, networks partition, disks fail, dependencies go down, traffic spikes
→ design systems to EXPECT and HANDLE failures gracefully (not assume everything works)
→ "everything fails all the time" → build resilience in.
