📂IT·데이터·DX읽기 2분📊실무🔗관련 4

웹훅이란?

한 줄 정의
어떤 사건이 발생하면 서버가 '알아서 먼저' 다른 시스템에 알려주는 자동 알림. '역방향 API'라고도 한다.
이 주제, 사내 교육으로📚 관련 과정💬 교육 문의
⚡ 3줄 요약
  • 사건 발생 시 서버가 먼저 알림
  • '역방향 API'
  • 실시간 연동에 유용

웹훅을 붙이면 일의 주어가 바뀝니다. 폴링 방식에서는 우리 서버가 1분마다 결제사 API를 두드리며 '새 결제 있나요'를 묻습니다. 하루 1,440번을 물어도 실제로 건지는 건 수십 건뿐이고 나머지는 전부 빈 조회입니다. 웹훅으로 돌리면 그 헛질문이 사라지면서 사건 발생부터 처리까지가 분 단위에서 초 단위로 줄고, API 호출 한도를 갉아먹던 빈 조회가 통째로 없어져 서버 비용과 장애 지점도 같이 줄어듭니다.

붙이기 전에 챙길 항목은 서명 검증·응답 속도·재시도·멱등 처리 네 가지입니다. 대부분의 서비스는 요청 헤더에 HMAC 서명을 실어 보내니 시크릿 키로 대조해 위조 요청을 걸러야 하고, 받는 쪽은 보통 3~5초 안에 200 OK를 돌려줘야 합니다. 재고 차감이나 메일 발송처럼 무거운 작업은 큐에 넣고 응답부터 내보내는 게 정석입니다. 실패하면 제공사가 몇 분에서 몇 시간 간격으로 수차례 다시 쏘기 때문에, 같은 이벤트 ID가 두 번 와도 주문은 한 번만 잡히도록 막아두어야 합니다.

비슷해 보이는 도구와 선을 그어두면 설계가 쉬워집니다. 일반 API는 우리가 필요할 때 꺼내 쓰는 창구지만, 웹훅은 상대가 한 번 던지고 마는 통보라 받는 순간 처리하지 못하면 그대로 흘러갑니다. 화면을 실시간으로 갱신하는 게 목적이면 SSE나 웹소켓이 맞고, 하루 수십만 건을 순서대로 쌓아야 하면 카프카·SQS 같은 메시지 큐가 맞습니다. 웹훅은 '하루 수천 건 수준의 사건 전달'에 가장 잘 맞는 중간 도구입니다.

현장에서 제일 자주 깨지는 건 '웹훅은 한 번만, 보낸 순서대로 온다'는 믿음입니다. 재전송과 네트워크 사정 탓에 같은 결제 완료가 두 번 들어와 주문이 두 건 생기고 재고가 두 번 빠지는 사고가 실제로 납니다. 사내 방화벽 뒤에 수신 서버를 둔 탓에 개발 환경에서는 잘 오던 알림이 운영에서는 한 건도 안 들어오는 경우도 흔합니다. 웹훅은 '가끔 유실되는 통보'로 전제하고, 돈이 걸린 이벤트는 하루 한 번 원장 대사(재조회) 배치를 함께 돌려야 밤사이 빠진 건을 잡아냅니다.

💡 쉽게 말하면
택배 도착 알림처럼 — 물어보지 않아도 '일이 생기면 먼저' 알려주는 자동 통보입니다.
실무에서 왜 중요한가
실시간 자동 연동의 핵심입니다. 계속 물어보지 않아도 '사건이 생기면 바로' 처리하게 해줍니다.
유래와 출처

용어는 2007년 제프 린지(Jeff Lindsay)가 제안했으며, 이벤트가 발생하면 자동으로 데이터를 보내는 웹 통합 방식으로 널리 쓰이게 됐습니다.

출처 · Jeff Lindsay, 'webhook' 제안(2007)
사례로 이해하기

가상의 사례로 살펴보겠습니다. 임직원 52명, 연매출 180억 원 규모의 자사몰 운영사 A사의 이야기입니다. 결제 완료 여부를 5분 주기 배치로 확인하다 보니 주문서가 물류창고로 넘어가는 데 평균 7분이 걸렸고, '결제했는데 왜 처리 중이냐'는 CS 문의가 주당 40건씩 들어왔습니다. 개발팀 4명이 3주 동안 결제 웹훅 전환에 붙었습니다.

  1. 개발팀장 김 차장이 첫 회의에서 "5분마다 묻지 말고, 결제사가 먼저 알려주게 바꿉시다"라고 정리한 뒤 PG사 관리자 화면에 수신 URL을 등록했습니다.
  2. 백엔드 담당 이 대리가 HMAC 서명 대조 로직을 넣고 테스트 결제 20건을 돌렸는데, 서명이 어긋난 위조 요청 2건이 그대로 차단되는 것을 확인했습니다.
  3. 운영 이틀째 동일 결제 이벤트가 3회 연속 들어와 주문이 중복 생성되자, 이 대리가 event_id를 DB 유니크 키로 걸어 두 번째부터는 200 OK만 주고 무시하도록 바꿨습니다.
  4. 응답이 6초를 넘겨 타임아웃 실패율이 4%까지 오르자, 재고 차감과 안내메일 발송을 큐로 빼고 접수 즉시 응답하도록 고쳐 실패율을 0.2%로 낮췄습니다.
  5. 전환 3주 뒤 출고 지시까지 평균 7분이 12초로 줄고, CS 문의는 주당 40건에서 6건으로, 하루 8,640회였던 폴링 호출은 0회가 됐습니다.
관련 용어
이 용어와 연결된 교육
📚디지털 트랜스포메이션나눔경영컨설팅 기업교육 · 대면/온라인과정 보기 →
이 주제로 사내 교육이 필요하신가요?
담당자 맞춤 커리큘럼·견적을 바로 받아보세요.
교육 문의하기
최종 수정 2026-09-13 · 감수 김종혁

자주 묻는 질문

API는 '내가 물어보면 답', 웹훅은 '사건이 생기면 서버가 먼저 알림'입니다. 방향이 반대입니다.
네. 사건 발생 즉시 전달돼, 주기적으로 확인하는 것보다 빠르고 효율적입니다.
API는 '내가 물어보는' 방식, 웹훅은 '사건이 생기면 먼저 알려주는' 역방향입니다.
사건 발생 즉시 호출돼 거의 실시간입니다. 알림·연동 자동화에 유용합니다.