database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 3518 게시물 읽기
No. 3518
DB2깡통임니다..) 세마포어 관련 궁금해서요 ..
작성자
DB2꿈나무
작성일
2023-01-04 09:50
조회수
695

프로세스당 세마포어를 사용하지 않았을때 최대 쓰레드 수를 알고 싶은데 


도무지 감이 안잡혀서요 . .


혹시 DB2에서 세마포어 기능을 끌 수 있나요 ?? ?


ipcs -l 로 봤을 때


세마포어와 쓰레드와의 관계가 있다고 보거든요 제생각엔. .띵킹


Max number of arrays 가 최대 배열 수 인데 그게 쓰레드를 제한 해주는게 아닌가.. 


생각이 들기도 하는데 테스트를 어떻게 해봐야 될지 . . .


아니면 세마포어를 이용해서 쓰레드를 제한 해줄 수 있는 다른 방법이 있는지 궁금합니다. 

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

db2 서버의 프로세스수를 말씀하시는 건지요 아니면 db2 서버 내에서 작동하는 세션의 커넥션수를 말씀하시는건지? 질문이 이해가 잘 안되네요.

db2에는 스레드 수를 제한하는 기능은 없습니다.


아래 db2 시스템 요구사항을 보면 커널파라미터 중 세마포어 설정부분이 있습니다만 보통 변경하지 않고 기본값으로 사용합니다.

https://www.ibm.com/docs/en/db2/11.5?topic=unix-kernel-parameter-requirements-linux

정상규(pajama)님이 2023-01-04 11:50에 작성한 댓글입니다.

네 저도 이해가 안되서요 ㅠㅠ 


저보고 세마포어 기능을 사용하지 않았을 때 한 프로세스당 최대 쓰레드 수가 어느정도냐고


물어보는데 아무리 찾아도 세마포어 기능을 끈다라는 이야기는 못들어 본거 같아서요 


저 질문의 의도가 뭔지 모르겠습니다 .. 

 

DB2꿈나무님이 2023-01-04 13:11에 작성한 댓글입니다. Edit

ipcs -l 명령을 하신거보면 리눅스 환경이신듯 한데..

질문하신 분이 용어를 혼동하시는건 아닐까요? 하이퍼스레딩이라던가?

정상규(pajama)님이 2023-01-04 13:45에 작성한 댓글입니다.

세마포어가 없을 때 말한 것 같아요 


그래서 세마포어 값을 0으로 줬을 때 나오는 


ZRC=0x800F00FC=-2146500356=SQLO_INV_PARM Invalid input parameter 


IPC Semaphore Set ID


ZRC=0xFFFFFBEE=-1042 SQL1042C An unexpected system error occurred 


에러 메세지에 대해서 설명하고, 말씀 주신대로 DB2에는 쓰레드 수를 제한하는 기능이


따로 존재하지 않는다고 하고 커널파라미터 중 세마포어 설정부분에 대해 설명해 드리니


넘어갔습니다. 


감사합니다. 덕분에 많이 알아갑니다. 

DB2꿈나무님이 2023-01-04 16:34에 작성한 댓글입니다. Edit

제가 잘 모르는 케이스가 있는건지 세마포어를 0으로 설정하는 경우가 있는지 모르겠네요.

아래 IBM 문서에 따르면 세마포어 설정값이 낮으면 db2가 세마포어 배열수를 늘린다고 나와 있습니다. 0로 설정해서 db2 프로세스가 시작된다고 해도 의미가 없는거죠.


https://www.ibm.com/support/pages/db2start-fails-due-enforcement-maximum-semaphore-arrays-linux-kernels-3100-1127el7-and-4180-147el81-and-newer


제가 지금까지 경험한 바로는 db2에서 세마포어를 0으로 설정한 경우는 없었습니다.

무슨 목적으로 세마포어를 0으로 설정하시려는지와 스레드 개수와의 상관관계에서 어떤 성능적인 측면을 고려하시는건지 가늠이 안되네요.

정상규(pajama)님이 2023-01-04 16:48에 작성한 댓글입니다.
이 댓글은 2023-01-04 16:56에 마지막으로 수정되었습니다.

ㅠㅠ 저도 이제 막 시작한지 얼마 안되어서 어떻게 말씀을 드려야 될지 모르겠어요 ㅠㅠ 


단순히 그냥 jmeter 이용해서 java 쿼리를 넘겨서 세마포어가 없다면 한프로세스 당 db2fmp 했을 때 최대 몇 개의 쓰레드가 생길 수 있냐 이거 인거 같은데 ..


이거는 db2_max_threads_per_fmp=? 이거 이지 않나 .. 싶은데 테스트는 해봐야 되겠고 ,,


어딜 찾아도 세마포어를 on off 한다, 기능을 안쓴다는 이야기는 못찾겠고 ,,


아직 세마포어를 사용하지 않을 때 성능적인 측면에서 뭐가 어떠하다 까지 판단까지는 


수준은 안되는 것 같슴니다 .ㅠ.ㅠ

DB2꿈나무님이 2023-01-05 09:04에 작성한 댓글입니다. Edit

db2fmp는 java나 c로 의해 쿼리가 호출될때 실행되는 프로세스이고 말씀하신대로 DB2_MAX_THREADS_PER_FMP 레지스트리 변수로, 각 db2fmp 프로세스당 최대 스레드개수를 설정할 수 있습니다. 설정값을 적용하려면 db2 서버는 재시작해야합니다.

과거버전이긴 하지만 프로세스가 너무 많아져서 시스템 전반이 느려지거나, 심할경우 db2 프로세스가 셧다운 된 경우도 있었습니다.

아래는 관련 문서입니다.


https://www.ibm.com/support/pages/apar/IZ08425

https://www.ibm.com/support/pages/db2fmp-memory-issues

정상규(pajama)님이 2023-01-05 10:26에 작성한 댓글입니다.
이 댓글은 2023-01-05 10:32에 마지막으로 수정되었습니다.

감사합니다 !! 많이 알아가는 것 같습니다. 


물어볼 사람이 없어서 DB2는 ㅠㅠ 친절하게 답변해주셔서 감사합니다. !!

DB2꿈나무님이 2023-01-05 16:54에 작성한 댓글입니다. Edit

db2 궁금하신점 있으시면 질문올려주세요~~ 아는한에서 답변드리도록 하겠습니다.

정상규(pajama)님이 2023-01-05 21:35에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
3554iDB2 xml 문자열에 한글 포함 오류 관련
굴개
2024-02-29
71
3553에러관련해서 질문드려요 [2]
김창식
2023-06-19
315
3552DB2 메모리 관련하여 질문드려요 [7]
김창식
2023-05-08
475
3518DB2깡통임니다..) 세마포어 관련 궁금해서요 .. [9]
DB2꿈나무
2023-01-04
695
3517[질문]컬럼의 설명을 조건으로 테이블 검색이 될까요? [1]
신승익
2022-06-08
717
3514DB2설치 [2]
신승익
2022-03-22
860
3513Toad for DB2 에러메세지 질문드립니다.
고나
2021-10-19
1022
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다