2016.12.21 09:18

IntelliJ 메이븐 deploy with source

Run à Edit Configurations à Add New Configurations à Maven

이름 입력 à Working Directory 지정 (모듈) à Command Line 입력 (clean source:jar deploy)

Trackback 0 Comment 0
2016.12.20 17:32

IntelliJ의 Search Everywhere에서 class 파일 제외시키기

Search Everywhere에서 파일을 검색하면 class 파일까지 같이 검색되어 불편함

 

해결 방법

Project Structure (Ctrl + Alt + Shift + S) - Module에서 target을 exclude

Trackback 0 Comment 0
2016.11.17 15:42

마우스 오버 시 JavaDoc 보기

File -> Settings ->Editor -> General의 Show quick documentation on mouse move에 체크

 

 

[출처] How to see JavaDoc in IntelliJ IDEA?

Trackback 0 Comment 0
2016.08.26 11:48

Spring boot 로 jar 파일 만들기

STS와 Maven을 쓰고 있다면

Run as > Maven build...

Goals를 package로 입력

Build를 성공했다면 target 디렉토리에 jar 파일이 생성됨


[출처] Spring boot 로 jar 파일 만들기

Trackback 0 Comment 0
2016.07.05 17:23

톰캣 Parallel Depployment

다른 서비스와 연동중인 서버에 새로운 버전을 배포할 때마다 서버를 내리기 부담스러워  hot deploy를 할 수 있는 방법을 고민하다가 Parallel Deployment를 알게되었다.


tomcat parallel deployment는 tomcat7부터 지원한다.


자세한 내용은 여기에서 확인



우선 parallel deploy 기능을 사용하기 위해서는 server.xml에 unpackWARs="ture" autoDeploy="true"로 설정이 되어 있어야 한다. (7부터는 자동으로 설정이 되어 있는 듯)


1. 기존 서비스(test.war)가 운영중인 상태

2. webapps에 test##2.war를 배포

3. test##2.war 파일의 압축이 풀리면서 test##2라는 디렉토리 생성

4. 해당 서비스로 접속을 해보면 test##2로 연결이 된다.


tomcat manager를 통해 확인해보면 서비스가 2개 구동중인 것을 확인할 수 있다.


위와 같이 동작하는 이유는 ##에 있다.

##은 context version을 의미하며, 숫자가 높을수록 최신이 된다.

버전을 붙이지 않으면 None specified로 보여진다.


연결이 되는 순서는 다음과 같은데


1. 새로운 요청은 가장 최신의 버전으로 연결. 따라서 새로운 서비스에 새로운 세션

2. 요청에 세션정보가 있으면 세션 메니저가 버전을 확인하고, 기존 세션은 기존의 서비스로 연결

3. 요청에 세션정보가 있으나 기존 서비스가 존재하지 않으면 최신 버전으로 연결


추가

1. @Scheduled 스케쥴러는 동시에 동작

2. 웹 페이지 세션은 유지되지 않음


[참조] Tomcat Parallel deployment

         톰캣 #05+a 배치 Parallel Deployment

         Parallel Deployment with Apache Tomcat 7

Trackback 0 Comment 0