동적 캐시 서비스 사용

서블릿, 웹 서비스, WebSphere® Application Server 명령의 출력을 캐시하여 애플리케이션 성능을 개선하기 위해 동적 캐시 서비스를 사용합니다.

시작하기 전에

애플리케이션에 적용할 캐시 정책을 개발하십시오. 캐시 정책은 캐시할 응답과 캐시에 응답을 보유해야 하는 시간에 대한 규칙을 정의합니다. 자세한 정보는 cachespec.xml 파일을 사용한 캐시 가능 오브젝트 구성 문서를 참조하십시오.

이 태스크 정보

동적 캐시 서비스는 기본적으로 사용 가능합니다. 다음과 같이 기본 캐시 인스턴스를 구성할 수 있습니다.

프로시저

  1. 서버 > 서버 유형 > WebSphere® 애플리케이션 서버 > server_name > 컨테이너 서비스 > 동적 캐시 서비스를 클릭하십시오.
  2. 기본 캐시 인스턴스를 구성하거나 링크를 따라 서블릿 또는 포틀릿 캐싱을 사용하십시오. 기본 캐시 설정에 대한 자세한 정보는 동적 캐시 서비스 설정 문서를 참조하십시오.

다음 예에는 cachespec.xml 파일을 사용하여 동적 캐시 서비스를 구성하는 모든 단계가 나열되고 캐시 ID 생성 규칙, 종속성 ID, 무효화 규칙의 사용이 표시되어 있습니다.

서블릿이 단순 뉴스 사이트를 관리한다고 가정합니다. 이 서블릿에서는 조회 매개변수 "action"을 사용하여 요청에서 뉴스를 보는지(조회 매개변수 "view") 또는 뉴스를 업데이트하는지(조회 매개변수 "update") 여부를 판별합니다(관리자가 사용). 다른 조회 매개변수 "category"는 뉴스 카테고리를 선택합니다. 이 사이트에서 속성 이름 "레이아웃"을 사용하여 사용자의 세션에 저장되는 선택적 사용자 정의 레이아웃을 지원한다고 가정합니다. 다음은 이 서블릿에 제출되는 URL 요청 예입니다.
  • http://yourhost/yourwebapp/newscontroller?action=view&category=sports (스포츠 카테고리의 뉴스 페이지를 리턴함)
  • http://yourhost/yourwebapp/newscontroller?action=view&category=money (금융 카테고리의 뉴스 페이지를 리턴함)
  • http://yourhost/yourwebapp/newscontroller?action=update&category=fashion (관리자가 패션 카테고리에서 뉴스를 업데이트할 수 있도록 함)

다음 단계에서는 cachespec.xml 파일을 사용하여 이 예제의 동적 캐시 서비스를 구성하는 방법을 설명합니다.

  1. 서블릿을 식별하는 데 필요한 <cache-entry> 요소를 정의합니다. 이 경우 서블릿의 URI가 "newscontroller"이므로 newscontroller가 cache-entry <name> 요소입니다. 이 예제에서는 서블릿 또는 JSP(JavaServer Pages) 파일을 캐시하므로 캐시 항목 클래스는 "servlet"입니다.
    <cache-entry> 
    <name> /newscontroller </name>
    <class>servlet  </class>  
     </cache-entry>
  2. 캐시 ID 생성 규칙을 정의합니다. 이 서블릿은 action=view인 경우에만 캐시하므로 값이 "view"와 같을 때 캐시 ID의 한 컴포넌트가 "action" 매개변수가 됩니다. 뉴스 카테고리도 캐시 ID의 중요한 부분입니다. 사용자 레이아웃의 선택적 세션 속성이 캐시 ID에 포함됩니다. 이제 캐시 항목은 다음과 같습니다.
    <cache-entry> 
    	<name> /newscontroller </name>
    	<class>servlet  </class>  
     	<cache-id>
    		<component id="action" type="parameter">
    			<value>view</value>
    			<required>true</required>
    		</component>
    		<component id="category" type="parameter">
    			<required>true</required>
    		</component>
    		<component id="layout" type="session">
    			<required>false</required>
    		</component>
    	</cache-id>
    </cache-entry>
  3. 종속성 ID 규칙을 정의합니다. 이 서블릿의 경우 종속성 ID가 카테고리에 사용되도록 추가됩니다. 나중에 업데이트 이벤트로 인해 카테고리가 무효화되면 해당 뉴스 카테고리의 모든 보기가 무효화됩니다. 다음은 종속성 ID 추가 이후의 캐시 항목 예입니다.
    <cache-entry> 
    	<name>newscontroller </name>
    	<class>servlet  </class>  
     	<cache-id>
    		<component id="action" type="parameter">
    			<value>view</value>
    			<required>true</required>
    		</component>
    		<component id="category" type="parameter">
    			<required>true</required>
    		</component>
    		<component id="layout" type="session">
    			<required>false</required>
    		</component>
    	</cache-id>
    	<dependency-id>category
    		<component id="category" type="parameter">
    			<required>true</required>
    		</component>
    	</dependency-id>
    </cache-entry>
  4. 무효화 규칙을 정의합니다. 카테고리 종속성 ID가 이미 정의되어 있으므로 action=update인 경우 무효화 규칙을 정의하여 카테고리를 무효화하십시오. 조건 논리를 통합하기 위해 "ignore-value" 컴포넌트를 무효화 규칙에 추가합니다. 이 컴포넌트는 무효화 ID의 출력에 추가되지 않고 무효화 ID가 작성되어 실행되는지 여부만 판별합니다. 최종 캐시 항목은 이제 다음과 같습니다.
    <cache-entry> 
    	<name>newscontroller </name>
    	<class>servlet  </class>  
     	<cache-id>
    		<component id="action" type="parameter">
    			<value>view</value>
    			<required>true</required>
    		</component>
    		<component id="category" type="parameter">
    			<required>true</required>
    		</component>
    		<component id="layout" type="session">
    			<required>false</required>
    		</component>
    	</cache-id>
    	<dependency-id>category
    		<component id="category" type="parameter">
    			<required>true</required>
    		</component>
    	</dependency-id>
    	<invalidation>category
    		<component id="action" type="parameter" ignore-value="true">
    			<value>update</value>
    			<required>true</required>
    		</component>
    		<component id="category" type="parameter">
    			<required>true</required>
         </component>
    	</invalidation>
    </cache-entry>

다음에 수행할 작업

동적 캐시 디스크 오프로드를 사용 가능하게 할 수 있습니다. 이 옵션은 나중에 액세스할 수 있도록 만료된 캐시 항목을 메모리에서 디스크로 옮깁니다. 디스크 오프로드 사용에 대한 자세한 정보는 동적 캐시 디스크 오프로드 구성을 참조하십시오.

주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdyn_enablecache
파일 이름:tdyn_enablecache.html