Springboot 내장 톰캣을 사용할때 session clustering에 대해서 글을 썼는데 역순으로 글을 쓰는것 같다. 이 글을 쓸때 이미 구성되어 있는 Tomcat server.xml 의 clustering 부분을 가져다가 썼는데 그것에 대해 기술을 해보려고 한다. web.xml - application 단에서 설정해준다. ... 생략 ... server.xml - tomcat 의 설정 ... 생략 ... ... 생략 ... ... 생략 ... ... 생략 ... Server > Service > Engine > Cluster 부분에 위와 같이 작성을 한다. membership, receiver 등에 들어가있는 address나 port 등을 변경하지 않는다. 변경해도 되지만 was1와 was2가 ..
상용 WAS 들이 생각나지 않을만큼 강력한 Tomcat에서 아쉬운점은 admin console 역할을 하는 GUI 가 없다는 것이다. 아니다. 사실은 있다. Tomcat Manager 라고 불리는데 기능은 상용 WAS 에서 제공하는 것만은 못하지만 그래도 간단한 사항들은 Web에서 확인을 할수가 있다. 기본적으로 보안 이슈때문에 사용을 할 수 없는데 설정 몇가지만 건드리면 간단하게 사용할 수 있다. /tomcat설치경로/conf/tomcat-users.xml 파일을 열어보자. 맨 아랫부분에 이렇게 주석으로 된 부분을 찾을수가 있다. 이부분을 다음과 같이 바꿔보자. 계정은 admin/admin 으로 설정을 했다. 만약 application이 별도의 Context Path를 가지고 있다면 위와 같이 설정하고..
org.apache.catalina.loader.WebappClassLoaderBase modified 가 나오면서 어플리케이션이 수정되지 않았는데도 무한으로 서버가 재기동되는 현상이 발생했다. 이 현상은 여러가지 원인이 있지만 내가 찾은 해결법은 바로 maven repository를 삭제하는 것이다. maven이 생각보다 똘똘하지 못해서 이런일들이 자주 일어나는것 같다. 이클립스를 종료하고 maven repository 경로로 들어가서 안에 있는 모든걸 삭제한다. 여기 안에 있는 모든 library 들을 과감하게 삭제하고 이클립스 재기동! 재기동을 하면 다시 local repository에 library를 생성하고 이 과정이 끝나고 나면 정상실행이 된다. 끝!
tomcat에서 jndi datasource 설정을 하는 방법은 전에 알아보았다. Tomcat JNDI Datasource 설정하여 Spring 연동하기 보통은 로컬 개발환경을 제외하고는 was에 datasource 설정을 하는 JNDI 방식을 많이 사용을 한다. JNDI는 datasource 설정을 was에서 하고 효율적인 connection pool 관리 등 여러가지 장점을 가지고 있어서 주 oingdaddy.tistory.com 위 글에서 간략하게 암호화 하는 과정에 대해서 알아보았는데 오늘은 이것을 구체적으로 알아보도록 하겠다. 암호화하는 역할을 하는 프로젝트를 jar로 추출한다고 했었는데 이 암호화하는 역할을 하는 DataSourceFactory를 가지고 있는 프로젝트는 다음을 참고했다. 세상엔..
보통은 로컬 개발환경을 제외하고는 was에 datasource 설정을 하는 JNDI 방식을 많이 사용을 한다. JNDI는 datasource 설정을 was에서 하고 효율적인 connection pool 관리 등 여러가지 장점을 가지고 있어서 주로 이 방식이 많이 사용이 된다. 나중에 JDBC 방식과 JNDI 방식이 어떻게 다르고 장단점은 무엇인지 자세히 알아보고 이번엔 실제 설정하는 방법과 어떻게 spring과 연동하여 사용하는지에 대해 알아보겠다. server.xml or context.xml (tomcat) ... 여러 was 마다 각각 jndi 설정하는 방법이 있지만 이번에는 tomcat을 예로 알아보도록 하겠다. tomcat의 설정 파일인 server.xml 이나 context.xml 파일에서 j..
프로젝트를 하다 보면 application을 /app/was/tomcat/instance1 이라는 곳에 deploy를 시켜놨는데 /app/NAS/images 라는 곳에서 이미지를 가져와야 하는 경우가 생길수가 있다. 실제 내 application이 deploy 된 곳에서는 이미지가 /app/was/tomcat/instance1 인스턴스 하위에 webapps/resources/images 라는 폴더 하위에 있으면 http://ip:port/resources/images/abc.jpg 라고 가져올수 있지만 /app/NAS/images 에서는 가지고 올 수 없다. 톰캣을 사용하고 있다면 이럴때 Context 를 추가하여 간단하게 해결할 수 있다. -> application deploy path 설정 -> im..