cache 3

캐시와 조건부 요청 헤더 & 프록시 캐시와 캐시 무효화

캐시 제어 헤더 Cache - Control: 캐시 제어 Pragma: 캐시 제어(하위 호환) Expires: 캐시 유효 기간(하위 호환) Cache-Control 캐시 지시어(directives) Cache-Control: max-age 캐시 유효 시간, 초 단위 Cache-Control: no-cache 데이터는 캐시해도 되지만, 항상 원(origin) 서버에 검증하고 사용 Cache-Control: no store 데이터에 민감한 정보가 있으므로 저장하면 안됨 (메모리에서 사용하고 최대한 빨리 삭제) Pragma 캐시 제어(하위 호환) Pragma: no-cache HTTP 1.0 하위 호환 Expires 캐시 만료일 지정(하위 호환) expires: Mon, 01 Jan 1990 00:00:00 ..

HTTP 2022.04.30

캐시 기본 동작 & 검증 헤더와 조건부 요청

웹 브라우저에서 start.jpg를 요청하면 서버에서 star.jpg라는 그림을 찾아준다. 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 받아야 한다. 인터넷 네트워크는 매우 느리고 비싸다. 브라우저 로딩 속도가 느리다. 느린 사용자 경험 60초 동안은 캐시가 유효하고 응답 결과를 캐시에 저장한다. 두번째 요청할 때는 캐시를 먼저 살핀다. 60초 안에 찾게되면 캐시에서 바로 가져오게 된다. 네트워크를 아예 탈 필요가 없게 된다. 캐시 적용 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 되고 비싼 네트워크 사용량을 줄일 수 있고 브라우저 로딩 속도가 매우 빠르다. 빠른 사용자 경혐 캐시 시간 초과 star.jpg를 다시 요청하고 60초가 초과되었다. 그러면 다시 웹브..

HTTP 2022.04.30

HTTP 메서드의 속성

안전(Safe Methods) 멱등(Idempotent Methods) 캐시가능(Cacheable Methods) 안전(Safe) Safe 호출해도 리소스를 변경하지 않는다. 계속 호출을 하여서 로그 같은게 쌓여서 장애가 발생하면? 안전은 해당 리소스만 고려 / 그러한 부분까지 고려 안한다. 멱등(Idempotent) f(f(x)) = f(x) 한 번 호출하든 두 번 호출하든 100 번을 호출하든 결과가 같다. 멱등 메서드 GET: 한 번 조회를 하든, 두 번 조회하든 같은 결과가 조회된다. PUT: 결과를 대체하는데 같은 요청을 여러번 해도 최종 결과는 같다. DELETE: 결과를 삭제하는데 같은 요청을 여러번 해도 삭제된 결과는 같다. POST: 이 아이는 멱등이 아니다. 두 번 호출하면 같은 결제가..

HTTP 2022.04.27