TOOL/SERVER 2016. 5. 18. 11:23

///// Tomcat (톰캣)


한 서버에 톰캣을 하나만 돌릴 수 있을까?


톰캣은 기본으로 8080포트로 설정이 되어있는데, 톰캣을 두개를 돌리면 8080포트를 이미 쓰고 있으므로 두번째 가동한 톰캣에서는 다음과 같은 에러가 난다.

java.net.BindException: Address already in use: JVM_Bind


두 개 이상의 톰캣을 가동하려면 conf/server.xml의 설정을 바꿔야 한다.





///// 톰캣을 8090포트로 가동하기



1. 톰캣이 가동 되어있다면 우선 가동 중지

$ bin/shutdown.sh

- 프로세스를 확인해서 아직 남아있을 수 있는 프로세스를 처리해주면 더욱 좋다.

$ ps -ef |grep java

$ kill -9 {PID}


2. 새로 설치한 두 번째 톰캣의 conf/server.xml의 다음에 해당하는 요소들을 확인한다.

1) <Server port="8005" shutdown="SHUTDOWN">

2) <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

3) <Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />


3. 다음 과 같이 변경 한다. (Port 변경)

1) <Server port="12005" shutdown="SHUTDOWN">

2) <Cnnector port="12009" protocol="AJP/1.3" redirectPort="8443" />

3) <Connector port="8090" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />


4. 톰캣을 가동한다.

bin/startup.sh


///// 참고

톰캣 두개 올리는 경우: http://blog.naver.com/hdyu12/10001408102

톰캣 두개로 서비스 하기: http://blog.naver.com/38317hoya/30026269139