您的位置:首页 > 运维架构 > Linux

linux 修改消息队列大小

2012-11-14 18:14 120 查看
环境:red hat5

  

  linux消息队列的配置文件为: /etc/sysctl.conf ,里面:

    msgmax:  一条最大消息的字节数

    msgmnb: 一个消息队列总共最大字节数

    

  而我的系统这2个值都默认是65536,假如发一条65536长度的消息,那么消息队列只能存放一条消息,而我们的服务每条消息定义的长度是4096,这样最多也只能存放16条消息,有时服务处理不过来时就会报错:Resource temporarily unavailable,消息队列堵塞的现象,所以要将消息队列大小改为(4194304,这个值根据自己需求来改),具体步骤为: 

1.以root用户登陆将sysctl.conf 配置文件里面的kernel.msgmnb = 65536改为kernel.msgmnb = 4194304;
2.执行指令/sbin/sysctl -p ,使其生效。这时shell会有很多行提示信息,可以看到:kernel.msgmnb = 4194304;
3.将以前的消息队列删掉(ipcrm -q 111 -q 222 -q ...)在重新建立消息队列msgmnb 值才生效;

    

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: