Options

Tomcat μ‹œμž‘ μ˜΅μ…˜λ“€μ΄ μžˆλŠ”λ° 이에 λŒ€ν•œ λ‚΄μš©μ΄λ‹€.

startup.sh

μ΅œμ’…μ μœΌλ‘œλŠ” catalina.sh 슀크립트λ₯Ό ν˜ΈμΆœν•˜μ§€λ§Œ μ‹œμž‘μ‹œ μ‚¬μš©κ°€λŠ₯ν•œ μ‰˜ ν™˜κ²½λ³€μˆ˜λ“€μ΄ λ‚˜μ˜¨λ‹€.

catalina.sh

  • CATALINA_HOME

    • Catalina κ°€ λΉŒλ“œλœ 디렉토리
    • μ—¬κΈ°μ„œ λΉŒλ“œλœ λ””λ ‰ν† λ¦¬λŠ” μ„€μΉ˜ν•œ ν™ˆ 디렉토리λ₯Ό λ§ν•˜κΈ°λ„ ν•œλ‹€.
  • CATALINA_BASE

    • Catalina μ„€μΉ˜μ— 동적 μ˜μ—­μ„ ν•΄κ²°ν•˜κΈ° μœ„ν•œ κΈ°λ³Έ 디렉토리
    • Multi Instance μ„€μΉ˜ν•  λ•Œ 이 곡간이 μ‚¬μš©λœλ‹€.
    • λ³„λ„λ‘œ μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ CATALINA_HOME 이 μ‚¬μš©λœλ‹€.
  • CATALINA_OUT

    • stdout stderr λ₯Ό μ–΄λ””λ‘œ 보낼것인지에 λŒ€ν•œ 전체 경둜λ₯Ό 지정
    • 기본값은 $CATALINA_BASE/logs/catalina.out 이 λœλ‹€.
  • CATALINA_TMPDIR

    • JVM (Java Virtual Machine) 이 μ‚¬μš©ν•  μž„μ‹œλ””λ ‰ν† λ¦¬ (java.io.tmpdir) μœ„μΉ˜λ₯Ό μ§€μ •ν•œλ‹€.
    • 기본값은 $CATALINA_BASE/temp 이 λœλ‹€.
  • CATALINA_OPTS

    • start run debug λͺ…령이 싀행될 λ•Œ μ‚¬μš©λ˜λŠ” Java λŸ°νƒ€μž„ μ˜΅μ…˜μ΄λ‹€.
    • JAVA_OPTS 에 ν¬ν•¨λ˜λŠ” μ˜΅μ…˜μ΄ μ•„λ‹Œκ²ƒμ΄ 여기에 ν¬ν•¨λœλ‹€.
    • TOMCAT 자체적으둜만 μ‚¬μš©λ˜λŠ” λ‚΄λΆ€ μ˜΅μ…˜λ§Œ ν¬ν•¨λ˜λ©° 쀑지 ν”„λ‘œμ„ΈμŠ€ ν˜Ήμ€ 버전 λͺ…λ Ήλ“±μœΌλ‘œ μ‚¬μš©ν•΄μ„œλŠ” μ•ˆλœλ‹€.
## κΈ°λ™μ‹œμ—λ§Œ μ‚¬μš© ##
CATALINA_OPTS=" ${CATALINA_OPTS} -Xms2048m -Xmx2048m -XX:MaxPermSize=256m"
CATALINA_OPTS=" ${CATALINA_OPTS} -verbose:gc"
CATALINA_OPTS=" ${CATALINA_OPTS} -Xloggc:${CATALINA_BASE}/logs/gc_`date "+%Y%m%d%H"`.log"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+UseParallelGC"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+UseParallelOldGC"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+UseAdaptiveSizePolicy"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+PrintGCDetails"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+PrintGCTimeStamps"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+DisableExplicitGC"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:+HeapDumpOnOutOfMemoryError"
CATALINA_OPTS=" ${CATALINA_OPTS} -XX:HeapDumpPath=${CATALINA_BASE}/logs"
CATALINA_OPTS=" ${CATALINA_OPTS} -Djava.security.egd=file:/dev/./urandom"
  • JAVA_HOME

    • JDK κ°€ μ„€μΉ˜λœ μœ„μΉ˜
    • debug μΈμžμ™€ μ‹€ν–‰ν•  λ•Œ ν•„μš”ν•˜λ‹€.
  • JRE_HOME

    • JRE λ₯Ό μ„€μΉ˜ν•œ μœ„μΉ˜
    • 기본값은 JAVA_HOME 이며 별도 지정이 κ°€λŠ₯ν•˜λ‹€.
  • JAVA_OPTS

    • λͺ…령이 μ‹€ν–‰λ λ•Œ μ‚¬μš©λ˜λŠ” Java λŸ°νƒ€μž„ μ˜΅μ…˜
    • CATALINA_OPTS λͺ¨λ“  μ˜΅μ…˜μ΄ μ•„λ‹Œκ²ƒμ΄ 여기에 ν¬ν•¨λœλ‹€.
    • Tomcat 에 μ˜ν•΄μ„œλ§Œ μ‚¬μš©λ˜μ–΄μ§€λ©° 쀑지 ν”„λ‘œμ„ΈμŠ€ ν˜Ήμ€ 버전 λͺ…령에도 μ‚¬μš©λœλ‹€.
    • λŒ€λΆ€λΆ„μ˜ μ˜΅μ…˜λ“€μ€ CATALINA_OPTS 에 μžˆμ–΄μ•Ό ν•œλ‹€.
## μ‹œμž‘/쀑지에 λͺ¨λ‘ μ‚¬μš© ##
JAVA_OPTS=" ${JAVA_OPTS} -server"
JAVA_OPTS=" ${JAVA_OPTS} -DjvmRoute=${JVM_ROUTE}"
JAVA_OPTS=" ${JAVA_OPTS} -Dport.http=${HTTP_PORT}"
JAVA_OPTS=" ${JAVA_OPTS} -Dport.https=${HTTPS_PORT}"
JAVA_OPTS=" ${JAVA_OPTS} -Dport.ajp=${AJP_PORT}"
JAVA_OPTS=" ${JAVA_OPTS} -Dport.shutdown=${SHUTDOWN_PORT}"
  • CATALINA_PID

    • catalina μ‹œμž‘ Java ν”„λ‘œμ„ΈμŠ€μ˜ PID λ₯Ό 가지고 μžˆλŠ” 파일 경둜λ₯Ό μ˜λ―Έν•œλ‹€.
  • LOGGING_CONFIG

    • Tomcat λ‘œκΉ… μ„€μ • νŒŒμΌμ„ μž¬μ •μ˜ν•œλ‹€.
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/config/logging/properties"
  • LOGGING_MANAGER
    • Tomcat λ‘œκΉ… λ§€λ‹ˆμ € 섀정을 μž¬μ •μ˜ ν•œλ‹€.
LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager";