본문 바로가기

Server

[Server] 다중서버에서 동일한 구성정보 사용하는 방법! - Domain 모드 | configuration.properties파일

Domain모드

우리가 개발을 할 때에는 보통 두 개의 서버를 사용한다. 현재 내가 진행중인 프로젝트는 Tomcat과 Wildfly 두 가지를 사용하고 있다. 두 개의 서버에 각각 설정을 해줄 수 있지만, 관리에 용이하게 하기 위해 한 파일으로 동일한 설정을 하는 경우가 많다. 그것을 바로 Domain모드라고 한다. Domain 모드는 다음에 다뤄보기로 하고 일단 동일한 설정으로 여러 서버를 관리한다고만 알아두자!

Eclipse내부 - 두 개의 서버를 사용하는 프로젝트.
Tomcat과 Wildfly
Eclipse내부 - 두 개의 서버를 사용하는 프로젝트

 

 

configuration.properties 파일

Wildfly 폴더구조 안의 Domain디렉터리 안에 configuration.properties파일을 만들어 프로젝트 파일 안에 넣지 않고 따로 파일로 관리한 후 Tomcat과 Wildfly가 둘 다 참조할 수 있게 할 수 있다. 이 파일에서는 프로젝트에서 사용하는 파일 업로드 경로, 로그인 셋팅 등 공동으로 사용할 것을 작성하면 된다.

cofiguration.properties 파일 예시 - 파일 업로드 경로 설정
cofiguration.properties 파일 예시 - 파일 업로드 경로 설정

 

위에서 설정한 값은 프로젝트 내부에서 아래와 같이 사용 가능하다

@Value("#{config['설정한 값 이름']}")

프로젝트 내부에서 사용 예시
프로젝트 내부에서 사용 예시

 

 

Tomcat 환경설정 - Dspring

Tomcat의 경우에는 eclipse에서 Servers에서 tomcat 더블클릭하면 서버 설정을 할 수 있는데 Open launch configuration 클릭후 arguments에서 VM arguments 아래에서 설정하면 참조가 가능하다.

Tomcat설정 - Open launch configuration 클릭
Tomcat설정 - Open launch configuration 클릭

 

VM arguments에서 Dspring .configurationFile = 'configuration.properties경로'   와 같이 작성해주면 된다.

Tomcat설정 - Dspring .configurationFile = 'configuration.properties경로'
Tomcat설정 - Dspring .configurationFile =  'configuration.properties경로'

 

끝!