發送簡訊我已經和admin_mailer
:用delayed_job的
class AdminMailer < ActionMailer::Base
def send_message_to_all_users(user, subject, body, locale)
@user = user
@body = body
@locale = locale
mail(:to => user.email, :subject => subject)
end
end
在我的控制器上的用戶行爲:
def send_email_to_all_users
users = User.all
subject = params[:subject]
body = params[:body]
locale = params[:locale]
for user in users
User.delay(queue: "Email", priority: 20).send_message_to_all_users(user, subject, body, locale)
end
respond_to do |format|
.........
end
end
在我的模型User
class User
include Mongoid::Document
include Mongoid::Timestamps::Created
.
.
.
#delayed jobs methods
def self.send_message_to_all_users(user, subject, body, locale)
AdminMailer.send_message_to_all_users(user, subject, body, locale).deliver
end
def deliver
sleep 15
end
end
的users
郵件列表是非常超過20,000個電子郵件帳戶。
我的問題是,如果這種方式是正確的發送通訊與一個大的郵件列表,或者我可以做這個更好的方式任務。
謝謝!
謝謝,但我使用'delayed_job'並添加其他後臺作業寶石是不可能的。非常感謝你! – hyperrjas