인생은 여행

Idempotent HTTP Method; 멱등 메서드 본문

카테고리 없음

Idempotent HTTP Method; 멱등 메서드

산떠 버하둘 2020. 11. 29. 00:59

멱등성

 

수학이나 전산학의 용어로 멱등성이라는 말이 있다. 같은 연산을 여러번 반복하더라도 결과가 달라지지 않는 성질을 말한다. 어떤 수에 0을 더하는 연산이 있다면, 이 연산의 결과는 몇 번을 수행하더라도 결과는 0이 되므로 멱등성을 가질 수 있다 하겠다. 예) x + 0 = (x + 0) + 0) + 0).

 

Idempotent HTTP Method

 

HTTP 요청 같이 통신 회선상에서 일어나는 사건에서도 멱등성은 중요한 개념이다. 오류가 발생했을 경우 서버에서 멱등성을 보장하지 않는다면 재시도를 하지 않아야 할 것이다.

 

일반적인 REST API 설계에서 POST를 제외한 GET, PUT, DELETE, HEAD, OPTIONS, TRACE 메서드는 멱등성을 보장하는 것으로 간주한다. POST는 새로운 레코드의 등록을 의미하기 때문에 타임아웃 등의 이유로 재시도하는 경우 여러 레코드가 등록될 수도 있을 것이다. API 설계시 이런 특성을 잘 파악하여야 한다. 만약 새로운 레코드의 등록시에도 재시도를 허용하기 위해서는 중복을 판단할 수 있는 guid 같은 부가적인 정보가 필요할 것이다.

 

참조: restfulapi.net/idempotent-rest-apis/ 

 

Idempotent REST APIs - REST API Tutorial

 

restfulapi.net

 

 

Comments