Http
使用沒有 RAM 記憶體的 curl 上傳大文件。
我正在使用 curl 將大文件(從 5 到 20Gb)上傳到基於 HDFS(Hadoop 集群)的HOOP ,如下所示:
curl -f --data-binary "@$file" "$HOOP_HOST$UPLOAD_PATH?user.name=$HOOP_USER&op=create"
但是當 curl 上傳大文件時,它試圖將它完全記憶體在 RAM 中,這會產生高記憶體負載。我嘗試使用應該禁用緩衝的
-N
標誌。man curl
但是什麼也沒發生。所以我的問題是,有沒有辦法強制 curl 直接寫入套接字,或者你能告訴我另一個工具,它可以滿足我對簡單 HTTP POST/PUT 請求的需求。我不會自己寫,因為它看起來一直像發明自行車。謝謝你。
可悲的是,根據 Daniel Stenberg 的說法,目前還不可能。