我有一個aspx網頁,其中有一個選項可以上傳多個文件。這些文件必須以BLOB格式存儲在數據庫中。 什麼將是最有效的方式來存儲這些文件?上傳文件的大小或數量沒有限制。 每當用戶點擊文件上傳按鈕時,我應該一個接一個地上傳文件,或者在保存按鈕上提交整個表單時同時上傳文件。請記住,這是由多個用戶使用大約〜1000同時上傳文件的有效方法
回答
集文件上傳控件的多個屬性爲「多」,並在後面的代碼get請求用戶提交的文件,然後依次通過他們的記憶流將它們作爲字節數組存儲在你的數據庫中
考慮到它是一個BLOB數據,我會考慮使用一些非SQL數據庫(MongoDB,RavenDB),在那裏你只用數據保存「文檔」,所以它更容易在這種情況下管理。但在這種情況下您將需要更多的磁盤空間。
怎麼樣上傳:我會一個接一個,因爲如果連接斷開,至少有一些文件被傳送。
在服務器端,會在內存緩存中看到Redis,總是準備好接受用戶的「會話」(一系列聲明數量的文件),並且一次全部發送,或者連接失敗的內容該會話保存在磁盤上。
只是概述可以做些什麼來給你一些提示。
謝謝,回覆。在這個項目中,我們只需要使用MSSQL,另外我已經實現了一個一個的上傳案例。它是更好地將這些文件逐個從暫時的直接保存到主表或者我應該首先將它們保存到一個臨時表,然後將它們複製到主表,最後刪除這些條目。我目前正在做第二種方式,以減少多個用戶對主表的點擊次數。 – Peyush
考慮到您的方案(圖像必須存儲在(我假設)一個單一的SQL數據庫)的侷限性,我會逐個上傳圖像,我會調查帶有指數後端處理的SQL Server Transient Fault Handling,關閉策略可以幫助嘗試處理「排隊」的上傳。
沒有更多的細節我真的不能說。
感謝,會考慮這個 – Peyush
的TFH塊看起來它是SQL Azure的,但我敢肯定的重試邏輯適用於任何現代的SQL Server。我始終將它與SQL Azure結合使用,這非常棒。 –
- 1. 多部分文件上傳與分塊文件上傳有什麼區別?哪種方法更有效?
- 2. webclient上傳文件方法
- 3. 上傳圖像的最有效方法(兩種方法)
- 4. 有效上傳文件到CDN
- 5. 上傳路徑似乎不是有效的「。 Codeigniter文件上傳
- 6. 寫入文件的最有效方法?
- 7. 寫入文件的有效方法swift
- 8. 反轉大文件的有效方法
- 9. ios safari上的文件上傳有什麼替代方法?
- 10. 嘗試新的文件上傳方法
- 11. 從javaScript上傳文件的方法Phonegap
- 12. asp.net網站的文件上傳方法
- 13. 最好的文件上傳方法
- 14. 上傳文件的更多方法
- 15. Android中多文件上傳的方法
- 16. gwt中有沒有實現文件夾上傳的方法?
- 17. 使用PUT方法上傳大文件
- 18. python使用post方法上傳文件
- 19. ExtJS文件上傳表單方法
- 20. 多部分文件上傳方法
- 21. 「Valums」文件上傳器和方法POST
- 22. struts 2文件上傳沒有這樣的方法異常
- 23. Grails上傳文件沒有方法的簽名getFile()
- 24. 將xls記錄上傳到數據庫的有效方法
- 25. 在SQP.NET上傳圖片的有效方法
- 26. 美好的上傳 - 沒有方法'上'
- 27. Flajaxian文件上傳控件無法上傳FireFox中的文件
- 28. 上傳的文件沒有返回有效的文件類型屬性?
- 29. 安全高效的文件上傳器
- 30. Selenium上傳文件 - 任何提及文件路徑的方法?
您一次上傳1000張圖片並將這些斑點存儲在SQL Server中?你確定這是個好主意嗎?數據庫將變得非常大,非常快 –
首先,我已經實現了一個一個的上傳。 – Peyush
其次,我只能使用MSSQL Server。別無選擇。是的,桌子將會非常大,而且會快速填滿。只有當用戶將會非常大時,我纔會將其視爲一種場景。 「一個接一個或同時上傳」哪一個更好 – Peyush