バックグラウンドで自分のメールアプリをメールで送信できません。私はバックグラウンド以外の状況でそれをやろうとすると、まったく同じウェルカムメールを送信することができます。私はherokuでこのアプリをテストしており、heroku redisを追加し、ダッシュボードで作業者の機能を有効にしました。私はredisまたはsidekiqでこの問題を解決するのに十分な経験がありません。この問題の修正方法に関する提案を探してください。ここでHeroku Redisでバックグラウンドでメールを送信しないメール
は私の工夫登録コントローラーでのコマンドです:
class RegistrationsController < Devise::RegistrationsController
def create
super
if @user.persisted?
WelcomeEmailJob.perform_later(current_user.id)
end
end
end
バックグラウンドジョブコード:
class WelcomeEmailJob < ActiveJob::Base
queue_as :default
def perform(user_id)
user = User.find(user_id)
WelcomeMailer.welcome_email(user).deliver
end
end
ウェルカムメール:
class WelcomeMailer < ApplicationMailer
def welcome_email(user)
@user = user
@url = 'http://example.com/login'
mail(to: @user.email, subject: 'Welcome to My Website')
end
end
私はこの応答のようなものを見続けますヒロク丸太の中で
2016-04-20T00:11:25+00:00 app[heroku-redis]: source=REDIS sample#active-connections=1 sample#load-avg-1m=0.09 sample#load-avg-5m=0.125 sample#load-avg-15m=0.12 sample#read-iops=0 sample#write-iops=0.020492 sample#memory-total=15405632.0kB sample#memory-free=13388156.0kB sample#memory-cached=493144kB sample#memory-redis=295880bytes sample#hit-rate=1 sample#evicted-keys=0
メールアドオンとして何を使用していますか?正しく構成されていることを確認できますか? – M00B
私のメール設定は実際に正しく設定されています。私はHerokuでSendgridを使用していて、遅延を使用しないと正常に動作します。 – JohnOHFS
http://blog.remarkablelabs.com/2013/01/using-sidekiq-to-send-emails-asynchronously – illusionist