본문 바로가기
lesson/JVM

-Xms -Xmx -Xss

by Peter Choi 2024. 6. 17.
반응형

JVM (Java Virtual Machine)에서 -Xms와 -Xmx는 힙 메모리 설정과 관련된 중요한 옵션입니다. 이 옵션들은 JVM이 애플리케이션을 실행할 때 사용할 수 있는 메모리의 최소값과 최대값을 지정합니다.

-Xms

  • 설명: JVM이 시작될 때 할당할 힙 메모리의 초기 크기를 설정합니다.
  • 용도: 애플리케이션 시작 시 필요한 메모리를 충분히 확보하여 초기 성능을 개선하고, 메모리 할당으로 인한 성능 저하를 줄입니다.
  • 예시: -Xms512m는 JVM 시작 시 512MB의 힙 메모리를 할당하겠다는 의미입니다.

-Xmx

  • 설명: JVM이 사용할 수 있는 힙 메모리의 최대 크기를 설정합니다.
  • 용도: 애플리케이션이 사용할 수 있는 최대 메모리를 제한하여 OutOfMemoryError를 방지하고, 시스템 리소스를 적절히 관리합니다.
  • 예시: -Xmx1024m는 JVM이 사용할 수 있는 힙 메모리의 최대 크기를 1024MB로 제한하겠다는 의미입니다.

-Xss

  • 설명: 각 JVM 스레드의 스택 크기를 설정합니다. 이 스택은 메서드 호출, 로컬 변수 및 각종 JVM 운영 데이터(예: 스레드 상태, 동기화 등)를 저장하는 데 사용됩니다.
  • 용도: 재귀 호출이 많은 애플리케이션에서 스택 오버플로우를 방지하기 위해 스택 크기를 조정할 때 사용됩니다. 또한, 너무 큰 스택 크기를 설정하면 시스템 메모리를 낭비할 수 있습니다.
  • 예시: -Xss512k는 각 JVM 스레드의 스택 크기를 512KB로 설정하겠다는 의미입니다.
반응형

'lesson > JVM' 카테고리의 다른 글

jvm 바이트코드의 opcode 4가지  (0) 2024.06.17

댓글