Enterprise JavaBeans 타이머 서비스 구성

비지속적 EJB 타이머의 경우, 타이머 재시도 및 제한시간 콜백 메소드에 대한 실패한 호출에 대한 재시도 횟수 사이의 간격을 제어하기 위해 EJB 타이머 서비스를 구성할 수 있습니다.

이 태스크 정보

EJB 타이머 서비스는 제한시간 초과 콜백 메소드가 완료될 때까지 비지속적 타이머에 대한 제한시간 초과 콜백 메소드의 실패한 호출을 5분마다 재시도합니다. 비지속적 타이머를 구성하려면 다음 옵션을 사용하십시오.

최대 재시도 횟수

실패한 제한시간 초과 콜백 메소드를 재시도할 수 있는 최대 횟수를 지정합니다. 제한시간 초과 콜백 메소드의 재시도가 성공하면 서버는 이를 실행하려는 시도를 중지합니다. 재시도가 실패하면 서버는 제한시간 초과 콜백 메소드가 성공하거나 재시도 한계에 도달할 때까지 재시도를 계속합니다. 재시도 제한에 도달하면 서버는 이전 시도가 실패하더라도 제한시간 초과 콜백 메소드를 실행하려 시도하지 않습니다. 기본값 -1은 무제한 재시도를 나타냅니다. 값 0은 재시도하지 않음을 나타내고 스펙을 준수하지 않습니다. 1 이상의 값은 허용되는 특정 재시도 횟수를 표시합니다.

비지속적 타이머에 대한 제한시간 초과 콜백 메소드 재시도 횟수의 구성 변경은 각 예약된 시간에 비지속적 타이머가 완료되지 않아도 되는 애플리케이션의 경우 유용합니다. 예를 들어, 애플리케이션이 5분마다 실행되도록 예약된 비지속적 간격 타이머를 작성하는 경우, 재시도 횟수를 0으로 구성하면 실패 또는 성공 여부에 관계없이 5분마다 한 번 실행되는 타이머가 작성됩니다.

재시도 간 시간 간격

실패한 제한시간 초과 콜백 메소드의 재시도 간 간격을 지정합니다. 첫 번째 재시도는 이 값에 구성된 간격에 관계없이 항상 즉시 발생됩니다. 모든 추가 재시도는 이 값에 지정된 간격 후에 발생됩니다. 값 0은 모든 재시도가 즉시 발생함을 나타냅니다. 1 이상의 값은 재시도가 특정 초가 지난 후 발생함을 나타냅니다. 기본값은 300초입니다.

비지속적 타이머의 재시도 간 시간 간격을 다양하게 설정하는 것은 더 작은 재시도 간격을 사용할 때 예약된 시간 전에 제한시간 초과 콜백 메소드가 완료되어야 하는 애플리케이션의 경우 유용합니다. 이 접근법은 또한 제한시간 초과 콜백 메소드가 성공적으로 실행할 더 좋은 기회를 가질 수 있도록 하기 위해 애플리케이션이 더 긴 재시도 간격을 사용할 때와 같이 타이머 완료를 더 늦은 시간으로 지연시켜도 괜찮은 애플리케이션의 경우에도 적용할 수 있습니다.

프로시저

  1. server.xml 파일에서 비지속적 타이머를 지원하는 EJB 기능을 포함하도록 애플리케이션 서버를 구성하십시오. 예를 들어, 다음을 server.xml 파일에 추가하십시오.
    <featureManager>
         <feature>ejbLite-3.2</feature>
    </featureManager>
  2. server.xml 파일에서 비지속적 타이머에 대해 특정 최대 재시도 횟수 값 및 재시도 간격 값을 사용하도록 EJB 타이머 서비스를 구성하십시오. 예를 들어, 비지속적 타이머가 재시도 사이의 10초 간격을 갖고 3번까지 재시도하도록 지정하려면 다음 구성을 사용하십시오.
    <ejbContainer>        
         <timerService nonPersistentMaxRetries="3" nonPersistentRetryInterval="10"/>
    </ejbContainer>

    이 구성을 사용하면 타이머에 대한 제한시간 초과 콜백 메소드가 4번까지 호출됩니다. 첫 번째 호출은 예약된 시간에 발생합니다. 첫 번째 호출이 실패하면 첫 번째 재시도가 실패 후 즉시 발생합니다. 제한시간 초과 콜백 메소드가 계속 실패하는 경우, 두 번째 및 세 번째 재시도가 각각 10초 후 및 20초 후 발생합니다.

    다음 예제에서 실패한 제한시간 초과 콜백 메소드는 한 번만 재시도됩니다. 첫 번째 재시도가 항상 즉시 수행되므로 콜백 간격은 무관합니다.

    <ejbContainer>        
         <timerService nonPersistentMaxRetries="1"/>    
    </ejbContainer>

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



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