Spring Bean (Class) 의 갯수가 많아지면, 성능 및 운용성이 저하된다(?)
- 작성자 :
- 김*관
- 작성일 :
- 2014-02-25 21:32:49
- 조회수 :
- 872
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요. 현재 전자정부 프레임워크로 프로젝트를 수행하고 있습니다.
저희 사이트는 현재 개발 초기인데, 최근 비슷한 규모의 타 사이트에서 전자정부표준프레임워크로 개발한 사이트에 장애가 생겼었는데,
그 원인이 Spring Bean(class)의 갯수가 많아서 생긴 문제이더라는 것이고,
Spring Bean의 갯수가 3000개, iBatis Sqlmap 파일의 갯수가 1000개 이상되면, 어플리케이션의 성능이 심각하게 저하되어 문제가
있으니, 우리 사이트도 Spring Bean의 갯수를 제한해야 한다는 얘기를 듣게 되었습니다.
짧지만, 제 견해로는 class와 Sqlmap파일의 갯수가 많으면 Spring Framework Application의 운용성에 문제가 있더라는 얘기가
쉽게 납득이 가지 않습니다. 클래스가 많아져서 운용(혹은 WAS 기동)이 문제가 됐다면, Heap의 Permanent 영역에 대한 적정한 설정을 하면, 기동 및 운영에는 문제가 생기지 않을것으로 생각됩니다.
현재 표준프레임워크를 운용하시면서, 위와 같이 class 및 sql(.xml)파일의 갯수가 많아서 문제가 생길수 있다는 이슈를 접하신적이 있는지, 또 해당 부분에 대한 지침 이나 가이드가 있는지 문의 드립니다.
저희 사이트는 현재 개발 초기인데, 최근 비슷한 규모의 타 사이트에서 전자정부표준프레임워크로 개발한 사이트에 장애가 생겼었는데,
그 원인이 Spring Bean(class)의 갯수가 많아서 생긴 문제이더라는 것이고,
Spring Bean의 갯수가 3000개, iBatis Sqlmap 파일의 갯수가 1000개 이상되면, 어플리케이션의 성능이 심각하게 저하되어 문제가
있으니, 우리 사이트도 Spring Bean의 갯수를 제한해야 한다는 얘기를 듣게 되었습니다.
짧지만, 제 견해로는 class와 Sqlmap파일의 갯수가 많으면 Spring Framework Application의 운용성에 문제가 있더라는 얘기가
쉽게 납득이 가지 않습니다. 클래스가 많아져서 운용(혹은 WAS 기동)이 문제가 됐다면, Heap의 Permanent 영역에 대한 적정한 설정을 하면, 기동 및 운영에는 문제가 생기지 않을것으로 생각됩니다.
현재 표준프레임워크를 운용하시면서, 위와 같이 class 및 sql(.xml)파일의 갯수가 많아서 문제가 생길수 있다는 이슈를 접하신적이 있는지, 또 해당 부분에 대한 지침 이나 가이드가 있는지 문의 드립니다.
A
안녕하세요. 표준프레임워크센터입니다.
Bean의 갯수가 많거나 sql map의 갯수가 많을 경우 기동 시 느려진다는 문제는 인식하고 있으며
이럴 때에는
Bean 생성 시, lazy-init으로 동작하게끔 설정하거나,
설계 단계에서 클래스를 조정하여 Bean갯수를 줄이는 방법을 가이드하고 있습니다.
다만, 구체적인 Bean의 갯수라던지 상세한 가이드는 제공하지 않고 있습니다.
감사합니다.
Bean의 갯수가 많거나 sql map의 갯수가 많을 경우 기동 시 느려진다는 문제는 인식하고 있으며
이럴 때에는
Bean 생성 시, lazy-init으로 동작하게끔 설정하거나,
설계 단계에서 클래스를 조정하여 Bean갯수를 줄이는 방법을 가이드하고 있습니다.
다만, 구체적인 Bean의 갯수라던지 상세한 가이드는 제공하지 않고 있습니다.
감사합니다.