워치독 타이머 (Watchdog Timer)
핵심 인사이트 (3줄 요약)
- 본질: 시스템의 메인 두뇌(CPU나 OS)가 무한 루프나 데드락(Deadlock)에 빠져 아무 응답도 없는 뇌사(Hang) 상태가 되는 것을 막기 위해, 메인 시스템과 독립적으로 돌아가며 일정 시간(Timeout)마다 CPU가 "나 살아있어!"라고 신호(Kick)를 주지 않으면 가차 없이 하드웨어 리셋(Reboot) 버튼을 눌러버리는 쇳덩어리 타이머 칩이다.
- 가치: 인공위성, 심해 탐사선, 무인 기지국처럼 사람이 드라이버를 들고 직접 뛰어가서 전원을 껐다 켤 수 없는 극한의 미션 크리티컬 환경에서, 기계가 기계를 감시하여 **시스템 다운타임(MTTR)을 인간 개입 없이 기계적으로 끊어내는 가장 멍청하지만 가장 확실한 마지막 안전핀(Fail-Safe)**이다.
- 융합: 과거 임베디드 메인보드의 물리적 타이머 칩에서 출발했으나, 현대 클라우드 네이티브 환경에서는 쿠버네티스(K8s)의 Liveness Probe (헬스체크) 처럼 소프트웨어 데몬이 컨테이너의 숨통을 감시하고 응답이 없으면 컨테이너를 강제 사살(Kill)하고 재부팅하는 '소프트웨어 정의 워치독'으로 완벽히 융합 및 진화했다.
Ⅰ. 개요 및 필요성 (Context & Necessity)
워치독 타이머 (Watchdog Timer)는 컴퓨터 공학자들이 소프트웨어 프로그래머의 "우리 코드는 무한 루프(Bug)에 빠질 리 없어!"라는 오만을 전혀 믿지 않고 만들어낸 극단적인 하드웨어 자폭 스위치다.
화성(Mars) 표면을 달리는 큐리오시티 탐사 로버의 메인 CPU가 돌 덩어리 사진을 분석하다가 C언어 포인터 버그로 무한 루프(while(1))에 빠져버렸다.
CPU 점유율은 100%를 찍고, 지구에서 나사(NASA) 과학자들이 아무리 "오른쪽으로 가!"라고 무선 신호를 쏴도 CPU가 멈춰서 듣질 않는다. 화성에 수리 기사를 보내서 로버의 재부팅 전원 버튼을 손으로 누르게 할 수도 없다. 수조 원짜리 로버가 우주 쓰레기가 될 위기다.
이 절망적인 상황을 해결하기 위해 메인보드 구석에 작고 멍청한 시한폭탄(타이머) 칩을 하나 달아뒀다. "야 메인 CPU! 이 폭탄은 10초 뒤에 터지면서 무조건 서버 전원을 강제로 내렸다 켜버릴 거다! 네가 살아있다면 10초가 되기 전에 나한테 핑(Kick)을 날려서 폭탄 시계를 다시 0초로 리셋시켜라! 만약 10초 동안 나한테 핑을 안 준다? 넌 미친 게 분명하니 내가 네 숨통을 끊고 재부팅시켜 버릴게!"
이것이 무인 시스템의 유일한 구원자, 감시견(Watchdog)의 탄생이다.
📢 섹션 요약 비유: 워치독은 은행 금고를 지키는 경비원(CPU)의 손에 채워진 데드맨 스위치(타이머 폭탄)입니다. 경비원은 무사하다는 증거로 10분마다 무전기로 "이상 무!"라고 본부에 연락(Kick)을 해야만 폭탄 타이머가 리셋됩니다. 만약 강도에게 당해서(무한 루프) 10분 동안 연락이 없으면? 본부는 경비원이 제압당했다고 판단하고 즉시 철문을 다 닫고 비상벨(강제 재부팅)을 울려버리는 피도 눈물도 없는 생존 시스템입니다.
Ⅱ. 아키텍처 및 핵심 원리 (Deep Dive)
워치독 타이머는 하드웨어의 미세한 타이머 레지스터와, 메인 OS가 이 레지스터를 끊임없이 건드려주는(Petting the dog) 소프트웨어 인터럽트 간의 숨 막히는 융합 릴레이다.
| 워치독 구성 요소 | 아키텍처적 동작 메커니즘 (H/W-S/W 융합) | 극복한 시스템 장애물 | 비유 |
|---|---|---|---|
| Independent Timer (독립 하드웨어) | 메인 CPU가 뻗든 말든, 별도의 크리스탈 발진기(Oscillator) 전원을 달고 카운트다운(10, 9, 8...)을 하는 독립된 쇳덩어리 칩 | CPU가 뇌사 상태(Hang)에 빠져도 시계는 돌아간다는 완벽한 물리적 격리(Isolation) | 본체와 분리된 시한폭탄 시계 |
| Kicking / Petting (개 밥주기) | 정상 동작 중인 OS나 앱이 주기적으로 워프독 레지스터에 특정 값(1)을 Write 하여 타이머를 다시 0으로 돌려놓는 소프트웨어 행위 | 소프트웨어 스케줄러가 정상적으로 살아 움직이고 있음을 하드웨어에 증명하는 생존 신고 | 경비원이 10분마다 "살아있음" 버튼 누르기 |
| Timeout Event (타임아웃 발동) | CPU가 무한 루프, 데드락(Deadlock)에 빠져 Kick 코드를 실행하지 못해 타이머가 0이 되는 순간! | 무자비한 하드웨어 리셋 핀(RESET Pin)에 전류를 쏴서 시스템 전원을 강제로 내렸다 켜버림 | 연락 없으면 바로 철문 잠그고 비상 사이렌 |
| Windowed Watchdog (고급형) | 타이머가 너무 늦게 차도 재부팅시키지만, 너무 빨리 차도(비정상적 폭주) 칩이 미쳤다고 판단해 재부팅시켜버리는 이중 감시망 | 해커가 악성코드로 개 밥주기 루프만 미친 듯이 돌려 워치독을 무력화시키는 짓(Bypass) 원천 봉쇄 | 너무 일찍 연락 와도 해킹으로 간주하고 알람 울림 |
워치독 아키텍처의 가장 치명적이고 중요한 철학은 **"절대 메인 CPU 안에 융합하지 말고, 밖으로 빼라"**는 것이다.
[소프트웨어 워치독의 붕괴와 하드웨어 독립 워치독(H/W WDT)의 절대 우위]
(1) 멍청한 개발자의 S/W 워치독 설계
[ 메인 CPU ] 안에 백그라운드 스레드로 `TimerThread`를 띄워놓고 앱이 멈추면 재부팅하게 짰다.
=> 재앙 발생: 커널 패닉이나 디스크 I/O 락이 걸리면 `TimerThread`도 메인 CPU 안에서
같이 얼어붙어서(Hang) 영원히 재부팅 명령을 내리지 못함! 시스템 영구 사망.
(2) 완벽한 아키텍트의 H/W 워치독 융합
[ 메인 CPU ] <-------(I/O 버스)-------> [ 메인보드 구석의 1천 원짜리 Watchdog 칩 ]
=> 마법 달성: 메인 CPU가 100도씨로 펄펄 끓고 메모리가 꽉 차서 100% 마비(Hang) 되어도,
구석에 물리적으로 완전히 분리되어 전기(배터리)를 따로 먹는 워치독 칩은
아무 방해 없이 "음 10초 지났군. 죽어라 CPU야!" 하고 리셋 전압 빔을 쏴버림. 완벽 복구!
📢 섹션 요약 비유: 워치독 시스템을 짤 때 내 머릿속(S/W)에 알람을 맞춰놓으면 안 됩니다. 내가 술에 취해 기절하면(커널 패닉) 내 머릿속 알람도 같이 기절해서 못 듣거든요. 반드시 내 손이 안 닿는 저 멀리 책상 위에 따르릉 울리는 물리적 자명종 시계(H/W 워치독 칩)를 둬야, 내가 기절해서 끄지 못할 때 시끄럽게 울려 나를 강제로 후려패서 깨워줍니다(재부팅).
Ⅲ. 융합 비교 및 다각도 분석 (Comparison & Synergy)
워치독 타이머는 전통적인 임베디드 쇳덩어리 세계(Hardware)에서 태어났지만, 그 거칠고 완벽한 자폭 철학이 클라우드 서버의 쿠버네티스(Software) 세계로 완전히 이식되어 프랙탈 융합을 이루었다.
무인 복구 패러다임: 하드웨어 WDT vs 소프트웨어 K8s 프로브
| 복구 척도 | Hardware Watchdog Timer (IoT/임베디드) | Kubernetes Liveness Probe (클라우드 융합) | 아키텍처 사상의 동형성 (프랙탈) |
|---|---|---|---|
| 감시 대상 | 라즈베리 파이, 자율주행 ECU 제어 보드 | AWS 구름 위에 둥둥 떠 있는 도커(Docker) 컨테이너 | 시스템의 최소 제어 단위를 멱살 잡음 |
| 감시자 (주체) | 메인보드에 박힌 물리적 SoC 타이머 칩 | K8s 워커 노드에 띄워진 Kubelet (데몬 프로세스) | 대상과 완벽히 분리된 "제3의 감시자" 역할 |
| 생존 신호 (Kick) | 칩 I/O 레지스터에 0x01 바이트 쓰기 | GET /health HTTP API 통신이 200 OK 뱉어냄 | "나 살아있어!"라고 주기적으로 외쳐야 함 |
| 처단 방식 (Timeout) | 메인보드 RST 핀에 전기를 쏴서 강제 H/W 재부팅 | Kubelet이 컨테이너 프로세스를 Kill 시키고 즉시 새 Pod 재생성 | 죽은 자는 버리고 백지에서 다시 태어나게 함 (Reboot) |
타 과목 관점의 융합 시너지
- 분산 데이터베이스 (ZooKeeper / 세션 타임아웃): 워치독 철학은 수천 대의 서버가 물려 있는 분산 스토리지 클러스터(HDFS, Kafka)에서 리더 선출(Leader Election)과 헬스체크 융합으로 쓰인다. 100대의 노드 중 누가 리더(대장)인지 관리하는 주키퍼(ZooKeeper) 서버는 각 노드에게 "3초마다 나한테 생존 핑(하트비트) 안 보내면 넌 죽은 걸로 간주하고 명단에서 빼버린다!"라는 워치독 타이머 룰을 강제한다. 랜선이 끊겨 핑을 못 보낸 불쌍한 노드는 즉각 버려지고 남은 애들끼리 새 대장을 뽑는 가차 없는 분산 동기화의 피도 눈물도 없는 원칙이다.
- 네트워크 보안 (Dead Peer Detection, DPD): 해커가 내 방화벽의 세션(Session) 연결만 열어두고 아무 데이터도 안 보내면서 서버 램(RAM)을 말라 죽게 하는 공격(Slowloris 등)을 한다. 이를 막기 위해 방화벽 L4/L7 스위치는 내부적으로 네트워크 워치독(Keepalive / DPD)을 돌린다. "너 나랑 연결 맺어놓고 1분 동안 아무 패킷(Kick)도 안 날려? 너 해커 거나 죽었구나! TCP 커넥션 팍 끊어버려!" 라며 닫힌 좀비 소켓들을 청소해 네트워크 대역폭과 메모리를 방어해 낸다.
[클라우드 네이티브 MSA 환경에서의 K8s 워치독(Liveness) 오작동 딜레마]
[ 현상 ]
스프링 부트 컨테이너가 1시간마다 미친 듯이 재부팅(Kill)을 반복함.
로그를 보니 "Liveness Probe Failed 3 times" (S/W 워치독 타임아웃 발동!)
[ 비극의 원인 (융합 부작용) ]
컨테이너 자체는 짱짱하게 잘 살아있었다. 그런데 1시간마다 **Java의 거대한 Garbage Collection (Full GC)**이 돌면서 "Stop-The-World(세상 멈춤)" 렉이 5초 동안 걸렸다.
=> K8s 워치독(Kubelet)은 5초 동안 응답이 없자 "어? 얘 데드락 걸려서 뇌사했네? 죽어라!" 하고
멀쩡히 청소 중인 서버의 머리에 총을 쏴서 강제로 죽여버렸다. (오진 사살)
=> 아키텍처 튜닝: 워치독 타임아웃 주기를 언어(JVM)의 GC 렉 시간보다 무조건 넉넉하게
(예: 10초 이상) 늘려 잡아야(Tuning) 억울하게 총 맞아 죽는 참사를 막을 수 있다!
📢 섹션 요약 비유: 워치독은 성질 급한 저승사자입니다. 내가 병원 수술대에 누워 마취(Full GC 렉)를 받고 숨을 아주 얕게 쉬고 있는데, 저승사자(K8s)가 와서 딱 3초 쳐다보고 "어? 숨 안 쉬네? 죽었네!" 하고 관짝에 못질을 해버립니다(컨테이너 강제 킬). 훌륭한 클라우드 아키텍트는 저승사자에게 "쟤 숨 깊게 쉬니까 10초는 넉넉히 지켜보고 데려가라"고 워치독 타임아웃(Timeout) 융통성 설정을 완벽하게 조율해야 합니다.
Ⅳ. 실무 적용 및 기술사적 판단 (Strategy & Decision)
실무 백엔드 개발자나 데브옵스 엔지니어가 클라우드나 엣지(IoT) 기기에 코드를 배포할 때, 이 "Watchdog(헬스체크)의 타임아웃 시간"과 "Kick(응답)하는 조건"을 엉성하게 짜면 멀쩡한 서버를 하루에 수십 번씩 무한 재부팅시키는 살인마가 된다.
실무 하드웨어/클라우드 무인 복구(Zero Touch Recovery) 시나리오
-
라즈베리파이/아두이노 엣지 디바이스 무인 관제 세팅
- 상황: 산꼭대기에 미세먼지 측정용 IoT 센서 보드(리눅스) 100개를 달아놨는데, 메모리 누수 버그로 한 달에 한 번씩 보드가 얼어버림(Hang). 엔지니어가 매달 등산을 해서 플러그를 뺐다 꽂아야 함. (유지보수 비용 폭발)
- 의사결정: 메인보드 칩셋(SoC) 내부에 잠들어있는 하드웨어 Watchdog Timer (Bcm2835_wdt 등) 커널 모듈을 강제 활성화시킨다. 그리고 파이썬 파싱 코드가 루프를 성공적으로 1바퀴 돌 때마다
/dev/watchdog디바이스 파일에 쓰기(Write)를 하여 개밥을 주게(Petting) 코딩한다. - 이유: 보드가 얼어붙어 파이썬 루프가 멈추면, 개밥 주는 코드도 멈춘다. 15초 뒤 배가 고파 화가 난 워치독 하드웨어가 메인 CPU 전원에 3.3V 전기 충격을 날려 보드를 깔끔하게 하드웨어 강제 재부팅시킨다. 등산 갈 일이 평생 없어져 버리는 극강의 무인 자동 복구(Auto-Healing) 인프라다.
-
클라우드 K8s 헬스체크(Liveness) API 껍데기 꼼수 타파
- 상황: 컨테이너가 죽으면 살리려고 K8s Liveness Probe(소프트웨어 워치독) API를
/health로 열어둠. DB 커넥션이 꽉 차서 유저들은 "결제 에러 500"을 맞고 다 죽어가는데, 워치독은 이 컨테이너를 안 죽이고 가만히 구경만 함. - 의사결정: 개발자가 짠
/health코드를 까보니 그냥 무지성으로return 200 OK텍스트만 뱉게 껍데기로 짜놨음. 당장 이 API 안에 **"내부 DB 커넥션이 정상적으로 찔러지는가? Redis 캐시 연결은 붙어있는가?"**를 직접 조회해서 내부 내장까지 멀쩡할 때만200 OK를 뱉도록 딥 헬스체크(Deep Health Check) 로직을 융합해 뜯어고친다. - 이유: 무지성
return OK는 CPU만 살아있으면 앱 내장이 썩어 문드러져서 DB와 통신이 끊겨도 "나 살아있다!"고 거짓말로 개밥을 주는 행위다. 진정한 워치독은 "내가 DB와 소통하며 온전히 1인분의 결제 역할을 할 수 있는가?"를 스스로 평가해서, 내장이 터졌으면 과감히 응답을 멈춰 저승사자(K8s)가 자기를 쏴 죽이고 새 컨테이너로 리부팅하게 만드는 **'자발적 안락사(Fail-Fast) 결단'**을 내릴 수 있어야 한다.
- 상황: 컨테이너가 죽으면 살리려고 K8s Liveness Probe(소프트웨어 워치독) API를
[실무 워치독/헬스체크(Liveness) 설계의 3단계 진단 트리]
[질문 1] 앱에 응답 지연(렉)이 살짝 걸렸는데 워치독이 성급하게 서버를 쏴 죽여버리는가?
├─ Yes ──> 타임아웃(Timeout) 3초를 너무 짧게 줬거나, 3번(FailureThreshold) 실패도 안 기다려준 거다!
│ 웹서버는 DB 락(Lock) 걸리면 10초 정도는 멍때릴 수 있다. 개밥(Kick) 유예 기간을 15초 이상 넉넉히 줘라.
│
└─ No ───> [질문 2] 앱이 먹통이 돼서 유저 항의가 빗발치는데 워치독이 서버를 안 죽이고 방치하는가?
└──> 헬스체크 API가 껍데기(단순 String 반환)다!
내부 워커 스레드 큐(Queue) 상태나 DB 연결 상태까지 모조리 검사해서,
어딘가 하나라도 터졌으면 용감하게 HTTP 500 에러를 뱉어(워치독 발동 유도) 자살하게 설계하라.
운영 및 아키텍처 도입 체크리스트
- 금융권 등 이중화(Active-Standby) 시스템을 구축할 때, Active 장비가 미쳐서 디스크를 다 날려먹는 쓰레기 명령을 내뿜고 있는데, CPU가 돌고 있다는 이유로 워치독이 재부팅을 안 시키는 대참사를 막기 위해, 단순 CPU 점유율뿐만 아니라 "초당 정상 트랜잭션 수(TPS)"까지 워치독 타이머 리셋 조건(Petting condition)으로 융합 설정해 두었는가?
안티패턴: 하드웨어 데드락을 잡겠다고 워치독을 켜놨으면서, 밥 주는 코드(kick())를 OS 커널의 가장 높은 우선순위(Highest Priority) 인터럽트 타이머 스레드에 묶어놓는 짓. 이러면 유저가 쓰는 앱 서버 스레드가 데드락(Deadlock)에 걸려 피를 토하고 멈춰도, 높은 우선순위의 밥 주는 스레드만큼은 백그라운드에서 편안하게 계속 밥을 준다. 워치독은 "오 컴터 멀쩡하네" 하고 평생 재부팅을 안 시켜서 결국 우주선(서버)이 추락한다. 밥 주는 권한은 반드시 "가장 무거운 실제 작업(User task)"이 끝났을 때만 부여해야 한다.
📢 섹션 요약 비유: 워치독 헬스체크는 사장님(K8s)이 졸음운전 하는 알바생(컨테이너)을 감시하는 겁니다. "너 안 자고 일하지? 1분에 한 번씩 대답해라!"라고 시켰습니다. 멍청한 알바생(껍데기 헬스체크)은 폰 게임을 하면서 기계적으로 "네! 네!" 대답만 합니다. 진짜 일 잘하는 알바생(Deep 헬스체크)은 자기가 지금 감자가 떨어져서 감자튀김을 못 만들 상황이 되면 쿨하게 대답을 안 해버립니다. 그럼 사장님이 와서 알바생을 자르고(Kill) 새 알바생을 투입해 주방이 다시 정상으로 돌아가게 됩니다.
Ⅴ. 기대효과 및 결론 (Future & Standard)
워치독 타이머(Watchdog Timer)는 기계가 기계를 통제하는 '자기 객관화'의 정점이자, 인간(관리자)이 전원 버튼을 누르러 뛰어가는 물리적 이동 시간을 완전히 멸종시켜 버린 무인(Zero-Touch) 인프라의 위대한 발명이다.
| 패러다임 극복 과제 | 워치독 부재 시 (인간 의존 수동 복구) | H/W 워치독 & S/W 프로브 융합 시대 | 현대 무인 자동화 파급 효과 |
|---|---|---|---|
| 장애 복구 시간(MTTR) | 관리자 새벽 기상 -> 이동 -> 껐다 켬 (수 시간) | 기계 멈춤 -> 타이머 터짐 -> 1초 컷 재부팅 | 달 탐사 로버, 해저 케이블 중계기 등 인간이 갈 수 없는 미지의 영토 탐험 가능 |
| 시스템 신뢰성 아키텍처 | "우리 앱은 버그가 없습니다" (거짓말과 오만) | "버그는 무조건 터진다. 터지면 내가 쏜다." | 에러를 인정하고 자가 치유(Self-healing)하는 생물학적 인프라 클라우드 생태계 완성 |
미래 전망: 10초, 20초 단위로 멍청하게 카운트다운만 하던 하드웨어 워치독은 인공지능과 만나 **예측형 지능형 워치독 (Predictive AIOps Watchdog)**으로 진화하고 있다. 단순히 "응답이 없다"고 총을 쏘는 게 아니라, 칩의 온도 곡선, 램의 누수 속도(Memory Leak Trend), 캐시 미스 비율을 실시간 딥러닝으로 분석하여 **"너 3분 뒤에 100% 확률로 데드락 걸려서 터진다. 유저 트래픽 망치기 전에 지금 당장 넌 미리 죽어라!"**라며 에러가 발생하기도 전에 선제 사살(Preemptive Kill)을 해버려 유저가 겪는 단 1초의 버퍼링조차 0으로 지워버리는 신의 영역에 다다를 것이다.
📢 섹션 요약 비유: 옛날엔 시한폭탄(워치독) 스위치 하나만 쥐여주고 연락 안 오면 다 터뜨리는 멍청한 암살자였습니다. 하지만 미래의 지능형 워치독은 대상의 얼굴빛이 창백해지고 땀을 흘리는 조짐(메모리 누수, 발열)만 보여도 "저 녀석 곧 쓰러져서 회사 망치겠다. 쓰러지기 전에 미리 암살하고 건강한 복제 인간으로 교체하자!"라고 판단하는 피도 눈물도 없는 인공지능 마이너리티 리포트(사전 범죄 예방) 시스템으로 진화하여, 클라우드를 1초의 틈도 없이 지켜낼 것입니다.
📌 관련 개념 맵 (Knowledge Graph)
- MTTR (평균 수리 시간) | 워치독 타이머가 극한으로 박살 내고자 하는 지표. 인간이 자다 깨서 컴퓨터를 재부팅하면 1시간(MTTR)이지만, 워치독이 알아서 재부팅해 주면 1분 컷으로 줄어 가용성이 떡상함
- 데드락 (Deadlock) | 스레드 두 개가 서로 자물쇠(Lock)를 물고 평생 놔주지 않아서 컴퓨터가 뇌사 상태(Hang)에 빠지는 최악의 병목. 워치독이 이 데드락을 감지하고 리셋 스위치를 눌러주는 구원자임
- 페일 세이프 (Fail-Safe) | 워치독이 동작하는 철학. 기계가 미쳐서 헛소리 데이터(에러)를 계속 내보내는 재앙보다는, 차라리 기계 전원을 무식하게 내려버리고 싹 엎어버리는 게 100배 안전하다는 극단적 방어술
- Liveness Probe (헬스체크) | 하드웨어 칩셋에 박힌 쇳덩어리 워치독을, 쿠버네티스(K8s) 같은 클라우드 소프트웨어 세계로 완벽하게 복사(이식)해 낸 컨테이너용 감시견 타이머 스크립트
- 무한 루프 (Infinite Loop) | 프로그래머가 탈출 조건을 잘못 짜서 CPU가 영원히 제자리걸음만 도는 블랙홀. 이 블랙홀에 빠지면 워치독 칩에 개밥(Kick)을 주러 나갈 수 없게 되어 결국 폭탄이 터짐
👶 어린이를 위한 3줄 비유 설명
- 개념: 워치독 타이머는 컴퓨터 안에서 돌아가는 무서운 시한폭탄 시계(10초 카운트다운)예요. 컴퓨터가 멍청해져서 뻗는 걸 막기 위해 항상 감시하고 있죠.
- 원리: 똑똑한 컴퓨터(CPU)는 숙제를 하면서 틈틈이 "나 안 죽고 잘 있어!"라며 폭탄의 시계를 10초에서 다시 0초로 돌려놔야 해요(개 밥 주기). 근데 컴퓨터가 에러가 나서 기절해버리면, 시계를 0으로 못 돌려서 10, 9, 8... 0이 되면서 폭탄이 펑! 터져요.
- 효과: 폭탄이 터지는 순간 컴퓨터 전원이 강제로 탁! 꺼졌다가 다시 켜지기 때문에, 우주선이나 산꼭대기에 있어서 사람이 직접 껐다 켤 수 없는 기계들도 에러가 났을 때 스스로 1초 만에 다시 살아날 수 있답니다.