国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于瀏覽器的多實例大文件上傳的處理方法

      文檔序號:7807365閱讀:743來源:國知局
      一種基于瀏覽器的多實例大文件上傳的處理方法
      【專利摘要】本發(fā)明涉及網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,尤其涉及一種基于瀏覽器的多實例大文件上傳的處理方法,其不同之處在于:1)選擇文件并保存到請求隊列中;2)請求隊列中的文件依次向服務(wù)發(fā)送上傳請求;3)服務(wù)器接收到上傳請求消息后,首先獲得文件大??;4)服務(wù)端讀取二進(jìn)制流數(shù)據(jù),根據(jù)設(shè)定的每次寫入大小將二進(jìn)制流分為多塊,每塊二進(jìn)制流服務(wù)器邊讀取邊寫入;5)當(dāng)請求隊列中的上傳請求發(fā)送成功后,瀏覽器端獲取上傳進(jìn)度并在頁面上顯示;6)瀏覽端接收成功處理結(jié)果后,請求隊列中下一個文件上傳請求。本發(fā)明通過瀏覽器端控制并發(fā)請求數(shù),并且改變服務(wù)器對文件讀取和寫入的方法,從而達(dá)到服務(wù)器對上傳并發(fā)處理能力的提升。
      【專利說明】一種基于瀏覽器的多實例大文件上傳的處理方法

      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明涉及網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,尤其涉及一種基于瀏覽器的多實例大文件上傳的處理 方法。

      【背景技術(shù)】
      [0002] 基于瀏覽器的文件上傳,是大多數(shù)基于瀏覽器程序都具備的功能。首先,基于瀏覽 器上傳的文件大小會受到服務(wù)器可用內(nèi)存的限制。特別是并發(fā)時,如果有過多的進(jìn)程同時 上傳文件,會導(dǎo)致服務(wù)器端內(nèi)存不足。另外,用戶無法實時看到上傳進(jìn)度,導(dǎo)致用戶體驗較 差。


      【發(fā)明內(nèi)容】

      [0003] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點,提供一種基于瀏覽器的多實例大文件上 傳的處理方法。
      [0004] 為解決以上技術(shù)問題,本發(fā)明的技術(shù)方案為:一種基于瀏覽器的多實例大文件上 傳的處理方法,其不同之處在于,其步驟包括:
      [0005] 1)用戶選擇文件時,對于不支持HTML5語言的瀏覽器,一次只能選擇一個文件,選 擇一個文件向請求隊列中保存一個上傳請求;對于支持HTML5語言的瀏覽器,一次可以選 擇多個文件,這時依次將選擇的文件保存到請求隊列中;
      [0006] 2)請求隊列中的文件依次向服務(wù)發(fā)送上傳請求,請求標(biāo)頭會包含一個文件大小信 息;當(dāng)一個文件正在上傳,其他上傳請求會處于等待狀態(tài);
      [0007] 3)服務(wù)器接收到上傳請求消息后,首先獲得文件大小;當(dāng)文件大小超過服務(wù)器端 設(shè)定上傳大小限制時,服務(wù)器返回文件過大的錯誤,客戶端接收到返回錯誤后,會執(zhí)行下一 個文件上傳請求;對于沒有超過大小限制的請求,服務(wù)端會開啟連接通道,接收上傳文件二 進(jìn)制流數(shù)據(jù);
      [0008] 4)服務(wù)端讀取二進(jìn)制流數(shù)據(jù),根據(jù)設(shè)定的每次寫入大小將二進(jìn)制流分為多塊,每 塊二進(jìn)制流服務(wù)器邊讀取邊寫入,同時更新服務(wù)端的上傳進(jìn)度變量;每塊二進(jìn)制流數(shù)據(jù)寫 入完畢,釋放當(dāng)前占用的服務(wù)器內(nèi)存;
      [0009] 5)當(dāng)請求隊列中的上傳請求發(fā)送成功后,瀏覽器端開始每個一秒請求服務(wù)端的上 傳進(jìn)度變量;獲取上傳進(jìn)度后,在頁面上顯示;
      [0010] 6)文件上傳請求在服務(wù)器處理完畢后,服務(wù)器即返回成功。瀏覽端接收成功處理 結(jié)果后,開始請求隊列中下一個文件上傳請求。
      [0011] 對比現(xiàn)有技術(shù),本發(fā)明的有益特點為:通過瀏覽器端控制并發(fā)請求數(shù),并且改變服 務(wù)器對文件讀取和寫入的方法,從而達(dá)到服務(wù)器對上傳并發(fā)處理能力的提升。同時,實時讀 取上傳進(jìn)度可以為用戶提供良好的用戶體驗。

      【專利附圖】

      【附圖說明】
      [0012] 圖1為本發(fā)明實施例的原理框圖。

      【具體實施方式】
      [0013] 下面通過【具體實施方式】結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)說明。
      [0014] 請參考圖1,本發(fā)明基于瀏覽器的多實例大文件上傳的處理方法,其步驟包括:
      [0015] 1)用戶選擇文件時,對于不支持HTML5語言的瀏覽器,一次只能選擇一個文件,選 擇一個文件向請求隊列中保存一個上傳請求;對于支持HTML5語言的瀏覽器,一次可以選 擇多個文件,這時依次將選擇的文件保存到請求隊列中;
      [0016] 2)請求隊列中的文件依次向服務(wù)發(fā)送上傳請求,請求標(biāo)頭會包含一個文件大小信 息;當(dāng)一個文件正在上傳,其他上傳請求會處于等待狀態(tài);
      [0017] 3)服務(wù)器接收到上傳請求消息后,首先獲得文件大小;當(dāng)文件大小超過服務(wù)器端 設(shè)定上傳大小限制時,服務(wù)器返回文件過大的錯誤,客戶端接收到返回錯誤后,會執(zhí)行下一 個文件上傳請求;對于沒有超過大小限制的請求,服務(wù)端會開啟連接通道,接收上傳文件二 進(jìn)制流數(shù)據(jù);
      [0018] 4)服務(wù)端讀取二進(jìn)制流數(shù)據(jù),根據(jù)設(shè)定的每次寫入大小將二進(jìn)制流分為多塊,每 塊二進(jìn)制流服務(wù)器邊讀取邊寫入,同時更新服務(wù)端的上傳進(jìn)度變量;每塊二進(jìn)制流數(shù)據(jù)寫 入完畢,釋放當(dāng)前占用的服務(wù)器內(nèi)存;
      [0019] 5)當(dāng)請求隊列中的上傳請求發(fā)送成功后,瀏覽器端開始每個一秒請求服務(wù)端的上 傳進(jìn)度變量;獲取上傳進(jìn)度后,在頁面上顯示;
      [0020] 6)文件上傳請求在服務(wù)器處理完畢后,服務(wù)器即返回成功。瀏覽端接收成功處理 結(jié)果后,開始請求隊列中下一個文件上傳請求。
      [0021] 在傳統(tǒng)的文件上傳方式中,服務(wù)器接收的文件上傳請求時,會將整個文件讀取到 內(nèi)存中,然后再寫入磁盤。因此,每個上傳進(jìn)程都會至少占用所上傳文件大小的內(nèi)存,所以 這會導(dǎo)致服務(wù)器可接收文件上傳的進(jìn)程并發(fā)數(shù)很小。因此本發(fā)明通過瀏覽器端控制并發(fā)請 求數(shù),在瀏覽器端將選擇的多個文件進(jìn)行排序和隊列處理,確保一個瀏覽器端一個只觸發(fā) 一個上傳請求,進(jìn)而一定程度的減少上傳并發(fā)數(shù);并且改變服務(wù)器對文件讀取和寫入的方 法,從而達(dá)到服務(wù)器對上傳并發(fā)處理能力的提升。
      [0022] 對于每個不同的上傳進(jìn)程,服務(wù)器需要保存各個進(jìn)程的文件寫入進(jìn)度,這樣瀏覽 器端就可通過各個進(jìn)程的標(biāo)識來查詢進(jìn)度,實時讀取上傳進(jìn)度可以為用戶提供良好的用戶 體驗。
      [0023] 以上內(nèi)容是結(jié)合具體的實施方式對本發(fā)明所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā) 明的具體實施只局限于這些說明。對于本發(fā)明所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員來說,在不脫 離本發(fā)明構(gòu)思的前提下,還可以做出若干簡單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護 范圍。
      【權(quán)利要求】
      1. 一種基于瀏覽器的多實例大文件上傳的處理方法,其特征在于,其步驟包括: 1) 用戶選擇文件時,對于不支持HTML5語言的瀏覽器,一次只能選擇一個文件,選擇一 個文件向請求隊列中保存一個上傳請求;對于支持HTML5語言的瀏覽器,一次可以選擇多 個文件,這時依次將選擇的文件保存到請求隊列中; 2) 請求隊列中的文件依次向服務(wù)發(fā)送上傳請求,請求標(biāo)頭會包含一個文件大小信息; 當(dāng)一個文件正在上傳,其他上傳請求會處于等待狀態(tài); 3) 服務(wù)器接收到上傳請求消息后,首先獲得文件大小;當(dāng)文件大小超過服務(wù)器端設(shè)定 上傳大小限制時,服務(wù)器返回文件過大的錯誤,客戶端接收到返回錯誤后,會執(zhí)行下一個文 件上傳請求;對于沒有超過大小限制的請求,服務(wù)端會開啟連接通道,接收上傳文件二進(jìn)制 流數(shù)據(jù); 4) 服務(wù)端讀取二進(jìn)制流數(shù)據(jù),根據(jù)設(shè)定的每次寫入大小將二進(jìn)制流分為多塊,每塊二 進(jìn)制流服務(wù)器邊讀取邊寫入,同時更新服務(wù)端的上傳進(jìn)度變量;每塊二進(jìn)制流數(shù)據(jù)寫入完 畢,釋放當(dāng)前占用的服務(wù)器內(nèi)存; 5) 當(dāng)請求隊列中的上傳請求發(fā)送成功后,瀏覽器端開始每個一秒請求服務(wù)端的上傳進(jìn) 度變量;獲取上傳進(jìn)度后,在頁面上顯示; 6) 文件上傳請求在服務(wù)器處理完畢后,服務(wù)器即返回成功。瀏覽端接收成功處理結(jié)果 后,開始請求隊列中下一個文件上傳請求。
      【文檔編號】H04L29/08GK104092741SQ201410298288
      【公開日】2014年10月8日 申請日期:2014年6月26日 優(yōu)先權(quán)日:2014年6月26日
      【發(fā)明者】王征平, 黃平, 韓騰飛, 陳杰, 蔡博丁 申請人:湖北安標(biāo)信息技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1