我在網上搜索,但我沒有找到任何解決方案,我的問題。 我使用laravel 5.2和SQS作爲隊列驅動程序。 我正在派遣一份工作,以便將電子郵件發送給100位用戶。 作業收到「文章」模型和「用戶」數組,並且每個用戶都應該收到帶有「文章」的電子郵件。Laravel工作大小限制已超過256kb(隊列SQS aws)
當它是10個用戶都可以。 當它是100個用戶時,我收到來自amazon SQS服務的錯誤消息「400錯誤請求」,並且響應是:「原因:消息必須小於262144字節。」 我明白這個工作的要求太大,因爲用戶的數組。
我想拆分用戶的數組,以便將作業的請求大小減少到小於256kb。 我可以通過循環遍歷用戶的數組來完成,每當我接近256kb時,我將派發一篇文章和用戶的工作,然後我將繼續運行數組中的其餘用戶。
- 什麼是檢查當前作業請求大小我們派遣之前的方式嗎?
- 您有更好的解決方案嗎?
非常感謝您提前 獅子座。
有你派遣一個工作有100篇文章,而不是100個工作崗位的理由每篇有1篇文章?這首先是隊列系統的一大特點。 – CmdrSharp
@CmdrSharp我正在發送一個包含100個項目的作業(1個EVENT和100個用戶),以減少隊列請求。每個EVENT將運行在用戶身上,並將發送EMAIL到100個用戶的相同(取決於條件),因此最終我將發送100個作業發送EMAIL。 SO 1 EVENT工作,100個用戶和100個工作崗位發送EMAILS。 – llioor