11g 이하버전에서 14c로 업그레이드를 할 경우 기동속도가 느려지는 현상이 발생 할 수 있다.
대개는 버전 업그레이드 되면서 웹로직 기동 및 애플리케이션 배포 시 검사하는것들이 늘어나 기동시간이 늘어날 수도 있는데, 눈에 띄게 기동시간이 증가할 경우가 있다.
이번 사례는 버전업그레이드 이후 기동시간이 기존 ASIS WebLogic 11g 에 비해 새로운 TOBE WeBLogic 14c의 기동시간이 1분 이상 (기존보다) 더 걸리는 현상이 발생하였다.
다방면으로 내용을 확인 한 결과 CDI 의 BeanScanning 때문이라는것을 확인하였다.
(기동 시 Thread Dump 를 비교하였음)
CDI 1.1 버전 (Java EE 7) 부터 Bean Scanning 기능이 들어왔고, jar 가 많은 경우 deploy 시간이 많이 늘어나게 되었다.
이번 사례역시 많은 수의 Jar 가 들어가있는 App이였기 때문에 기동 시간이 많이 늘어나게 되었다.
Java EE 7 이상을 지원하는 WLS 12.2.1 이상부터 이런 현상이 발생 할 수 있다.
해결방법
<cdi-container> <implicit-bean-discovery-enabled>false</implicit-bean-discobery-enabled> </cdi-container> <cdi-container> <policy>Disabled</policy> </cdi-container>
config.xml 에서 <domain> </domain> 사이에 추가하면 된다.