WAS 126

[Tips] 세션ID(Session ID) 포맷

1. 개요 WebLogic Server의 클러스터링을 이해하기 위해서는 세션ID 정보를 담고있는 세션 쿠키 포맷에 대해 이해할 필요가 있다.세션 ID는 HttpServletRequest.getSessionID() 를 출력하거나, 세션 쿠키(기본값:JSESSIONID) 값을 출력하면 된다. 2. 포맷 기본 포맷은 아래와 같다. sessionid!primary_server_id!secondary_server_id * sessionid : 임의로 생성되는 HTTP 세션 ID 값이고, 기본적으로 크기는 52바이트임.* primary_server_id : 세션이 primary로 생성되는 JVM의 JVMID 값이고, 기본적으로 크기는 10자리임* secondary_server_id : 세션이 백업(secondary..

WAS/WebLogic 2017.10.16

[정보] WebLogic 클러스터링에서 Unicast와 Multicast

1. 개요 WebLogic 클러스터 환경에서 메시지 전달 방식에는 유니캐스트(Unicast) 방식과 멀티캐스트(Multicast)방식이 있다. 2. Unicast와 Multicast와 차이점 1) Unicast TCP/IP 프로토콜을 이용함WebLogic 9.x 버전에서 지원하기 시작하였고, 10.x 이후 버전의 디폴트 값임 메시지가 그룹 리더에 전달하면, 그룹 리더는 나머지 그룹 인스턴스에 메시지를 전달함 1회 heartbeat 메시지가 실패하면 해당 인스턴스는 장애로 인식해서 클러스터 멤버에서 삭제Custer Address에 설정한 IP 주소를 사용함. 2) Multicast UDP 프로토콜을 이용함네트워크에서 각 인스턴스에 직접 메시지 송수신함3회 연속 heartbeat 메시지가 실패하면 해당 인스..

WAS/WebLogic 2017.10.12

[Tips] 로그파일에서 점검해야할 문자열

WebLogic 로그에서 이상유무 점검 또는 관제에 등록이 필요한 주요 메시지는 아래와 같다. 점검해야할 로그 문자열 설명 "Too many open" 해당 프로세스가 열수 있는 파일 갯 수 초과함 (nofiles, nfiles 등 확인 필요) "OutOfMemory" Out of Memory(메모리 오류) 발생함 "Connection leak" DB 연결 풀 Connection 후, close() 하지 않는 로직 있음 "StuckThread" StuckThread 발생 (기본 600초 이상 서비스 수행) "Failed to listen" Listen 포트 또는 Channel 포트가 기존 사용 중이거나 포트를 열수 없을때 발생함 "maximum capacity" DB 연결 풀 최대 값이 도달함

WAS/WebLogic 2017.10.01

[Tips] 가상 디렉토리 매핑(Virtual Directory Mapping) 이해

