본문 바로가기

메모장/리눅스

[Linux] message queue 설정법과 최대 길이

현재 메세지 큐 설정 확인

sysctl -a | grep kernel.msg
또는
sysctl kernel.msg{max,mni,mnb}

msgmax = 한 프로세스에서 msgQueue에 적을 수 있는 최대 크기
msgmnb = 단일 msgQueue의 최대 허용 크기
msgmni = msgQueue의 최대 갯수 (생성할 수 있는 메세지큐 식별자 수)

 

메세지 큐 사이즈 변경 (재부팅 하기 전까지 유지)

sysctl -w kernel.msgmax=65536
sysctl -w kernel.msgmnb=1048576

 

설정 파일 변경 (재부팅 후부터 적용)

vi /etc/sysctl.conf

아래와 같이 입력 후 저장

kernel.msgmax=65536
kernel.msgmnb=1048576

 

 

Message Queue의 최대 길이

참조 : jybaek.tistory.com/622

 

message queue 최대 길이

이러저러한 이유로 Linux에 message queue를 사용하고 있는데, 메시지의 길이가 일정 수치를 넘어가면 문제가 발생했다. sysctl로 확인하고 값을 변경해도 동일. $ sysctl kernel.msg{max,mni,mnb} kernel.msgmax..

jybaek.tistory.com

메세지 큐를 생성 할 때 큐를 리사이징 하기 때문에 일정 이상은 늘어나지 않는 것 같다. (IPC 마다 다를 수 있음)