■■■ Develop ■■■/[ Database ]

[ ORACLE ] - 동시접속자수 확인하기 - 9i 기준

시드라엘 2012. 2. 28. 11:52

[오라클] 동시접속자수 확인하기 - 9i 기준

오라클 동시접속 최대 값이 몇 connect인가요?
작성자
toomany(toomany)
작성일
2004-12-17 10:50:32
조회수
2,276

오라클에 동시 접속 테스트를 하는데 350건 이상에서는 연결 실패가 나네요. ㅡㅜ

OPS환경이 아닌 일반 접속에 있어서

최대 접속 건수는어느정도 인지요?

오라클은 9i며 sun에서 돌고 있습니다.

 

기존의 process파라메터 변경하여 접속수를 늘리는 방식이

9i에서는 변경됬다고 들었는데..어떤 방법인지요.

고수님들의 조언 부탁드립니다.

 

이 글에 대한 댓글이 총 3건 있습니다.

동일합니다. processes 파라미터만 늘린다고 되는게 아니라 커널 파라미터도 마찬가지로 수정되어야겠지요.

 

process 파라미터도 높게 잡을 이유는 없습니다. 수치를 늘린다고 빨라지지 않습니다.

 

현재 DB에 얼마나 접속하는지 세션 수를 알고 계십니까? 피크 타임시에는 얼마나 접속하나요? Active 세션 수는 얼마나 되는지요?

이런 정보에 근거를 두고 process파라미터를 설정해주시면 됩니다.

 

아래 쿼리를 실행 시켜보세요.

select * from v$resource_limit

결과에서 processes 가 프로세스 갯수(백그라운드+Dedicate Process)

session이 동시접속 세션 수 입니다.

 

current_utilization 이 현재 접속 카운트이고... (1명 접속할 때 마다 1씩 증가)

max_utilization  이 오라클을 시작한 이래로 최대로 접속했을 때 피크 수치입니다. processes 파라미터도 이 값을 근거로 어느 정도 여유를 두고 설정하면 됩니다.

 

initial_allocation 은...  init.ora 파라미터에서 설정한 수치입니다.

만약 max_utilization 이 limit_value에 근접한다면 processes 를 늘려주어야 하겠지요.

 

마지막으로 팁입니다.

아래 쿼리는 현재 접속된 세션 수와, 전용서버 방식으로 연결한 세션수, 백그라운드 세션 수(오라클 dbwr,lgwr,smon, pmon...), active 세션수 (현재 실재 SQL이 Run되고 있는 세션) 를 알 수 있는 쿼리입니다.

 

SELECT COUNT (*) total_cnt,
       COUNT (DECODE (server, 'DEDICATED', 1, NULL)) dedicated_cnt,
       COUNT (DECODE (TYPE, 'BACKGROUND', 1, NULL)) background_cnt,
       COUNT (DECODE (status, 'ACTIVE', 1, NULL)) active_cnt
  FROM v$session