vs
출처: https://en.wikipedia.org/wiki/Fault_tolerance
Fault containment or isolation
Structure
Redundancy
Replacement
Reboot
Suspend
Separation of Concern
고장난 컴포넌트를 격리시키려면
시스테이 격리할 실행부분의 구조를 정의할수 있어야 한다.
컴포넌트가 처리에 실패하면 백업 컴포넌트가 대신 처리한다.
고장난 컴포넌트가 격리되면 새로운 컴포넌트로 대체한다.
시스템은 대체된 컴포넌트와 통신할수 있다.
컴포넌트가 잘못되면 사전에 정의해 놓은 초기상태로 되돌릴수 있어야 한다.
하지만 컴포넌트간의 종속성때문에 가능한 모든 초기상태를 파악할수는 없다.
컴포넌트는 created, started, restarted, stopped, terminated 같은 상태를 갖는다.
컴포넌트가 실패했을때 복구되거나 교체될때까지 요청을 유지시킨다.
장애 복구에 중요한 정보를 유지할수 있다.
장애 복구 코드와 정상 코드는 분리되어야 한다.
DB 연결에 문제가 발생하면