반응형

api performance 2

HTTP/1.1과 HTTP/2의 차이 - 왜 프로토콜은 진화했는가?

HTTP는 오랜 시간 동안 웹의 표준 통신 프로토콜로 사용되어 왔다.하지만 HTTP의 핵심은 “의미(Semantics)”뿐 아니라 전송 방식에도 있다.이 글에서는 HTTP/1.1이 어떤 한계를 가졌는지, 그리고 HTTP/2가 그 한계를 어떻게 해결했는지를 RFC 기준으로 정리한다.1. HTTP/1.1의 기본 전송 모델HTTP/1.1은 요청-응답(Request-Response) 모델을 기반으로 한다.하나의 요청을 보내면, 그에 대한 응답을 받은 뒤 다음 요청을 보낼 수 있다.HTTP/1.0 시절에는 요청마다 연결을 새로 맺었지만, HTTP/1.1에서는 Keep-Alive를 통해 연결을 재사용할 수 있게 되었다.2. HTTP/1.1의 구조적 한계Keep-Alive로 연결 재사용이 가능해졌지만, HTTP/1...

HTTP Cache - Cache-Control은 왜 이렇게 복잡한가?

HTTP를 쓰다 보면 가장 이해하기 어려운 영역 중 하나가 캐시(Cache)다.Cache-Control, ETag, If-None-Match 같은 개념은 많이 들어봤지만, 정확히 무엇을 보장하는지는 모호한 경우가 많다.이 글에서는 HTTP 캐시가 왜 존재하는지, 그리고 왜 이렇게 복잡한 규칙을 가지게 되었는지를 RFC 기준으로 정리한다.1. HTTP Cache는 왜 필요한가?HTTP는 네트워크 위에서 동작하는 프로토콜이다.즉,느릴 수 있고비쌀 수 있으며항상 안정적이지 않다이 문제를 완화하기 위해 HTTP는 처음부터 캐시를 전제로 설계되었다.캐시의 목적은 단순하다. 같은 요청에 대해 매번 서버까지 가지 않아도 되게 만드는 것 2. HTTP Cache의 기본 모델HTTP 캐시는 다음 위치에 존재할 수 있다...

반응형