2013-11-03 5 views
1

저는 vaadin 6 마녀에 callendar가 들어있는 간단한 응용 프로그램을 만들었습니다. 사람들은 거기에서 약속을 몇 개 만들 수 있습니다.Tomcat7은 메모리 누수를 감지합니다.

문제는 10 명 이상이 연결될 때 메모리 사용량이 95 %라는 것입니다. (서버에 125MB의 메모리를 가지고 있고 32 비트의 우분투 서버를 사용하고 있습니다). 여기

는 스크린 샷입니다 : enter image description here

메모리 누수 fomr 내가 얻는 경우에 나는 바람둥이 테스트를 입력하면 :

다음 웹 응용 프로그램은 (재로드, 배포 취소) 중단, 그러나 그들의 클래스에서했다
/MyApp를
/MyApp를
/MyApp를: 이전의 실행은 여전히 ​​따라서 메모리 누출 (확인하기 위해 프로파일 러를 사용)를 일으키는 원인이 메모리에로드 내가 Tomcat을 설치했을 때 난 그냥 내가 또한 내가 어떤 사용자가 내가 연결할 수 추가, 포트 80에 연결할 수있는 새로 설치했고, 포트를 변경
/MyApp를

/myapp와 웹 관리자에게. 그게 전부예요

내 코드에 뭔가가있을 수 있습니까? 아니면이 메모리 누수의 원인이되는 바람둥이를 올바르게 설정하지 않았습니까?

+0

125MB RAM? 응용 프로그램 서버의 경우? – chrylis

답변

5

정적 변수 때문에 가져 오는 것. 서버 또는 응용 프로그램을 다시 시작하면 정적 변수가 언로드되지 않습니다. 이 링크는 다음에 대해 이해하는 데 도움이됩니다. http://frankkieviet.blogspot.ca/2006/10/classloader-leaks-dreaded-permgen-space.html

+0

내 응용 프로그램에서 개인 정적 최종 개체를 사용하고 있습니다. 무엇을 거기에서 읽었는지, 이것은 어떤 경우 문제입니다. 앱을 종료 한 후 메모리를 확보하는 방법을 모르겠습니다. 이 문제를 해결해 줄 수 있습니까? – Mihai

+1

위 링크에서 수정 사항을 얻을 수 있습니다. 서버에서 앱을 다시 시작하거나 앱을 다시 배포하지 않도록하십시오. –

관련 문제