jdbc나 일반 접속 program이 connection pool을 사용하지 않고, 수시로
DB에 접속하는 경우, 1초당 10회 이상의 접속 요청이 발생하면, listener의
부하로 접속속도가 현격히 떨어지는 경우가 있읍니다.
이러한 경우에, listener를 하나가 아닌 여러개를 지정하여, 사용하므로써
listener에 대한 병목현상 해소와, 더불어 listener하나가 장애가 발생하더라도
다른 listener들이 처리를 해주도록 구성하는 방법입니다.
MUL1, MUL2, MUL3에 대한 접속이 random하게 분산되며,
하나의 listener가 장애가 나더라도, 접속에 문제가 없읍니다.
listener.ora
-----------
#for multi listener
MUL1 =
(ADDRESS_LIST =
(ADDRESS= (PROTOCOL= TCP)(Host= 169.31.24.83)
(Port= 1501)
(QUEUESIZE=100)
)
)
SID_LIST_MUL1 =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME= /oracle/app/oracle/product/10.2/db)
(SID_NAME = ORCL2)
)
)
MUL2 =
(ADDRESS_LIST =
(ADDRESS= (PROTOCOL= TCP)(Host= 169.31.24.83)
(Port= 1502)
(QUEUESIZE=100)
)
)
SID_LIST_MUL2 =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME= /oracle/app/oracle/product/10.2/db)
(SID_NAME = ORCL2)
)
)
MUL3 =
(ADDRESS_LIST =
(ADDRESS= (PROTOCOL= TCP)(Host= 169.31.24.83)
(Port= 1503)
(QUEUESIZE=100)
)
)
SID_LIST_MUL3 =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME= /oracle/app/oracle/product/10.2/db)
(SID_NAME = ORCL2)
)
)
tnsnames.ora
------------
MUL_TNS = (DESCRIPTION_LIST =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=169.31.24.83)(PORT=1501))
(CONNECT_DATA=(SID=ORCL2))
)
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=169.31.24.83)(PORT=1502))
(CONNECT_DATA=(SID=ORCL2))
)
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=169.31.24.83)(PORT=1503))
(CONNECT_DATA=(SID=ORCL2))
)
)
'ORACLE > TUNING' 카테고리의 다른 글
오라클 hint 사용법 (2) | 2008.11.24 |
---|---|
Transaction internals (0) | 2008.11.11 |
옵티마이저의 비용계산 방법과 실행원리 (0) | 2008.11.07 |
자동화 통계수집 & AWR & ASH (0) | 2008.02.01 |
Toad를 이용한 DB튜닝방법 (0) | 2007.11.16 |