WAS/WebLogic

[Tips] 웹서버 플러그인 주요 파라미터

투칼론 2016. 11. 26. 07:34
반응형

WebLogic에서 제공하는 플러그인 대상 웹서버는 아파치, IIS, iPlanet, OHS를 지원한다. 플러그인 모듈은 1.0, 11g(1.1), 12c(12.1.2) 버전이 있다. 1.0 버전은 웹로직에 기본 포함된 모듈로 10.3.6까지 제공되며, 8.1 버전은 $WL_HOME/server/lib, 9.0이상 버전은 $WL_HOME/server/lib/plugin에 각 플랫폼별로 디렉터리에 존재한다.

 

11g와 12c는 오라클 홈페이지 다운로드 사이트에서 플러그인을 별도로 다운로드하여야 한다.

 

 

WebLogic Server 플러그인 관련 주요 설정 파라미터는 아래와 같다. 

 

 파라미터

 디폴트값

 설명

 WebLogicHost

 none  WebLogic Server 호스트 또는 가상호스트. 단일 인스턴스에서 사용됨. WebLogicClusters도 설정되어 있으면, WebLogicClusters가 우선시됨
 WebLogicPort  none  WebLogicHost의 서버 인스턴스가 리스닝하고 있는 포트. 단일 인스턴스에서 사용됨. WebLogicClusters가 설정되어 있으면, WebLogicClusters가 우선시 됨

 WebLogicCluster 

 none  클러스터 또는 non클러스터된 WebLogic 인스턴스 목록 지정함. 주의사항은 Cluster와 non-Cluster 서버 목록이 혼재되어 있으면, Cluster된 서버들만 사용함

 ConnectRetrySecs

 2

 웹로직 서버 호스트에 연결을 시도하는 사이의 sleep 시간. 이 값은 아래 ConnectTimeoutSecs 보다 작아야 함

 ConnectTimeoutSecs

 10

 웹로직 서버 호스트에 연결을 시도하는 최대값. 위의 ConnectRetrySecs 파라미터와 기준으로 몇번 시도 후에 연결 실패하면 HTTP 503 오류를 클라이언트에 리턴함. 

ConnectTimeoutSecs / ConnectRetrySecs 나눈값이 기준이 됨.

 ErrorPage 파라미터를 통해 해당 오류에 대한 커스터마이징 페이지를 설정할 수 있고, ErrorPage를 설정하면 재시도하는 대신에 해당 오류 페이지를 리턴함.

 WLCookieName

JSESSIONID 

 웹로직 서버 세션 쿠키명. weblogic.xml에서 <session-descriptor> 변경하면, 이 값도 동일하게 변경해주어야 함.

 참고로, 8.1 때 사용한 CookieName은 더이상 사용안함

 Debug

 

 (12.x에서 사용안함)

 OFF 

 디버깅 여부. ON/OFF/HFC/HTW/HFW/HTC/ERR/ALL 설정 가능.

  * HFC - 클라이언트로부터 받은 헤더 내용 출력

  * HTW - WebLogic Server로 보낸 헤더 내용 출력

  * HFW - WebLogic Server로 부터 받은 헤더 내용 출력

  * HTC - 클라이언트로 보낸 헤더 내용 출력 

 

 참로고, 12.x 버전에서부터 플러그인 옵션으로 사용안하고, Apache Debug옵션으로 통합됨

 DynamicServerList

 ON 

 이 파라미터가 OFF이면,  부하분산을 위한 동적 서버 목록 대신에 구성파일에 설정되어 있는 WebLogicClusters 설정되어있는 정적 서버 목록으로 사용함. 

 Idempotent

 ON

 ON으로 설정되어 있으면, WLIOTimeoutSecs 시간안에 응답이 오지 않으면, 클라이언트로 오류 응답을 주는 대신에 다음 서버로 자동으로 요청함

 KeepAliveEnabled

 true 또는 ON 

 기존 TCP 세션 재활용 여부. Apache 플러그인은 ON/OFF, IIS와 NSAPI 플러그인은 true/false 임 

 KeepAliveSecs

 20 

 플러그인과 WebLogic Server 간의 inactive 시간이 지나면 닫는 기준 시간 

 MaxPostSize

 -1 

 허용하는 POST 데이터 최대 크기. -1이면 무제한. 이 파라미터는 DDoS와 같은 외부 공격에 대해 방어할 때 지정할 수 있음 

 WLIOTimeoutSecs

(HungServerRecoverSecs)

 300 

 WebLogic Server에 요청 후 기다리는 시간. 이 시간동안 응답이 없으면, 해당 서버가 dead상태로 인지함. 이 값은 WebLogic에서 처리하는 서블릿 수행 시간 보다 더크게 값을 주어야 함.

 JTA Timeout 보다 크게 설정해야 함.

ErrorPage 파라미터를 통해 해당 오류에 대한 커스터마이징 페이지를 설정할 수 있고, ErrorPage를 설정하면 재시도하는 대신에 해당 오류 페이지를 리턴함.

 10초 ~ Unlimited까지 값을 줄 수 있음

 WLTempDir

 /tmp 또는

c:\temp

 wlpoxy.log라는 플러그인 관련 로그 파일 경로. 또한 POST 데이터를 위해 _wl_proxy 디렉터리가 생성됨. FileCaching이 ON으로 설정되어 있는 경우 생성됨 

 FileCaching

 ON

 ON이 설정되어 있으면,  2048 크기 초과 POST 데이터는 임시 파일에 먼저 캐쉬한 후, 나중에 8192 chunk 크기로 WebLogic Server로 전송함.  WebLogic Server primary server가 다운되면, Secondary Server로 보내짐. OFF면 임시 파일을 사용하지 않고, 즉시 8192 chunk 크기로 WebLogic Server 로 보냄.

 참고로, 2048 크기 이하의 데이터는 FIleChache를 하지 않음

 ErrorPage

 none 

 연동된 서버에 응답이 없거나 503 에러가 발생하는 경우 표시할 에러 페이지를 저장함 
 WLExcludePathOrMimeType  none 

 WebLogic 쪽으로 프록시를 하지 않을때 사용

 WLSRequest  OFF

SetHandler weblogic-handler 대신에 사용
html, js 등 모든 요청을 WAS에서 처리하도록 요청을 보낼때 유용하게 사용

 

 

 

참고로, 플러그인 설정 예제는 아래와 같다.

 

<IfModule mod_weblogic.c>

      WebLogicCluster  johndoe02:8005,johndoe:8006

      Debug ON

      WLTempDir "c:/myTemp"

      KeepAliveEnabled ON

      KeepAliveSecs 15

</IfModule>

 

<Location /url>

     SetHandler weblogic-handler

</Location>

 

<Location /url2>

    WLSRequest  ON

</Location>