이 절에서는 라이프사이클 관리와 관련된 알려진 문제점과 해결 방법을 설명합니다.
ejb-timer-service 등록 정보 minimum-delivery-interval을 9000으로 설정한 후에 ejb-timer-service 등록 정보 redelivery-interval-in-mills를 7000으로 설정하려고 하면 다음 오류가 표시되면서 set 명령이 실패합니다.
[echo] Doing admin task set [exec] [Attribute(id=redelivery-interval-internal-in-millis) : Redelivery-Interval (7,000) should be greater than or equal to Minimum-delivery-interval- in-millis (9,000)] [exec] CLI137 Command set failed. |
minimum-delivery-interval은 같은 기간 타이머 전달 간의 최소 간격 기간입니다.
redelivery-interval-in-mills는 타미어 서비스가 실패한 ejbTimeout 후 재전달을 시도하기 전에 기다리는 시간입니다.
문제는 재전달 간격 등록 정보를 최소 전달 등록 정보와 관련시키는 로직이 잘못되어 최소 전달 간격이 재전달 간격보다 큰 곳에서 GUI 또는 CLI를 사용하여 값을 설정하지 못한다는 것입니다.
minimum-delivery-interval-in-millis는 항상 ejb-timer-service 등록 정보 redelivery-interval-in-millis와 같거나 그보다 크게 설정해야 합니다. 문제는 서버에서 redelivery-interval-in-millis 값이 minimum-delivery-interval-in-millis 값보다 크다고 잘못 검증하는 것입니다.
다음과 같이 등록 정보의 기본값을 사용합니다.
minimum-delivery-interval(default)=7000 redelivery-interval-in-millis(default)=5000 |
기본값 외의 값을 사용하면 오류가 발생합니다.
default-config를 사용하여 JMS 물리적 대상을 보려고 하면 오류 메시지가 표시됩니다.
예상되는 동작입니다. Enterprise Server 2.1에서 default-config는 구성 정보의 템플리트이기 때문에 default-config에 대해 JMS 작업( list 및 create 등)을 실행할 수 없습니다. 하지만 클러스터 또는 독립 실행형 인스턴스의 구성에 대해서는 이 JMS 작업을 실행할 수 있습니다.
(Windows 2003에만 해당) rich access 기능을 수행하려고 하면 Windows 2003 시스템에서 메모리 누수가 발생합니다. 문제가 발생하는 이유는 페이지가 지정되지 않은 Win32 풀이 계속 커져서 결국 TCP/IP 스택 전체를 중지시키기 때문입니다. 오류가 발생하고 나면 TCP/IP 스택은 복구할 수 있는 상태가 되며, 유일한 복원 방법은 Windows 2003 시스템을 재부트하는 것입니다.
이 문제를 해결하는 방법에는 두 가지가 있습니다.
domain.xml http-listener 속성인 blocking-enabled="true"를 구성하여 Grizzly 차단 모드를 사용하거나 다음 http-listener 등록 정보를 추가합니다.
<property name="blocking" value="true"/> |
Windows Vista 또는 Windows XP를 사용합니다.