我意识到这可能更适合StackOverflow.com,但是因为我不是一个开发人员,我担心这些答案可能太过以开发人员为中心。 尽pipe如此,我想尽可能地在一些简单的版本中提供一些细节性的细节。
我正在理解什么使邮件服务器更快或能够处理更大的队列。 例如,qmail吹嘘速度非常快,但是最近我遇到了一些商业邮件服务器,这些邮件服务器对于处理邮件数量(例如:5万以上的队列大小没有什么大不了的)要比qmail差。 (对不起,我不想命名)
到目前为止我所知道的(纠正我,如果我错了):
速度:
可以利用SMTP协议在同一networking连接中发送多个电子邮件,节省了设置和拆除套接字连接的时间。 他们还会将特定域名的电子邮件分组在一起,并通过相同的连接发送给他们。
multithreading交付
队列大小:
使用基于epoll / event的系统而不是multithreading也可以使邮件服务器更有效率[思考传统的apache设置与nginx之间的区别]。
如果您愿意冒着服务器可靠性的风险,那么在写入假脱机目录或将其托pipe在虚拟盘中时可能会避免fsyncing。 如果你是理智的和负责任的 – 你会去突袭电池备份caching。
如果你的邮件服务器有不平凡的路由/策略逻辑 – 你可以考虑[预]编译它,而不是解释每条消息的规则。