Weblogic의 캐시 및 둔화 상태 세션 EJB

6080 단어 Java 통합
며칠 전 프로젝트에서 WebLogic 캐시와 둔화 상태 세션 EJB에 대한 문제가 발견되었습니다.
간단한 설명:
===========================================
cache-type NRU로 설정할 때 공식 문서의 설명에 따라
 
Lazy Passivation ( NRU )
When lazy passivation is configured by setting cache-type to NRU , the container avoids passivating beans, because of the associated systems overhead—pressure on the cache is the only event that causes passivation or eager removal of beans.
The container:
  • Removes a bean instance from cache when idle-timeout-seconds expires, and does not passivate it to disk. This is referred to as a eager remove . An eager remove ensures that an inactive instance does not consume memory or disk resources.
  • Passivates instances to disk when max-beans-in-cache is reached, even though idle-timeout-seconds has not expired.

  • 게으름 방지(NRU)
    cache-type가 NRU로 설정되었을 때 용기는 둔화 Bean을 회피합니다. 관련 시스템의 캐시 비용이 관련되어 둔화되거나 Beans를 삭제하기를 갈망하기 때문입니다.
    The container:
  • idle-timeout-seconds( ) Cache bean, 。 。의 삭제를 갈망하는 사람은 메모리와 하드디스크 자원을 소모하지 않을 것을 보증한다.
  • 에 도달했을 때 둔화된 하드디스크의 bean 실례는 max-beans-in-cacheidle-timeout-seconds
  • 을 초과하지 않아도
     
     
    상세 보기: (유휴 시간) 그림5-2 이후
    =============================================================
    즉, NRU로 설정할 때 나를 만지다 idle-timeout-seconds 를 초과하면
    그러나 프로젝트에서 이 결론을 시종 검증하지 못했다. - 유휴 시간을 거치더라도 시간은 캐시의 빈을 바로 해치울 것이다.그림5-2 를 초과하든 초과하든 Cache에서 삭제하지 않을 것이다. - 프로젝트 자체의 프레임워크가 특수한 실현으로 인해 발생한 것이라고 생각하기 시작했고 나중에 순수한 버전의ejbsample를 만들었다.결과가 여전히 이렇다는 것을 발견하다.
     
    Oracle 문서의 문제입니까, 아니면 Bug입니까, 아니면 자신이 검증에서 무슨 착오가 있었습니까?이해가 안 돼!!!
     
    나중에 샘플을 첨부해서 오라클에 물어봤어요.한 달이 지났는데도 대답이 없다.
    여러분에게 가르침을 청하고 싶은데, 이유가 무엇입니까?
    왜 초과max-beans-in-cacheidle-timeout-seconds 
     
    ****************************************************************************
    관련 문서 설명을 첨부합니다.

    cache-type


    기능


    시간 후 공식 문서에 기술된 "메모리에서 Bean 삭제" 가 없습니까? 캐시에서 EJB를 제거하는 순서를 지정합니다.값은 다음과 같습니다.
  • 최근 최소 사용(Least recently used, LRU)
  • 최근 사용되지 않음(Not recently used, 약칭 NRU)
  • NRU 캐시 크기의 최소값은 8입니다. 이 3보다 작으면 WebLogic Server는 max-beans-in-cache 에 8 값을 사용합니다.

    max-beans-in-cache 예


    <stateful-session-cache>
        <cache-type>NRU</cache-type>
    </stateful-session-cache>

     

    Controlling Passivation


    The rules that govern the passivation of stateful session beans vary, based on the value of the beans cache-type element, which can be:
  • LRU —least recently used, or eager passivation.
  • NRU —not recently used, or as lazy passivation

  • ****************************************************************************

    좋은 웹페이지 즐겨찾기