반응형
실제 운영서버에 서버 리소스를 아끼기 위해
하나의 tomcat 서버에 포트를 다르게해서
애플리케이션을 2개 이상으로 띄울수가 있다.
이 방법은 톰켓 파일중 server.xml만 수정하면 간단히 기동가능 한데.
<!--?xml version="1.0" encoding="UTF-8"?-->
<server port="8005" shutdown="SHUTDOWN">
<listener classname="org.apache.catalina.startup.VersionLoggerListener"/>
<listener sslengine="on" classname="org.apache.catalina.core.AprLifecycleListener"/>
<listener classname="org.apache.catalina.core.JasperListener"/>
<listener classname="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<listener classname="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<listener classname="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<globalnamingresources>
<resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase">
</resource></globalnamingresources>
<service name="service1">
<connector connectiontimeout="20000" port="8080" protocol="HTTP/1.1" redirectport="8443"/>
<connector port="8009" protocol="AJP/1.3" redirectport="8443"/>
<engine defaulthost="localhost" name="service1">
<host appbase="서버 1 소스 경로 : (context를 지정하지않으면 ROOT 폴더가 있어야함)" autodeploy="true" name="localhost" unpackwars="true">
<context docbase="서버 1 프로젝트 디렉토리" path="" reloadable="true">
</context></host>
</engine></service>
<service name="service2">
<connector connectiontimeout="20000" port="18080" protocol="HTTP/1.1" redirectport="18443" />
<connector port="18009" protocol="AJP/1.3" redirectport="18443" />
<engine defaulthost="localhost" name="service2">
<host appbase="서버 2 소스 경로 : (context를 지정하지않으면 ROOT 폴더가 있어야함)" autodeploy="true" name="localhost" unpackwars="true">
<context docbase="서버 2 프로젝트 디렉토리" path="" reloadable="true">
</context></host>
</engine></service>
</server>
위처럼 수정해주면 간단히 설정가능하다.
주의할점을 실제 이클립스에서도 위처럼 설정하면 설정가능한데
다른 애플리케이션을 포트를 다르게 해서 위처럼 올린다면
Host appBase= 경로는 꼭 다른 경로여야 한다.
스캐닝중 하나의 context만 올라가서 이중으로 올긴 context가 무시되는 현상이 발생했다.
또한 service name과 engine name을 동일하게 해줘야 한다.
이부분만 주의한다면 서비스 2개 기동하는데 문제가 없을것 같다.
반응형
'Programming Bookmark > TOMCAT - WAS' 카테고리의 다른 글
HTTP 상태코드 코드별 상세 정리 TOMCAT Access_log 확인 시 구분 용이 (0) | 2019.06.24 |
---|---|
다중화된 톰켓 세션 공유 방법 정리 ( tomcat session clustering) (0) | 2019.03.08 |