> php教程 > PHP开发 > 본문

Tomcat 성능 튜닝 및 성능 모니터링(visualvm)

高洛峰
풀어 주다: 2016-11-22 13:24:27
원래의
1622명이 탐색했습니다.

tomcat 서버 최적화

1. JDK 메모리 최적화

Tomcat 성능을 최적화하려면 서버의 물리적 콘텐츠에 따라 관련 매개변수를 구성하세요. 애플리케이션에 필요한 메모리가 최대 힙 값을 초과하면 가상 머신에서 메모리 오버플로 메시지가 표시되고 애플리케이션 서비스가 중단됩니다. 따라서 일반적으로 최대 힙 크기를 사용 가능한 최대 메모리의 80%로 설정하는 것이 좋습니다. Tomcat이 기본적으로 사용할 수 있는 메모리는 128MB입니다. 대규모 애플리케이션 프로젝트에서는 이 메모리가 충분하지 않으므로 늘려야 합니다.

Windows에서 Tomcat이 기본적으로 사용할 수 있는 메모리는 128MB입니다. bin /catalina.bat, Unix에서는 /bin/catalina.sh 파일 앞에 다음 설정을 추가합니다. JAVA_OPTS='-Xms [초기 메모리 크기] -Xmx [사용 가능한 최대 메모리] -XX:PermSize= 64M -XX :MaxPermSize=128m' 여러 매개변수 값을 늘려야 합니다. 예: JAVA_OPTS='-Xms256m -Xmx512m'은 초기 메모리가 256MB이고 사용할 수 있는 최대 메모리가 512MB임을 의미합니다.

매개변수에 대한 자세한 설명

-server 启用jdk 的 server 版; -Xms java虚拟机初始化时的最小内存; -Xmx java虚拟机可使用的最大内存; -XX:PermSize 内存永久保留区域 -XX:MaxPermSize 内存最大永久保留区域 -Xmn    jvm最小内存
로그인 후 복사

32G 메모리 구성 예:

JAVA_OPTS="$JAVA_OPTS  -Xms10g -Xmx10g -XX:PermSize=1g -XX:MaxPermSize=2g -Xshare:off -Xmn1024m
로그인 후 복사

2. Tomcat 구성 파일 서버의 Tomcat 스레드 최적화

. xml 구성에서 연결 수와 관련된 매개변수는 다음과 같습니다.

maxThreads: Tomcat은 스레드를 사용하여 수신된 각 요청을 처리합니다. 이 값은 Tomcat이 생성할 수 있는 최대 스레드 수를 나타냅니다. 기본값은 150입니다.

acceptCount: 요청 처리에 사용 가능한 모든 스레드가 사용될 때 처리 대기열에 배치될 수 있는 요청 수를 지정합니다. 이 수를 초과하는 요청은 처리되지 않습니다. 기본값은 10입니다.

minSpareThreads: Tomcat이 초기화될 때 생성되는 스레드 수입니다. 기본값은 25입니다.

maxSpareThreads: 생성된 스레드 수가 이 값을 초과하면 Tomcat은 더 이상 필요하지 않은 소켓 스레드를 닫습니다. 기본값은 75입니다.

enableLookups: 도메인 이름을 역검사할지 여부입니다. 기본값은 true입니다. 처리 능력을 향상시키려면 false

connectionTimeout: 네트워크 연결 시간 제한, 기본값 60000, 단위: 밀리초로 설정해야 합니다. 0으로 설정하면 시간 초과가 발생하지 않으며 이는 위험한 설정입니다. 일반적으로 30000밀리초로 설정할 수 있습니다.

maxKeepAliveRequests: 유지 요청 수, 기본값은 100입니다. bufferSize: 입력 스트림 버퍼 크기, 기본값은 2048바이트입니다.

압축: 압축 전송, 값 켜기/끄기/강제, 기본값 끄기. 최대 연결 수와 관련된 매개 변수는 maxThreads 및 acceptCount입니다. 동시 연결 수를 늘리려면 이 두 매개변수를 동시에 늘려야 합니다.

32G 메모리 구성 예:

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" maxThreads="1000" minSpareThreads="60" maxSpareThreads="600" acceptCount="120" redirectPort="8443" URIEncoding="utf-8"/>
로그인 후 복사

visualvm 성능 모니터링 사용

1. VisualVM이란

FastDFS는 jdk와 함께 제공되는 모니터링 도구입니다. 도구. Java Virtual Machine에서 실행되는 Java 기술 기반 프로그램의 세부 정보를 볼 수 있는 시각적 인터페이스를 제공합니다. VisualVM은 JDK(Java Development Kit) 도구로 검색된 JVM 소프트웨어 관련 데이터를 구성하고 여러 Java 애플리케이션에 대한 데이터를 빠르게 볼 수 있는 방식으로 해당 정보를 제공합니다. 로컬 애플리케이션과 원격 호스트에서 실행 중인 애플리케이션의 관련 데이터를 볼 수 있습니다

2. 설치 방법

jkd bin 디렉토리에 jvisualvm.exe 파일이 있으며 다음과 같이 사용할 수 있습니다. 더블클릭

3. jvisualvm 사용 방법

1. Tomcat 관리를 위한 JMX 구성:

set JAVA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.authenticate=false -    Dcom.sun.management.jmxremote.ssl=false
로그인 후 복사

2. Tomcat을 다시 시작합니다. . jvisualvm.exe를 두 번 클릭하여 서버 IP 주소를 추가하고 모니터링해야 하는 jmx 포트를 추가하기만 하면 됩니다.

효과는 다음과 같습니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