修改訊息佇列大小:
root:使用者: /etc/sysctl.conf
kernel.msgmnb =4203520
#kernel.msgmnb =3520
kernel.msgmni = 2878
儲存後需要執行 sysctl -p ,然後重建所有訊息佇列
ipcs -q : 顯示所有的訊息佇列
ipcs -qt : 顯示訊息佇列的建立時間,傳送和接收最後一條訊息的時間
mas@[172.16.9.38:/mas]$ ipcs -qt
------ message queues send/recv/change times --------
msqid owner send recv change
65536 mas not set not set may 15 15:56:39
98305 mas may 15 15:59:22 may 15 15:59:22 may 15 15:56:39
ipcs -qp: 顯示往訊息佇列中放訊息和從訊息佇列中取訊息的程序id
mas@[172.16.9.38:/mas]$ ipcs -qp
------ message queues pids --------
msqid owner lspid lrpid
65536 mas 0 0
98305 mas 21941 21941
ipcs -q -i msgid: 顯示該訊息佇列結構體中的訊息資訊:
mas@[172.16.9.38:/mas]$ ipcs -q -i 98305
message queue msqid=98305
uid=512 gid=500 cuid=512 cgid=500 mode=0600
cbytes=0 qbytes=4203520 qnum=0 lspid=21941 lrpid=21941
send_time=thu may 15 16:00:19 2008
rcv_time=thu may 15 16:00:19 2008
change_time=thu may 15 15:56:39 2008
ipcs -ql : 顯示訊息佇列的限制資訊:
mas@[172.16.9.38:/mas]$ ipcs -ql
------ messages: limits --------
max queues system wide = 2878 //最大程序數
max size of message (bytes) = 8192 //佇列中最大訊息長度
default max size of queue (bytes) = 4203520
其它相關的命令使用:ipcs -h檢視
此外還可以顯示管道,訊息佇列,共享記憶體等資訊
ipcs檢視訊息佇列命令
修改訊息佇列大小 root 使用者 etc sysctl.conf kernel.msgmnb 4203520 kernel.msgmnb 3520 kernel.msgmni 2878 儲存後需要執行 sysctl p 然後重建所有訊息佇列 ipcs q 顯示所有的訊息佇列 ipcs qt 顯示訊...
管道 訊息佇列 共享記憶體
管道通訊 pipe 管道通訊方式的中間介質是檔案,通常稱這種檔案為管道檔案。兩個程序利用管道檔案進行通訊時,乙個程序為寫程序,另乙個程序為讀程序。寫程序通過寫端 傳送端 往管道檔案中寫入資訊 讀程序通過讀端 接收端 從管道檔案中讀取資訊。兩個程序協調不斷地進行寫 讀,便會構成雙方通過管道傳遞資訊的流...
linux 管道 訊息佇列 共享記憶體的對比
管道 管道的優點是不需要加鎖,缺點是預設緩衝區太小,只有4k,同時只適合父子程序間通訊,而且乙個管道只適合單向通訊,如果要雙向通訊需要建立兩個。而且不適合多個子程序,因為訊息會亂,它的傳送接收機制是用read write這種適用流的,缺點是資料本身沒有邊界,需要應用程式自己解釋,而一般訊息大多是乙個...