我創建了一個處理作業並構造「社交網絡」類型電子郵件的作業隊列模塊。 2進程包括:AWS SES向多個收件人發送郵件的速度太慢
構建定製的電子郵件(查看)例如
User A and User B have commented on your post
或User B and User C also likes User C's post
。每個收件人都會收到其他電子郵件我最初創建了一個新的Swiftmailer
實例並添加消息內容,主題和收件人。然後我將這些實例添加到數據庫中。cron作業運行後取回併發送這些電子郵件。
基準測試中,我意識到它每秒發送2封電子郵件。所以我嘗試在數據庫中存儲Swift_Message
實例。沒有運氣,但仍需要很長時間。
目前,該代碼
- 創建一個新的
Swift_SmtpTransport
。 - 創建新的
Swift_Mailer
實例。- 通過從數據庫檢索的
Swift_Message
消息的循環 - 發送每封電子郵件。
- 通過從數據庫檢索的
但它仍然平均約爲2電子郵件第二。有什麼方法可以改進流程以加快交付速度?我使用Amazon SES作爲SMTP傳輸,我知道它至少可以處理每秒5封電子郵件。
所以這可能是我做錯了。任何想法讚賞。
編輯
請記住,這些消息對於每個收件人不同。我可以試用Swift_Decorator
插件,但這意味着我將不得不改變視圖的生成方式。我只是在尋找其他方法來加速這個過程。