* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
Window7 32bit, Linux 64bit 등 | |
[cubrid_rel] 수행 결과 | |
[도움말]-[버전정보] 확인 | |
java, php, odbc 등 입력 |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요
[cubrid@testserver월 11월 30 21:33:23 ~]$ cubrid service status @ cubrid master status ++ cubrid master is running. @ cubrid server status HA-Server testdb (rel 9.2, pid 18562) @ cubrid broker status NAME PID PORT AS JQ TPS QPS SELECT INSERT UPDATE DELETE OTHERS LONG-T LONG-Q ERR-Q UNIQUE-ERR-Q #CONNECT ================================================================================================================================================================================================= * qe_so 21087 20903 5 0 0 0 0 0 0 0 0 0/60.0 0/60.0 0 0 0 * qe_rw 21098 20999 1 0 0 0 0 0 0 0 0 0/60.0 0/60.0 0 0 0 * test_rw 21119 30902 100 15 1 0 0 0 0 0 0 0/1.0 0/1.0 0 0 1 * test_so 21228 30903 10 0 0 0 0 0 0 0 0 0/1.0 0/1.0 0 0 0 |
여기서 만약
test_rw broker의 JOB QUEUE가 15개라면 이건 어떤 의미인가요?
broker CAS 15개에 쿼리들이 있고 DB에 접속해서 처리하기 위해 대기중인 상태인건가요?
아니면 JDBC 에서 CAS로 붙으려고 하는데 모든 CAS가 사용중이라 CAS랑 연결하기 위해 대기중인 상태인가요?
DB MAX CLIENT는 넉넉하다고 할 때,
왜 JOB QUEUE가 계속 밀리는지 궁금합니다.
감사합니다
말씀하신 부분과 같이 JQ는 작업큐에 대기중인 개수가 맞습니다.
(AS: CAS 개수
JQ: 작업 큐에서 대기 중인 작업 개수
TPS: 초당 처리된 트랜잭션의 수(옵션이 “-b -s <sec>”일 때만 해당 구간 계산)
QPS: 초당 처리된 질의의 수(옵션이 “-b -s <sec>”일 때만 해당 구간 계산))
test_rw브로커에 15개가 대기중인 것으로 이해 하시면 되겟습니다.
조금 더 상세한 확인이 필요하며, 명령어는 아래와 같습니다.
cubrid broker status -b -f -l 2
@ cubrid broker status
NAME PID PSIZE PORT AS(T W B 2s-W 2s-B) JQ TPS QPS LONG-T LONG-Q
==============================================================================
query_editor 16784 56700 30000 5 0 0 0 0 0 16 29 0/60.0 0/60.0
AS(T): 실행 중인 CAS의 전체 개수
AS(W): 현재 클라이언트 대기(Waiting) 상태인 CAS의 개수
AS(B): 현재 클라이언트 수행(Busy) 상태인 CAS의 개수
AS(Ns-W): N초 동안 클라이언트 대기(Waiting) 상태였던 CAS의 개수
AS(Ns-B): N초 동안 클라이언트 수행(Busy) 상태였던 CAS의 개수
CANCELED: 브로커가 시작된 이후 사용자 인터럽트로 인해 취소된 질의의 개수 (-l N 옵션과 함께 사용하면 N초 동안 누적된 개수).
위 명령어로 어느부분에서 혹은 어떠한 SQL문으로 지연되는지 확인해 보시길 바랍니다.
참고 매뉴얼 : https://www.cubrid.org/manual/ko/10.1/admin/control.html#broker
감사합니다.