캐싱을 활용하여 성능 향상

콘텐츠 항목, 디지털 자산 및 사이트를 제공하는 경우 브라우저에서 콘텐츠 전달 및 렌더링 성능을 향상하려면 방문자의 브라우저 캐시를 충분히 활용해야 합니다.

사이트, 테마, 콘텐츠 항목 및 디지털 자산은 방문자의 브라우저 캐시에 일정 시간 동안 캐싱됩니다. 사이트, 테마, 콘텐츠 항목 또는 디지털 자산이 업데이트되면 URL의 cache-buster 키가 변경되므로 브라우저는 다른 URL을 인출하여 새 항목을 가져와야 합니다.

캐시 키로 현재 리소스만 참조하여 브라우저 캐시 사용을 관리할 수 있습니다. 캐시 키는 URL에 포함되지만 흔히 있듯이 물리적 위치(폴더)가 아닌 논리적 요소입니다. 캐시 키를 변경해도 리소스를 찾기 위해 다른 물리적 위치를 가리키지 않으며, 단순히 현재 버전의 리소스를 인출하도록 서버에 알립니다.

CSS, JS 및 이미지 파일과 같은 정적 리소스도 있고 페이지 데이터, 사이트 데이터 및 콘텐츠 항목 데이터와 같은 동적 리소스도 있습니다. 웹 사이트 구축을 위한 다음 5가지 범주의 리소스가 있습니다.

  • 제품 리소스 – 새 버전의 제품이 출시되거나 패치될 때마다 업데이트되는 제품의 일부인 리소스.

  • 사이트 리소스 – structure.json, 페이지 데이터, 이미지와 같이 사이트의 일부인 리소스. 사이트가 게시될 때 업데이트됩니다. 컨트롤러는 다음 텍스트에서 설명합니다.

  • 테마 리소스 – 레이아웃, CSS, 이미지와 같이 테마의 일부인 리소스. 테마가 게시될 때 업데이트됩니다.

  • 구성요소 리소스 – 사용자정의 구성요소의 일부인 리소스. 여기에는 HTML, JS, CSS와 구성요소를 이루는 이미지 파일이 포함됩니다. 구성요소가 게시될 때 업데이트됩니다. 한 구성요소가 변경되어 재게시할 경우 캐시 키는 모든 구성요소에 대한 단일 키이므로 모든 구성요소에 대해 키가 변경됩니다.

  • CaaS 리소스 – 콘텐츠 항목 및 디지털 항목을 제공하는 리소스. 콘텐츠 항목을 게시/재게시하거나 모음 대상이 변경될 때 업데이트됩니다.

다음 항목은 Oracle Content Management 런타임 캐싱과 사이트 작성기 캐싱을 설명합니다.

런타임 캐싱

런타임 동안 Oracle Content Management Cache-Control 헤더는 15일로 설정됩니다. 캐시 키가 모든 리소스의 URL에 추가됩니다.

URL이 동일하면 브라우저는 가능한 경우 로컬 캐시에서 리소스를 제공합니다. 리소스가 업데이트되면 캐시 키가 URL에서 업데이트되고, 브라우저는 서버에 새 요청을 보내고 로컬 캐시를 업데이트합니다.

캐시 키를 포함하는 컨트롤러도 1분 동안 캐싱됩니다. 이로 인해 업데이트된 캐시 키가 최대 1분 동안 보이지 않습니다.

런타임에 서버는 제품, 사이트, 테마, 구성요소 및 CaaS 리소스에 대한 최신 캐시 키와 함께 controller.html을 반환합니다. 다음과 같은 키 스크립트가 controller.html에 추가됩니다.

<script type="text/javascript">
        var SCSCacheKeys = {
                        product: '123',
                        site: '456',
                        theme: '789',
                        component: '012',
                        caas: '345'

        };

</script> 

이 키를 controller.js에서 사용하여 다음 표의 항목과 같은 URL을 구성합니다.

리소스 유형 예제
제품 리소스
/sitePrefix/productCacheKey/_sitesclouddelivery/...
/mySite/_cache_947d/_sitesclouddelivery/
테마 리소스
/sitePrefix/themeCacheKey/_themesdelivery/themeName/...
구성요소 리소스
/sitePrefix/compCacheKey/_compdelivery/compName/...
사이트 리소스
/sitePrefix/siteCacheKey/content/...
/sitePrefix/siteCacheKey/structure.json
/sitePrefix/siteCacheKey/pages/100.json
CaaS 리소스
RegularCaaSUrl?cacheKey=caasCacheKey

이와 같은 URL에 캐시 키를 삽입함으로써 Oracle Content Management는 URL을 효과적으로 변경하여 브라우저가 업데이트된 리소스(브라우저는 실제로 새 리소스라고 생각)를 강제 로드하도록 합니다.

주:

보안 사이트의 경우 제품, 테마, 구성요소 리소스만 캐싱되고 사이트나 CaaS 콘텐츠는 캐싱되지 않습니다.

사이트 작성기 캐싱

사이트 작성기에서 정적 리소스는 15일 동안 캐싱됩니다.

사이트 작성기를 사용하는 경우 제품, 테마 및 구성요소 리소스가 캐싱됩니다. (사이트 및 CaaS 리소스는 캐싱되지 않습니다.) 사이트 작성기를 실행하거나 새로고침할 때 테마 및 구성요소 캐시 키가 재생성됩니다.

테마나 구성요소를 변경하고 이 변경사항을 사이트 작성기에 표시하려면 사이트 작성기를 새로고침(F5)해야 합니다.