..

Search

44) Application Cache

Application Cache


application cache API

application cache API는 웹 응용 프로그램을 캐시(cache) 하여, 인터넷 접속 없이 사용자가 접근할 수 있게 해줍니다.

따라서 application cache를 사용하면 웹 응용 프로그램의 오프라인 버전을 쉽게 만들 수 있습니다.

 

application cache를 사용해서 생기는 장점은 다음과 같습니다.

 

- 오프라인 접속 : 사용자가 웹 응용 프로그램을 오프라인(off-line)으로도 사용할 수 있습니다.

- 속도 : 캐시(cache)된 자원은 빠르게 로드(load)할 수 있습니다.

- 서버의 부하 감소 : 웹 브라우저는 서버의 자원에 변동이 있을 때만 자원을 갱신하면 됩니다.

 

application cache를 지원하는 주요 웹 브라우저의 버전은 다음과 같습니다.

API ie chrome firefox safari opera
application cache 10.0 4.0 3.5 4.0 11.5

cache mainfest 파일

application cache를 사용하기 위해서는 먼저 cache mainfest 파일을 작성해야 합니다.

cache mainfest 파일은 웹 브라우저에 캐시(cache) 해야 할 파일과 캐시하지 말아야 할 파일을 알려줍니다.

 

이러한 mainfest 파일은 다음과 같이 세 개의 세션(session)으로 이루어집니다.

 

- CACHE MAINFEST : 처음 다운로드한 이후에 계속 캐시할 파일들을 기록합니다.

- NETWORK : 서버와의 접속이 필요한 파일들을 기록하며, 이 파일들은 절대로 캐시되지 않습니다.

- FALLBACK : 파일에 접속할 수 없을 때에 대체할 파일들을 기록합니다.


캐시(cache)의 갱신

웹 브라우저는 다음과 같은 경우가 발생하면 캐시(cache)의 정보를 갱신하게 됩니다.

 

- 사용자가 웹 브라우저의 캐시를 강제로 지웠을 경우

- application cache가 프로그램 때문에 갱신됐을 경우

- cache mainfest 파일이 수정됐을 경우

 

문법

CACHE MAINFEST

# 2016-03-22 v1.0.1

test.html

test.css

test.js

 

NETWORK:

test.jpg

 

FALLBACK:

/ offline.html

 

한 번 캐시 되면 서버상의 파일을 수정해도, 웹 브라우저는 사용자 측에 캐시 되어 있는 버전의 파일만을 보여줍니다.

따라서 서버상의 파일을 수정한 후에는 반드시 웹 브라우저가 캐시를 갱신하도록 만들어야 합니다.

 

이때 가장 많이 사용되는 방법이 cache mainfest 파일 내의 주석 부분을 수정하는 것입니다.

일반적으로 갱신 날짜 및 버전 정보를 주석으로 표시하고, 이 부분을 수정하여 웹 브라우저가 캐시를 갱신하도록 유도합니다.


연습문제