엔터프라이즈 Bean(EJB) 지속적 타이머 애플리케이션 개발
EJB 지속적 타이머가 컨테이너에서 자동으로 또는 애플리케이션에서 프로그래밍 방식으로 작성되었습니다. 두 가지 유형의 지속적 타이머는 둘 다 server.xml 파일의 EJB 타이머 서비스에 구성된 데이터베이스의 테이블에 저장됩니다.
이 태스크 정보
지속적 타이머가 작성된 후에는 다음 중 하나가 발생할 때까지 데이터베이스에 존재합니다.
- 타이머가 추가 만기(예: 단일 조치 타이머가 만료되고 실행된 후)를 위해 스케줄되지 않습니다.
- 애플리케이션이 타이머를 취소합니다.
- EJB 타이머 서비스 MBean(EJBPersistentTimerServiceMXBean)을 사용하여 타이머가 취소됩니다.
- 타이머가 데이터베이스에서 수동으로 제거됩니다. 예를 들어, 타이머 서비스 데이터베이스가 지워지거나 제거되는 경우입니다.
또한 EJB 지속적 타이머는 애플리케이션 이름, 모듈 이름, Bean 이름을 기반으로 한 EJB와 연관되어 있습니다. 애플리케이션이 업데이트되고 이러한 이름이 변경되면, 타이머는 계속 데이터베이스에 존재하지만 더 이상 만료되지 않고 실행되지도 않으므로 존재하지 않는 것처럼 보입니다.
Enterprise JavaBeans 스펙은 애플리케이션이 배치될 때 컨테이너가 자동 타이머를 작성한다고 선언합니다. Liberty의 경우, 이는 서버 프로세스 내에서 처음 애플리케이션이 시작될 때 발생합니다. 처음 애플리케이션이 시작될 때, 애플리케이션이 배치되었다는 표시와 함께 자동으로 작성된 지속적 타이머가 지속적 타이머 데이터베이스에 저장됩니다. 컨테이너는 EJB 지속적 타이머 데이터베이스에서 타이머와 애플리케이션이 배치되었다는 표시가 둘 다 제거될 때까지 자동 지속적 타이머를 다시 작성하지 않습니다.
프로시저
server.xml 파일에서 EJB 지속적 타이머 기능을 사용으로 설정하십시오.
예:
<featureManager>
<feature>ejbPersistentTimer-3.2</feature>
</featureManager>