튜닝: 2개의 글
최적의 성능을 내기 위해서는 모든 자바 프로세스가 차지하고 있는 공간의 총합이 머신의 물리 메모리보다 작아야 한다. -Xms512m -Xmx2048m 실제로 어플리케이션이 처음 시작할 때는 512M를 사용하지만, 2048M를 시스템에 예약한다. 시스템에 예약할때 과도하게 할 경우? 성능상의 이슈는 되지 않음 -XX:MaxDirectMemorySize=N 네이티브 메모리 버퍼의 최대 크기를 지정한다 JNI를 이용해서 네이티브 메모리에 버퍼를 직접할당해서 사용할 수 있음 이러한 기능이 있는 이유는, 소켓 프로그래밍을 예로 들 수 있다. allocateDirect()를 이용해서 네이티브 메모리에 버퍼를 직접 할당하지 않고, 자바 버퍼를 사용할 경우 소켓을 이용해서 다른 머신과 통신할 경우 소켓은 자바 버퍼와 ..
톰캣은 오픈소스이다 보니 기본적으로 설정되어 있는 값들이 상당히 루즈하게 되어있다. 기본 설정값들을 그대로 사용하는것보다는 자신의 서버 환경에 맞게 어느정도 튜닝이 되어야 톰캣이 최적의 성능을 낼 수 있다. 오늘은 내가 사용하는 기본적인 톰캣 튜닝 몇가지 방법을 정리해 보았다. 톰캣 설정을 하기 위해선 $TOMCAT_HOME/conf/server.xml 에서 설정을 해주면 된다. 1. Listener 톰캣 시작시 root로 실행하는것을 방지하는 부분이다. 톰캣 단독으로 80포트 이용시에는 필요없을 부분이긴 하지만, 그렇지 않다면 해당 옵션을 켜주는게 좋다. root 실행은 퍼미션 문제든 여러 문제점을 야기하므로 특별한 경우가 아니면 root 실행은 하지 말자. * 구문은 주석으로 처리되어 있으니, 주석을..