最近几周,用户经常抱怨邮件服务器慢,连不上,邮件发不出去。
写了几个监控脚本,对CPU,交换分区,硬盘使用率,进程等情况做了监视。 得到以下结论:
imap和maildrop引起的系统IO阻塞,是造成故障的主要原因。
imap 在大量用户的情况下本身就是瓶颈。 目前常规在线人数在100左右,邮件使用高峰期 IO的使用率是100%。 所以考虑换回POP3。
maildrop 主要是设置问题,之前没有限制最大进程数,群发的时候会启动1xxx个进程,而且都是读写硬盘的,所以要限制maxproc。
在master.cf里
maildrop unix - n n - - pipe
flags=DRhu user=vuser argv=maildrop -w 90 -d ${user}@${nexthop} ${recipient} ${user} ${extension} {nexthop}
改为
maildrop unix - n n - 21 pipe
flags=DRhu user=vuser argv=maildrop -w 90 -d ${user}@${nexthop} ${recipient} ${user} ${extension} {nexthop}
maxproc改成21,基本上不会太卡
尽管做了以上设置,但磁盘IO效率还是存在问题。 下一步准备把ext3换成reiserfs。 如果还是不成的话,那就只能上NAS了 。
EOF