기존 호출되는 URL과 컨텍스트와 실제 디렉터리 연관관계를 설정하여 이미지 또는 업로드/다운로드 디렉터리를 설정할 수 있다. 가상 디렉터리 매핑, virtual-directory-mapping 엘리먼트를 활용하면 된다. weblogic.xml에 아래와 같이 설정하면 된다.아래 예시는 "http://도메인명/files/sample.pdf" 를 요청하면, 실제 /download/files/sample.pdf 파일이 다운로드 된다. /download /files/*/

WAS/WebLogic 2017.09.25

[Tips] Self-Tuning의 스레드풀 최소/최대값 설정

WebLogic Server 9.0에서 부터 스레드 풀 관리기법에서 Self-Tuning을 지원하였는데, 풀 크기의 최소값과 최대값을 설정할 수 있다. 설정 방법은 아래와 같이 크게 두가지 방법이 있다. 1. $DOMAIN_HOME/config/config.xml 파일 설정 .... 인스턴스명 100 200 .... .... 2. 기동 쉘(startWebLogic.sh 또는 start.sh 등) 수정 USER_MEM_ARGS 환경 변수에 관련 옵션 추가한다. 예시) set USER_MEM_ARGS=-Dweblogic.SelfTuningThreadPoolSizeMin =100 -Dweblogic.SelfTuningThreadPoolSizeMax =200 (권장) 또는 set USER_MEM_ARGS=-Dw..

WAS/WebLogic 2017.09.05

[Tips] 웹로직 패스워드 복호화(Decrypting)

웹로직 관리자 계정과 패스워드를 분실한 경우에 새로 초기화 후 생성해도 되지만, 기존 암호화된 파일이 존재한다면 다음과 같이 패스워드를 복호화 할 수 있다.데이터 소스 설정에 암호화되어 있는 패스워드는 아래 스크립트로 복호화(decrypt)가 되는데, 웹콘솔 관리자 계정과 암호(boot.properties 파일에 암호화되어 있음) 는 복호화가 되지 않는다. 예) decrypt.py 파일 - 복호화하는 스크립트import osimport weblogic.security.internal.SerializedSystemIniimport weblogic.security.internal.encryption.ClearOrEncryptedService def decrypt(agileDomain, encryptedPas..

WAS/WebLogic 2017.09.04

[구성] 아파치(Apache) 연동 방안

아파치 웹서버와 연동하기 위해서는 플러그인 모듈 설치 및 설정이 필요하다. 웹로직 플러그인 모듈을 읽을 수 있도록 아파치 설치 시 컴파일 설정값에 --enable-modules=so가 설정되어야 한다. $ ./configure --prefix=/app/web/apache2.2.26 --enable-modules=so --with-mpm=worker --enable-mods-shared=all --enable-so --enable-proxy --enable-proxy-ajp 그리고, 아파치 플러그인 모듈은 1.0, 11g(1.1), 12c(12.1.2) 버전이 있다. 1.0 버전은 웹로직에 기본 포함된 모듈로 10.3.6까지 제공되며, 8.1 버전은 $WL_HOME/server/lib, 9.0이상 버전은 ..

WAS/WebLogic 2017.08.15

[Tips] 오라클 JDBC 드라이버 버전 확인하기

1. 개요오라클 JDBC 버전은 ojdbc[숫자].jar 로 제공한다. WebLogic Server를 설치하면 기본적으로 JDBC 드라이버가 설치된다.숫자는 JDK 버전을 의미한다. 예를들어ojdbc6.jar : JDK 6 버전용ojdbc7.jar : JDK 7 버전용 2. JDBC 버전 확인 방법JDBC 버전 확인 방법은 아래오 같이 크게 2가지 방법이 있다. 1) MANIFEST.MF 파일 확인 방법 $ jar -xvf ojdbc7.jar META-INF/MANIFEST.MF inflated: META-INF/MANIFEST.MF $ grep Implementation META-INF/MANIFEST.MF Implementation-Vendor: Oracle Corporation Implementat..

WAS/WebLogic 2017.07.13

[Tips] WebLogic 기동 시에 JSP 컴파일 옵션

보통 JSP는 처음 호출 시에 컴파일 된다. 이는 WebLogic 기동 후에 화면 로딩 되는 속도가 느려진다. 이를 방지하기 위해서 WebLogic 서버 기동 시에 JSP를 컴파일 해놓는 옵션을 설정할 수 있다. weblogic.xml에 아래와 같은 옵션을 설정하면 된다.참고로, 옵션은 기동 중에 JSP 컴파일 오류가 발생해도, 무시하고 다른 JSP 컴파일도 하고, WebLogic 서버를 기동하라는 의미이다. true true true 5 true D:\tmp\working

WAS/WebLogic 2017.07.10

[정보] 노드 매니저(Node Manager) 구성

웹로직 버전 : 12.1.2 기준 1. 개요원격에 있는 웹로직 인스턴스를 기동하고, 종료시키는 웹로직 유틸리티임도메인과 관련있는 것이 아니라, 특정 머신과 관련있음Node Manager를 통해 도메인에 상관없이 같은 머신에 있는 도메인들의 인스턴스를 관리할 수 있음2가지 버전을 제공함 - 자바 버전과 스크립트와 유사한 버전Node Manager는 윈도우 서비스 또는 유닉스 서비스로 권장함 - 시스템 기동 시에 자동으로 기동가능유니스와 리눅스에는 스크립트 기반도 지원하고, 보안을 위해서는 SSH 사용을 권장함 2. 노드 매니저 설정 방법 2.1 각 머신 설정 1) Machines 생성Environment > Machines 에서 New 버튼을 통해 Machine을 생성함 2) 각 Machine 별 node..

WAS/WebLogic 2017.07.02