我想將資料從 CSV 檔案匯入 spring 控制器,據我所知,有兩種方法:
- 使用 papaparse.vv 之類的庫決議客戶端的資料,然后將其發送到控制器
- 上傳檔案然后在服務器端決議這是上面兩種方式中最好的方式,非常感謝
uj5u.com熱心網友回復:
每種方式也各有利弊。
如果您只有很少的用戶/客戶端,那么在服務器上決議可能更合適。
否則,應考慮在客戶端決議,因為它減少了服務器的作業量。如果您的應用程式每天有數千或百萬個請求,則應優先考慮。
uj5u.com熱心網友回復:
首先,除非 CSV 檔案很大或者您經常執行此匯入操作,否則兩種方法之間的性能差異很可能與用戶無關……也與您無關。
但是讓我們比較一下這兩種方法:
客戶端 CSV 決議:客戶端 CSV 決議器很可能很快……而且您正在使用用戶的 CPU 來完成它。但是,如果/當您將資料發送到服務器時,您將不得不將其全部重新序列化(例如作為 JSON)。并且序列化的表單很可能需要在服務器端反序列化。
因此,總體而言,您將在服務器端節省很少的時間,并增加在用戶機器上決議和序列化的成本。
但是,如果您可以在將資料發送到服務器之前在客戶端進行一些(顯著的)資料縮減,那么您最終可能會得到節省。這將取決于您可以減少多少資料,以及客戶端 <-> 服務器網路資料速率。
服務器端 CSV 決議。這避免了額外的序列化/反序列化開銷。但是沒有任何資料減少的機會。
總之……看情況而定。
但我的建議是:“避免過早優化”。不要試圖猜測哪種方法會更有效。實施更簡單的版本,并且僅在證明需要優化時才優化(您的作業系統!)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/376557.html
