在Perl中发送SMTP电子邮件的更快方法?

安德鲁·纽比(Andrew Newby)

我们使用SMTP从我的网站发送电子邮件。使用Email :: MIME,然后使用Email :: Sender :: Transport :: SMTP构建,将其传递到我们的SMTP服务器进行发送:

my $transport = Email::Sender::Transport::SMTP->new({
    host => 'smtp.gmail.com',
    port => 465,
    ssl => 1,
    sasl_username => '[email protected]',
    sasl_password => 'xxxx'
});

sendmail($email,{ to  => ['[email protected]'] });

我的问题是它的血腥速度太慢了!(每封电子邮件至少需要4-5秒,如果您向客户端发送一封电子邮件+向我们(管理员)发送一封电子邮件,那就是10秒钟。我们不断使人们认为该网站似乎挂起了,因此已损坏

所以我的问题-如何在不挂起Perl脚本的情况下发送SMTP电子邮件?我不太在乎错误捕获。主要问题是尽可能快地发送电子邮件

谢谢

戴夫·克罗斯

显而易见的方法是不实际从Web应用程序发送电子邮件。而是将有关电子邮件的信息写入作业队列,并让另一个作业(可能从运行cron)开始查看该队列并发送所有需要发送的电子邮件。这样,网页将立即返回,用户将在几分钟之内收到他们的邮件。

上一次我尝试这样的事情时,施瓦茨是最推荐的工作队列管理器之一。人们现在可能会推荐一些东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用SMTP在Gmail帐户中发送电子邮件

SMTP电子邮件附件发送方法?

在HTML电子邮件中发送图像

在R中发送电子邮件

在MVC中发送电子邮件

在Rails中发送简单的电子邮件

SMTP 不在 Gmail 企业帐户中发送电子邮件

无法使用Gmail SMTP在Spring Boot中发送电子邮件

尝试在RoR应用程序中发送电子邮件时遇到SMTP错误

由于 smtp 在 Lambda (python) 中发送电子邮件时出错

如何使用 SMTP 在 ionic 3 中发送电子邮件?

如何通过自己的smtp在firebase https函数中发送电子邮件

在使用Gmail SMTP的PHP中发送电子邮件方面需要帮助

Golang SMTP发送空电子邮件

未发送 Gsuite SMTP 电子邮件

Laravel发送电子邮件SMTP

SMTP发送多封电子邮件

发送smtp gmail电子邮件``失败发送邮件''

发送SMTP电子邮件在控制台应用程序中被强制关闭,然后才能在.NET中发送电子邮件

如何将变量传递给子程序以在 perl 中发送电子邮件

在Rails中发送电子邮件后存储邮件程序类和方法

Perl SMTP:正文中不能发送非ASCII字符的电子邮件

在Android中发送不带用户的电子邮件/密码的邮件

SMTP邮件未发送-Codeigniter电子邮件库

在asp.net中发送电子邮件发送密码而不是电子邮件

目标主机拒绝在 C# smtp.gmail.com 和端口号 587 中发送电子邮件

使用gmail smtp服务器和javamail在Java中发送未经身份验证的电子邮件

在春季启动中发送sendgrid电子邮件的最简单方法

使用媒体上传方法在Appscript中发送带有附件的电子邮件