recovery runbook

데드락 탐지와 복구

데드락을 허용하는 시스템은 주기적으로 고리를 찾고, 종료·롤백·자원 선점 중 어떤 복구가 덜 위험한지 선택해야 합니다.

detect대기 그래프 또는 행렬 검사
cycle순환 대기 확인
victim희생 대상 선택
recover종료 롤백 선점
단일 인스턴스

자원마다 하나만 있으면 wait-for graph의 사이클 탐지만으로 데드락을 판정할 수 있습니다.

다중 인스턴스

Available, Allocation, Request 행렬로 더 이상 만족 가능한 요청이 없는 집합을 찾습니다.

프로세스 종료

확실하지만 손실이 커서 희생 대상 기준이 필요합니다.

롤백

체크포인트가 있다면 이전 상태로 되돌려 자원을 반납하고 다시 실행할 수 있습니다.

타조 전략

발생 가능성이 낮고 복구 비용이 더 크면 무시하고 운영자가 수동 처리하는 선택도 있습니다.

희생 대상 기준

우선순위, 재시작 비용, 보유 자원 수, 이미 수행한 작업량으로 희생 대상을 정합니다.