2019년 10월 16일 수요일

WEBTOB/tomcat compression 옵션 사용 - gzip 압축 전송

=========================================================
compression 적용
=========================================================

*SERVER 절
HTML  svgname = htmlg....
TEST   svgname = htmlg, MinProc=2,
         compression ="application/javascript"

*EXT
js              MimeType = "application/x-javascript", SvrType = HTML



TEST 도메인에 ( jeus 서버가 되시겠다 )  js 파일이 올라가 있는경우에는 작동하지만
EXT의 js 파일을 보면 SvrType = HTML 임

*Server 절의 HTML에서 해당 파일을 읽고 내려보내줌.

현재의 내용대로라면 compression 옵션은 무용지물

따라서 HTML 에서 compression 옵션을 추가해야함.

*SERVER 절
HTML  svgname = htmlg....
         compression ="application/javascript"
TEST   svgname = htmlg, MinProc=2,
         compression ="application/javascript"


=========================================================
특정 도메인에만 compression 적용
=========================================================

Webtob에서 운영하는 도메인이 여러개인경우 특정 도메인에만 적용시킬려면

*SERVER GROUP절에 test에 관련된 group 추가
HTMLTEST NODENAME = "web1", SVRTYPE=HTML, vhostname="test, test_ssl"


*SERVER 절 아래 항목 추가
HTMLTEST svgname = HTMLTEST, MinProc=2, vhost="test, test_ssl",
         compression ="application/javascript"


tomcat 7 이상 - SERVER.xml




2019년 10월 9일 수요일

웹 어플리케이션 로딩시 특정 클래스 먼저 로딩/실행하기. ( WEB.xml)

웹서버를 띄울때 특정 클래스를 실행 후 서비스를 하고 싶을경우.

예 )  서버 구동시 SQL 실행하여 특정 작업을 할때
       버전 체크 등의 작업

샘플

web.xml

1
2
3
4
5
    <servlet>
        <servlet-name>CrunchifyTutorials</servlet-name>
        <servlet-class>org.tmt.core.test.CrunchifyServletExample</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
cs
java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.Logger;
public class CrunchifyServletExample extends HttpServlet{
    /** Logger */
    final static Logger log = Logger.getLogger(CrunchifyServletExample.class);
    
    
    public void init() throws ServletException
    {
          System.out.println("----------");
          System.out.println("---------- CrunchifyServletExample Initialized successfully ----------");
          System.out.println("----------");
    }
    
    
}


cs

톰캣서버 실행시 
<load-on-startup>1</load-on-startup>


옵션에 의해 서버가 구동될때 CrunchifyServletExample 를 우선 실행하고 서버가 올라온다.



참고
https://crunchify.com/how-to-run-java-program-automatically-on-tomcat-startup/