實用篇!Asp.Net數據傳輸壓縮


一、業務場景

  公司關鍵業務模塊之一考試系統試卷內容加載緩慢、加載失敗,前方人員哀聲四起,客戶投訴,各種爆炸!

 

二、問題分析

   1、試卷存儲采用文本文件方式存儲

     引發問題:並發情況下IO頻繁,造成過多的線程等待,致使Load越來越高。

   2、試卷內容一次性加載,內容偏大(400k+)

     引發問題:請求響應完成之后數據下載時間長,大大降低了系統吞吐量。

 

三、解決方案

  1>第一階段

      緩存試卷內容

    效果回饋:基本解決了試卷加載失敗問題,試卷加載依舊緩慢。

  2>第二階段

      壓縮回傳內容

    效果回饋:快!

 

四、基於第二階段的代碼片段及效果展示 

   1、前台代碼

   

   2、后台代碼

   

  3、關鍵代碼(壓縮文件)

  

  5、壓縮前效果

  

  6、壓縮后效果

  

 

五、說明

   1、出於一些原因不能重構代碼

   2、demo演示要部署到遠程服務器,本地測試看不出效果(本地下載時間毫秒級)

 

六、Demo下載

  source code


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM