linux – 当负载平均值太高时,对SendMail守护程序操作的问题

我的sendmail服务器开始拒绝连接,因为负载平均值太高(由于垃圾邮件问题已经解决).
Error was: sendmail[13400]: rejecting connections on daemon MTA: load average: 50

我想更好地理解这种行为.

>此阈值设置在何处?
>“平均负载”是什么意思?
>负载平均值的计算频率是多少?
>有没有办法主动监控这个?或者当负载平均值接近高值时会收到警报?很明显,sendmail会给连接的MTA提供一个4.0.0类的dsn,但我正在寻找某种警报机制.

谢谢,

中号

嗨,大家好,

当我看到它再次出现时,我以为我会再碰一次.我现在看到的问题是,由于超出平均负载而排队的消息不会在以后重新发送(即使在性能恢复到可接受的水平之后.任何想法为什么会这样?

谢谢,

中号

解决方法

系统负载平均值是用于表示系统正在执行的工作量的性能指标.登录邮件服务器(假设为UNIX类型系统)时,可以键入uptime命令以查看最后一分钟,5分钟和15分钟的平均负载.以下是生产服务器的示例:
sh$uptime
10:53am  up 248 day(s),36 min(s),12 users,load average: 0.28,0.29,0.30

所以5分钟的平均负载是0.28,最后5分钟的负载平均值是0.29等.在这种情况下,你可以看到系统的负载随着时间的推移略有下降.

根据经验,您需要将服务器负载保持在1以下.但在所有情况下都不一定如此.如果您观察服务器一段时间,您将开始看到合理的负载是什么.这可能是理解它的最简单方法,只需在现实世界中观看即可.也就是说,如何计算负载平均值实际上相当复杂,但如果您感兴趣,我建议您查看以下有关Linux如何计算它的文章

http://www.linuxjournal.com/article/9001

现在回到sendmail.当负载平均值(LA)过高时,可以将Sendmail配置为仅排队消息或平掉拒绝消息.我们的想法是,这将使sendmail不再占用整个系统.如果过早拒绝连接,可以在sendmail.cf中查看两个设置:

O QueueLA=8 - load average at which Sendmail queues new messages

O RefuseLA=12 - load average at which Sendmail rejects connections

谷歌搜索上面返回一个页面,其中包含有关如何更改这些参数(使用M4宏时)的一些说明,这可能会有所帮助:

http://www.revsys.com/writings/quicktips/sendmail-mc.html

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...