본문 바로가기

프로그래밍

멱등(冪等)성을 유지하기

반응형
dw 에 올라온 새로운 글을 보다가
왠지 낯선 단어를 만나버렸습니다.

팁: 세션 상태를 사용하여 불필요한 Ajax 트래픽 피하기
http://www.ibm.com/developerworks/kr/library/wa-aj-resttip.html

HTTP에 관한 기정 사실은 엄청난 힘과 취약점이다: HTTP는 Stateless 프로토콜이다. HTTP 서버 리소스로의 요청은 멱등(idempotent)이어야 하며, 호출 시 같은 요청이 같은 결과를 리턴해야 한다. 멱등성(Idempotency)은 REST의 중심적인 개념이다: 클라이언트 정보를 인코딩한 요청이 그 요청과 같은 데이터를 리턴해야 한다.
A simple fact about HTTP is both its greatest strength and its central weakness: HTTP is a stateless protocol. Each request to an HTTP server resource is meant to be idempotent, which is to say the same request should return the same result at each invocation. Idempotency is the central idea in REST: the same request — perhaps encoding client information — should return the same data whenever it is made.

음...멱등성이라...오타가 아닐까 싶어서
내용을 찾아보았습니다.
의외로 관련된 내용이 많이 나오더군요.
(저만 몰랐던 건가요...당황..ㅠㅠ)

메서드를 여러 번 호출해서 한 번만 호출한 것과 동일한 결과가 나오는 경우 이 메서드를 멱등(idempotent)이라고 할 수 있다. 예를 들어 읽기 전용 메서드와 같이 일반적으로 서버 측의 어떠한 상태도 변경하지 못하는 모든 메서드는 멱등(idempotent)이다.
수학적인 의미로는,
자기자신 또는 자기자신, 자기자신 그리고 자기자신에 대해서 자기자신이라는 결과가 나오는것을 말한다.
http://blog.naver.com/yes756/60046900954

아마도 수학적인 개념에서 나온 이야기같은데
너무나 철학적인 이야기처럼 들리는 것은 왜 그럴까요..
(올해 공부할 내용에 기초수학부분을 추가해야 되겠네요..)

멱등이라는 한자를 한번 보지요..
http://hanja.naver.com/

사용자 삽입 이미지

사용자 삽입 이미지

冪 이라는 것이 제곱이라는 의미를 가지고 있으며 乘冪(승멱) 은 거듭제곱, 三升冪(삼승멱) 은 세제곱을 나타내는 등의 뜻을 가지고 있다고 합니다.
위에서 설명한 의미를 가지고 어찌어찌 풀어보면 같은 것은 덮어버린다 뭐 그런의미겠지요.

아주 조금은 이해가 될것도 같습니다. ㅎㅎ

필자인 David Mertz는 대역폭을 절약하는 것이 대역폭을 획득하는 것이라고 생각하고 있다 라고 자신을 설명하고 있네요. 최근 웹개발시에는 어느정도 코딩을 해도 기본적인 속도가 나오기때문에 많은 관심을 가지고 있지는 않지만 글로벌한 사이트를 개발하던가 아니면 많은 데이터를 주고받는 경우에는 많은 대역폭을 획득하는 것을 고려하는 코딩습관을 가지는것이 중요하겠지요.


728x90