2011-09-09 135 views
0

我們想跟蹤用戶是否已從我們的網站完全下載文件。我怎麼知道用戶已經完全下載這個文件沒有任何問題。我應該如何去設計這個?如何知道文件是否已完全下載

我們的應用程序是一個j2ee應用程序(richfaces,jboss,mysql),可下載文件將從數據庫或文件系統提供。

+0

編程語言? – genesis

+0

什麼語言?什麼平臺?你能否添加對於那些想要回答的有用的細節? – Oded

+0

其使用Java技術構建的Web應用程序和數據本身可能會從數據庫或文件系統中獲取 – Joe

回答

0

有沒有辦法知道,如果該文件確實是

下載...完全沒有任何問題......

,你的客戶會告訴你擔任最後一個字節的事實沒有。考慮以下情況

  • 代理(代理服務器組)位於服務器和客戶端之間。當您成功關閉連接時,它只意味着文件到達鏈中的第一個代理
  • 使用任何合理的比例,您需要使用CDN網絡來傳送文件,當您將文件推送到CDN你的追蹤結束,現在你只能依靠他們提供給你的CDN通用統計信息
  • 成功發送最後一個字節(瀏覽器關閉,瀏覽器壓縮,磁盤錯誤)後,客戶端發生了一些事件,這實際上意味着客戶端無法看到文件

您可能想要做的是設計一些額外的步驟,需要在文件成功下載後進行中間步驟。然後你跟蹤那一步。這必須與您的產品綁定,並且會根據您所服務的文件類型和商業模式而大不相同。一些例子:

  • 對於大文件,考慮首先提供一個「下載軟件」,然後獲取所需的文件。如果發生任何中斷,它將恢復傳輸(用戶的價值)並向您報告(對您有價值)
  • 小型可執行文件 - 讓安裝程序ping您的服務器。只是一個簡單的HTTP GET不存在的頁面。然後,您在該服務器上收集訪問日誌,您可以將其包裝到安裝程序完成後啓動的反饋頁面中。如果用戶沒有反饋就關閉它,那麼你只需要計數
相關問題