2011-09-20 2 views
1

Java EE 6 Technologies (컨테이너는 응용 프로그램 서버 인 Jboss AS 7)를 사용하여 개인 웹 응용 프로그램을 구축하고 있습니다.Java 웹 응용 프로그램에서 반복적 인 백그라운드 작업을 처리하기위한 전략은 무엇입니까?

  • 예약 된 작업 (예를 들어, 대량 메일 매주 일요일 밤 전송) 웹 이벤트를 기반으로
  • 트리거 작업을 (예를 들어, 실행 : 나는 반복적 인 백그라운드 작업을 만들기 위해 처음부터 다시 시작하고, 나는 두 가지 가능한 시나리오를 확인 웹 활동의 일부 긴 배경 업데이트) 나는 (추적 할 수없는 가망 경우 나도 몰라) 피하려면 무엇

일부 백그라운드 작업 내 platformm에 흩어져있는 것입니다은 (그들 중 일부는 다른 TimerTask를 사용하여, cron를 사용하여 , db jobs, etc.) 어려워진다. 유지하다.

이전 두 가지 요구 사항을 고려하여 Java 웹 응용 프로그램에서 반복적 인 백그라운드 작업을 처리하는 다른 방법은 무엇입니까?

관련 :

당신이 @Timeout 주석과 TimerService를 사용하여 거의 모든 상황에 석영 제거 할 수 EE6으로

답변

2

.

그리고 작동 시키려면 XML 행을 작성할 필요가 없습니다.

소스가 hereEE Night Hacks book에 좋은 예가 있습니다.

트리거 웹 이벤트를 처리하는 Bean에 Timeout 메소드를 추가 할 수 있습니다. 이렇게하면 한 곳에서 관리 할 수 ​​있습니다. 트리거 이벤트로 타이머 설정을 수정할 수도 있습니다.

1

나는 아직도 Quartz을 볼 것입니다. TimerService를 EE6으로 대체 할 수는 없지만 Quartz는 매우 유용하다고 생각합니다.

(지금 몇 년 전) 사용했을 때, 설정 파일은 cron에서 찾은 것과 매우 유사합니다. 이를 사용하여 예약 된 작업을 수행하는 데 필요한 모든 메소드를 호출 한 다음 필요에 따라 메소드를 호출하는 다른 메커니즘을 제공 할 수 있습니다.

관련 문제