我有一个rails应用程序,其中我有一个发送了很多电子邮件的功能.我想以异步方式进行,我认为deliver_later方法会这样做.目前,我从用户点击提交到提交表单时有一些延迟 – 这会导致糟糕的用户体验(这是一个非常简单的表单).我的实现看起来像这样:
def create respond_to do |format| if @competition.save [...] send_notification_to_team_members end end def send_notification_to_team_members @team.members.each do |member| unless member.user.eql?(current_user) Mailer.deliver_new_competition_notification(member.user,@competition).deliver_later end end end
目前,该动作需要约4秒钟才能完成.我也尝试过:
Mailer.deliver_new_competition_notification(member.user,@competition).deliver_later(wait: 1.minute)
然后它需要更长时间 – 我估计约1分钟.
所以,我错误地使用deliver_later,或者方法没有按照我的预期进行.在那种情况下,我可以使用另一种方法来提高我的表现吗?
解决方法
原文地址:https://www.jb51.cc/ruby/267757.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。