|
News,
Internal,
Projects,
Home Software, Support, Documentation |
> 안녕하세요. > freebsd 4.1에 apache와 tomcat를 사용하고 있습니다. > 어제 갑자기 tomcat서버가 죽어버려서 로그파일을 조사하고 있는중인데요. > > /var/log/messages 에 다음과 같은 로그가 남아있네요. > > Jul 5 15:33:19 default /kernel: swap_pager_getswapspace: failed > Jul 21 17:30:52 default /kernel: pid 136 (java), uid 0, was killed: out of swap space > > tomcat를 기동시킬때 최대사용메모리를 특별히 설정해주지 않았기 때문에 > 사용하는 메모리가 점점 늘어나서 os에 swap space를 요구했는데 > swap space가 없기 때문에 freebsd가 자바(tomcat)를 kill 시켜버린거 같습니다. > 위의 로그로 이렇게 해석을 해도 맞는가 모르겠습니다. 맞습니다. > 실제 어플리가 들어있는 머신은 하드디스크가 없습니다. > os부터 apache, tomcat전부 플래쉬메모리에 들어있어서 스왓핑을 하지 않는다고 합니다. > 그런데 여기서 한가지 궁금한점이 있습니다. > 조금 원초적이 질문입니다만 freebsd가 swap space를 사용하기 시작하는 시점은 언제부터입니까? > 제 단순한 생각으로는 물리메모리영역이 더 이상없을때 부터swap space를 사용하기 > 시작할것 같은데요. 메모리가 남아있는경우에도 swap space가 사용되는 경우가 있습니까? > > 많은 가르침 부탁드립니다. RAM에 올라가야 하는 메모리는 당장 억세스 대상이 되는 부분들입니다. FreeBSD는 성능을 위해서 당장 억세스에 필요가 없어도 메모리에 남겨 두는 부분이 적습니다만(FreeBSD FAQ 16.1), 급속하게 메모리 요구(malloc)을 하게 된다면 물리 메모리를 다 쓰고 나서 swap을 쓰기 시작하겠죠. 일단은 java에서 메모리 사용이 비정상적인지 확인하는 것이 중요하고, swap을 사용하지 못하도록 아예 NO_SWAPPING 옵션을 커널에 주고 다시 빌드하거나, sysctl vm.swap_enabled = 0 으로 하는 편이 좋겠습니다. -- CHOI Junho <http://www.kr.FreeBSD.org/~cjh> cjh@[kr.]FreeBSD.org Key fingerprint = 1369 7374 A45F F41A F3C0 07E3 4A01 C020 E602 60F5 _______________________________________________ 한국 FreeBSD 사용자 그룹(KFUG) questions 메일링 리스트 questions at kr.FreeBSD.org http://www.kr.FreeBSD.org/mailman/listinfo/questions
|
Copyright © 1998-2005 Korea FreeBSD Users Group. All rights reserved. webmaster at kr.FreeBSD.org $Date: 2005/07/29 19:19:39 $ |
|