더북(TheBook)

당연하게도 표준은 해결해야 하는 문제에 적합해야 합니다. HTTP는 대부분 네트워크 서비스에서 잘 동작하지만 모든 서비스에 적합한 것은 아닙니다. 이는 대안이 존재하는 이유이기도 합니다. 특정 설계 문제에서 표준을 기반으로 한 즉각 사용할 수 있는 솔루션이 있다면 별로 고민하지 않아도 됩니다. 하지만 그렇더라도 아키텍트로서 해당 표준의 적합성을 반드시 검증해야 합니다. 여기에는 현재 시스템 상황에 적용할 수 없는 사실상의 표준을 거부하는 것도 포함됩니다.

표준의 계층화

HTTP는 추상적이기 때문에 여러 소프트웨어에서 필요에 따라 특정한 방식으로 사용됩니다. 즉, 소프트웨어 필요에 따라 HTTP를 아무렇게 사용하지 못하도록 특정한 방식으로 제한합니다. 예를 들어 HTTP에는 서버에 리소스를 생성하는 두 가지 방법이 있습니다. 하나는 특정 리소스 URL에 직접 POST 요청하는 것8이고, 다른 하나는 컨테이너 URL에 POST 요청하는 것9입니다. 이는 HTTP 사용을 구체화한 예시로 옳고 그름의 문제가 아닌 그저 동일한 작업을 수행하는 다른 방식일 뿐입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.