728x90
반응형
연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 멱등성이라고 한다. HTTP 메서드의 멱등성은 동일한 요청을 한번 보내는 것과 여러번 보내는 것이 서로 동일한 효과를 지니며, 서버의 상태도 동일하게 남을 경우에 멱등하다고 이야기할 수 있다. 대표적으로 멱등한 메서드는 GET, HEAD, PUT, DELETE, TRACE, OPTIONS 가 있다.
멱등성 활용
모종의 이유로 전송 커넥션이 끊어졌을 때, 멱등성은 클라이언트가 다시 같은 요청을 해도 되는가에 대한 판단 근거가 될 수 있다. 멱등하다면 요청을 재시도할 때 같은 서버의 상태를 보장하기 때문에 문제가 없다. 반면, 멱등하지 않다면 재시도 요청시 중복 요청을 보내 문제를 발생 시킬 수 있다. 예를 들어, 사용자가 결제하는 시점에 타임아웃으로 인해 정상 응답을 못받는 상황을 생각해 볼 수 있다. 해당 경우에서 멱등하지 않은 결제 API 경우에는 결제가 성공했는지 수동으로 확인하고 재요청해야한다. 반면, 멱등한 결제 API의 경우에는 안심하고 여러 번 요청할 수 있으며 중복 요청으로 발생하는 문제(중복 결제)를 방지할 수 있다.
728x90
반응형
'Back-End' 카테고리의 다른 글
웹사이트 처음 접근 시 일련의 과정 (0) | 2025.03.31 |
---|---|
스레드, 프로세스, 코어 수 증가에 따른 성능 (0) | 2025.03.25 |
단위 테스트와 통합 테스트의 차이 (0) | 2025.03.24 |
TCP 3-way handshake (0) | 2025.03.19 |
동기 방식으로 외부 서비스 호출 시 장애 조치 방안 (0) | 2025.03.18 |
댓글