2015-12-23 45 views
0

在一個網上商店即時通訊,我想一次發送通訊到很多郵件地址。我發現在laravel一個選項queue mails,如:Laravel郵件隊列示例配置

Mail::queue('emails.welcome', $data, function ($message) { 
    // 
}); 

與文本

這種方法將自動推工作到 隊列在後臺發送郵件的照顧。當然,你會在使用這個功能之前 需要configure你的隊列。

config/queue.php

'default' => env('QUEUE_DRIVER', 'sync'), 

在文檔的解釋瞭如何創建隊列中的作業配置。我是否需要爲郵件示例做一份工作,還是隻需要爲其他自定義隊列作業創建單獨的作業?

+0

這不回答這個問題,但我建議使用,而不是通過這樣做的像MailChimp或SendGrid或類似的電子郵件羣發您自己的應用。它將減少處理被標記爲垃圾郵件的服務器的機會,從您的服務器中刪除一些負載,併爲您提供大量額外的統計數據和功能,例如取消訂閱。 –

+0

@JoshJanusch感謝,即時通訊使用gmail的業務,所以它不是一個自定義郵件服務器,但它是從Gmail發送。 –

回答

0

同步驅動程序基本上是用於開發目的,通常使用數據庫驅動程序代替。

爲了使用數據庫隊列驅動程序,您需要一個數據庫表來保存這些作業。要生成創建此表的遷移,請運行queue:table Artisan命令。一旦遷移創建後,您可以使用遷移命令遷移數據庫:

php artisan queue:table 

php artisan migrate