Meteor电子邮件:连接未关闭
我正在使用Meteor.methods()向我的用户发送个性化电子邮件通知:Meteor电子邮件:连接未关闭,meteor,exim,Meteor,Exim,我正在使用Meteor.methods()向我的用户发送个性化电子邮件通知: Orders.\u collection.rawCollection() .distinct('user',{day:dayId}) 。然后((结果)=>{ 让邮件列表=[] User.find({u id:{$in:result}}).forEach((User)=>{ mailList.push({to:user.emails[0]。地址,房间:user.profile.room}); }); console.lo
Orders.\u collection.rawCollection()
.distinct('user',{day:dayId})
。然后((结果)=>{
让邮件列表=[]
User.find({u id:{$in:result}}).forEach((User)=>{
mailList.push({to:user.emails[0]。地址,房间:user.profile.room});
});
console.log('设置邮件队列…')
mailList.forEach((用户,索引)=>{
设延迟=0;
让时间=延迟+(指数*200);
console.log('为用户'+user.to''设置的队列,用于'+time/1000+'秒')
Meteor.setTimeout(()=>{
console.log('将邮件发送到:'+用户.to);
Email.send({
至:'用户。至',
来自:test@example.pl",
主题:“测试”,
html:模板,
});
},时间)
})
});
本例发送所有邮件,但如果有10条以上的邮件,EXIM将返回一个错误,即一个SMTP连接中有10条以上的邮件,邮件将在30分钟后移动到队列中发送。即使每次邮件后延迟2.5分钟,也会发生这种情况
邮件发送后,是否有任何方法关闭与服务器的smtp连接?
邮件url为:
smtp://localhost:25
电子邮件
包基于node4mailer
(对nodemailer
进行小的修改以在节点4上运行它)
默认情况下,用于传输选项。这意味着
它将重复使用已打开的连接,直到发送的消息量达到其限制,而nodemailer
因此,通过修改邮件URL
,您有两种解决问题的方法:
10
作为maxMessages
传递给nodemailer
传输:
smtp://localhost:25/?maxMessages=10
nodeEmailer
为每封电子邮件打开一个新连接):
smtp://localhost:25/?pool=false
有用链接:
nodemailer
文档:Email
包基于node4mailer
(对nodemailer
进行小的修改以在节点4上运行)
默认情况下,用于传输选项。这意味着
它将重复使用已打开的连接,直到发送的消息量达到其限制,而nodemailer
因此,通过修改邮件URL
,您有两种解决问题的方法:
10
作为maxMessages
传递给nodemailer
传输:
smtp://localhost:25/?maxMessages=10
nodeEmailer
为每封电子邮件打开一个新连接):
smtp://localhost:25/?pool=false
有用链接:
nodemailer
文档:你试过邮枪吗?Meteor的电子邮件包适用于一次性和有限的使用,但Mailgun可能更适合您的使用情况。无法真正使用外部服务通过intranet发送数据:(您是否在运行此Meteor代码的同一台计算机上安装了EXIM?您是否尝试过mailgun?Meteor的电子邮件包适用于一次性和有限使用,但mailgun可能更适合您的使用情况。无法使用外部服务通过intranet发送数据:(您是否在运行此Meteor代码的同一台机器上安装了EXIM?完美答案!完美答案!