ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • REST API 설계 원칙 중 PUT, PATCH 차이 (멱등성 관련)
    Web 2025. 4. 15. 15:29
    728x90
    반응형

    💡 멱등성(Idempotence)이란?

    멱등성은 수학과 컴퓨터 과학에서 사용하는 개념으로, 같은 연산을 여러 번 적용해도 결과가 처음 한 번 적용했을 때와 동일한 성질을 말합니다.

    REST API에서 멱등성은 다음처럼 이해할 수 있어요:

    "같은 요청을 여러 번 보내더라도 서버 상태가 한 번 요청했을 때와 같아야 한다."

    🔍 예시로 이해하기

    • DELETE /users/123 요청을 생각해봅시다.
    • 한 번 보내면 사용자 123이 삭제됩니다.
    • 두 번 보내도 이미 삭제되어 있어서 서버 상태엔 변화가 없습니다.

    → 따라서 DELETE멱등한 메서드입니다.

    ✅ HTTP Method와 멱등성

    HTTP Method 멱등성 있음? 설명
    GET ✅ O 조회는 서버 상태를 바꾸지 않음
    PUT ✅ O 특정 자원을 "정해진 값으로" 덮어쓰기 때문에 여러 번 해도 결과 같음
    DELETE ✅ O 삭제는 한 번 이상 요청해도 결과 같음 (이미 없으면 그대로)
    POST ❌ X 요청마다 리소스가 새로 생성될 수 있어 멱등하지 않음
    PATCH ❌ 보통 X 리소스를 "부분 수정"하므로 여러 번 하면 결과 달라질 수 있음

    🔁 PUT vs PATCH - 멱등성 관점에서

    항목 PUT PATCH
    방식 전체 교체 (Replace) 부분 수정 (Modify)
    멱등성 ✅ 있음 ❌ 없음 (보통)
    예시 "이름: 홍길동, 나이: 30" 전체 덮어쓰기 "나이만 30으로 바꿔줘"

    ✍️ 블로그 글 작성 팁

    • 실생활 예시로 설명하면 좋아요 (예: ATM에서 같은 금액을 두 번 송금)
    • curl 예제 같이 넣어주면 실용성 ↑
    • 멱등성 있는 메서드는 재시도(재요청) 상황에 유리하다는 점도 강조!
    728x90
    반응형

    댓글

Designed by Tistory.