在生产Rails应用程序应该使用SMTP或sendmail发送邮件?
Answer 1:
SMTP是用于几乎所有互联网主机发送邮件的协议。 该协议是由sendmail的发言。 sendmail将确定发送邮件,以及如何。
有些邮件程序(大多数,今天)将直接连接到邮件服务器,并把它讲SMTP。 然而,“传统”的方法 - 和值得商榷更好的方法 - 是让sendmail的做到这一点。
有两个方面的原因:1)近于UNIX是做什么的sendmail也被设计成一个简易替换(这包括每一个程序的Postfix和进出口银行为例); 以及2)sendmail或更换其设计处理邮件,并没有别的 - 通过使用sendmail你没有设计一个SMTP客户端。
对于UNIX Mutt的电子邮件客户端是一个电子邮件客户端,仍拒绝直接对话SMTP的邮件服务器; 一个很好的(技术)的描述是对维基 。
如果你有直接对话SMTP或使用sendmail的选择(在UNIX反正),使用sendmail - 尤其是在服务器上。
Answer 2:
由于NDP已经提到的,他们都很好地工作 - 也就是说,如果您的邮件量不超过一定的数量。
例如,如果你的应用程序可以跟SMTP要么本地SMTP服务器(IP上127.0.0.1,端口25),或在同一子网的服务器(即,在一个低延迟链接),并且该服务器不使用任何内容过滤器它会将一个消息之前,你通常可以通过SMTP在较短的时间内提交了很多邮件。
Postfix的一个有用的链接可能是一般的邮件传递的性能提示 -请注意报价说
通过SMTP而不是/ usr / sbin目录/ sendmail的邮件提交。
然而,在现代的硬件,如果你不打算提交超过每秒约10封邮件,你应该不会注意到任何真正的区别。
Answer 3:
你的问题是不正确 - SMTP代表简单邮件传输协议,而sendmail就是软件部分使用该协议来发送邮件。
使用sendmail。
Answer 4:
他们都将将正常工作。 行动梅勒支持。
我已经使用SMTP几个项目成功。 我的感觉是,这是多一点“标准”,但我可能是错的。
我没有使用sendmail的。 我担心的是,这可能是难以建立在开发环境中,如果你没有在Unix / Linux开发直接。 在这里您可以直接与任何SMTP server--甚至遥控一个, - 你将不得不在铁轨的机器上安装sendmail来得到它的工作。
我用电子邮件遇到的主要问题是异步发送消息。 如果没有一个本地的SMTP服务器,本地sendmail的实例将是更好的性能。
无论哪种方式,它看起来很容易,如果你决定你选错了切换。