我已經設定了 Laravel 佇列來使用您的 Laravel excel 讀取 excel 文件,它非常適合小文件。
但是對於大檔案(100 mb)和400k 記錄,需要花費太多時間並且消耗伺服器的近40GB RAM。
我已經設定了一個主管來運行佇列:工作命令。我的伺服器記憶體是 60GB。 對於小文件,一切正常,但對於大文件則不起作用。
我還使用望遠鏡檢查了查詢時間,但沒有查詢花費很長時間。
P粉7262346482024-03-22 16:23:26
目前,您的問題還沒有直接的答案。這很大程度上取決於您的目標結果。您必須設計自己的方法來解決它。
我最關心的一件事就是對大型 excel 檔案進行分塊或分區,並將它們送入隊列。也許你可以利用 Laravel 作業批次。
您可以引入的另一件事是微服務系統,其中這些繁重的任務將由另一台更好的機器來完成。
但是就像我說的,對於這樣的問題沒有單一的解決方案。這些都得你自己計算找出來。
P粉4550931232024-03-22 10:38:32
對於所有面臨此類問題的人,我建議使用 Spout。它的作用就像魅力一樣。為此我嘗試了 3 個 PHP 服務,最後只有 spout 有效。
https://opensource.box.com/spout/
#