패스잇
시스템 설계 · 기초

API 설계에서 '멱등성(Idempotence)'이란 무엇이며, 멱등성이 보장되어야 하는 HTTP 메서드와 그 이유에 대해 설명해주세요.

힌트 · 멱등성은 동일한 요청을 여러 번 수행해도 같은 결과를 반환하는 특성으로, GET, PUT, DELETE 메서드가 멱등성을 가집니다.

멱등성HTTP 메서드GET, PUT, DELETE상태 변화안전성

모범답안

면접관님, 멱등성이란 동일한 요청을 한 번 보내든 여러 번 보내든 결과가 항상 같은 것을 의미합니다. 즉, 서버의 상태가 동일하게 유지되는 것이죠.

HTTP 메서드 중에서 멱등성이 보장되어야 하는 메서드는 주로 GET, PUT, DELETE입니다.

GET은 서버의 상태를 변경하지 않고 데이터를 조회하기 때문에 여러 번 호출해도 결과가 같습니다.

PUT은 특정 URI의 자원을 요청에 담긴 내용으로 완전히 대체합니다. 따라서 여러 번 요청해도 최종 상태는 같습니다.

DELETE는 특정 URI의 자원을 삭제합니다. 이미 삭제된 자원에 대해 DELETE 요청을 보내도 결과적으로는 자원이 없는 상태로 동일합니다.

멱등성이 중요한 이유는 네트워크 오류 등으로 인해 동일한 요청이 여러 번 전송될 수 있기 때문입니다. 멱등성이 보장되면 이러한 상황에서도 시스템의 안정성을 유지할 수 있습니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 API 설계 면접 질문

← API 설계 면접 질문 전체 보기