자동으로 WSJPA ObjectCache 사전 로드

OpenJPA에 대한 WSJPA(WebSphere® Java™ Persistence API) 확장은 특정 유스 케이스의 성과를 개선할 수 있는 읽기 전용 ObjectCache를 제공합니다. 기본적으로, 캐시의 데이터는 지연 메소드로 로드되며, 이는 애플리케이션에서 요청하면 개별 엔티티가 메모리로 로드된다는 것을 의미합니다. 처음부터 모든 엔티티를 로딩하려면 ObjectCache에서 구성되는 데이터베이스로부터 모든 엔티티를 사전 로드하도록 애플리케이션 서버를 구성할 수 있습니다. ObjectCache를 사전 로드하면 지연 메소드를 통해 ObjectCache를 로드하려는 경우 제한될 수 있는 엔티티를 캐시할 수 있습니다.이 구성은 JPA 2.0 스펙 레벨에서 WSJPA를 사용할 때만 지원됩니다.

이 태스크 정보

ObjectCache의 자동 로딩을 사용하면 JPA 환경은 단일 엔티티를 애플리케이션에서 요청되길 기다리는 대신 ObjectCache를 자동으로 크기 조정하고 사전 로드합니다. 애플리케이션 서버가 첫 번째 EntityManager를 작성하면, 사전 로드 프로세스가 시작되고 애플리케이션 서버는 ObjectCache에서 구성된 데이터베이스로부터 모든 엔티티를 사전 로드합니다. 이 사전 로드 프로세스는 별도의 프로세스 스레드로 비동기적으로 발생합니다.
문제점 방지 문제점 방지: 다음 정보를 숙지하십시오.
  • ObjectCache에 있도록 구성된 엔티티의 경우, ObjectCache에서 모든 즉시 관계를 구성해야 합니다. 지연 관계는 사용할 수 없습니다.
  • 애플리케이션 서버가 ObjectCache를 사전 로드하는 동안, 엔티티는 데이터베이스로부터 가져옵니다. 애플리케이션 서버는 다른 메소드로 로딩되는 ObjectCache에 임의의 엔티티도 추가하지 않습니다.
  • 사용자의 오브젝트 그래프가 복잡한 경우, 자동으로 캐시를 로드하면 긴 시간이 소요될 수 있습니다.
  • 사용 가능한 모든 메모리를 소비할 수 있기 때문에 이 기능을 사용할 때는 주의하십시오. 이 기능을 작동하려면 JPA 환경에 메모리의 전체 데이터 세트가 있어야 합니다.
gotcha
사전 로드 프로세스가 완료되면 다음과 유사한 정보 메시지를 표시합니다.
Successfully loaded the ObjectCache with [...] Entities in [...] seconds.

프로시저

  1. MaxSize 특성을 ObjectCache에 대해 auto로 설정하십시오. 예를 들어, .properties 파일에 다음 항목을 포함시키십시오.
    <property name="wsjpa.ObjectCache" value=”true(Types=com.ibm.wsjpa.Foo; com.ibm.wsjpa.Bar, MaxSize=auto)”/>
    MaxSize 특성의 기본값은 1000이지만 MaxSize 특성을 자동으로 설정하면 사전 로드 메커니즘이 사용 가능합니다.
  2. 옵션: EvictionSchedule 특성에 설정한 값을 검토하십시오. 성능을 향상시키도록 WSJPA ObjectCache 구성 주제에서 설명됩니다. MaxSize=auto 설정과 함께 EvictionSchedule 특성을 사용하면, EvictionSchedule 특성은 기본 동작과 다르게 구현됩니다. 구성된 스케줄에서 ObjectCache를 지우는 대신, ObjectCache가 자동으로 다시 로드됩니다.

다음 예제는 자동으로 로드되도록 ObjectCache를 구성하는 방법을 나타냅니다.
  • 다음 특성은 애플리케이션 서버가 첫 번째 EntityManager를 작성하면 ObjectCache가 자동으로 로드됨을 지정합니다.
    <property name=" wsjpa.ObjectCache" value=”true(Types=com.ibm.wsjpa.Foo; com.ibm.wsjpa.Bar, MaxSize=auto)”/>
  • 다음 특성은 애플리케이션 서버가 첫 번째 EntityManager를 작성할 때 ObjectCache가 자동으로 로드됨을 지정하며 ObjectCache는 20분마다 다시 로드됩니다.
    <property name=" wsjpa.ObjectCache" value=”true(Types=com.ibm.wsjpa.Foo; com.ibm.wsjpa.Bar,
     MaxSize=auto, EvictionSchedule=+20)”/>

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



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