項目:數據衛士

一、設計思想

    在學校使用百度網盤,每次下載文件的速度特別慢(下載文件電腦都要開一晚上),於是我有了一個想法,自己實現一個文件的上傳、備份、下載的小項目,給自己和舍友使用。

二、設計平臺

    windows下vs2013實現客戶端myClient,CentOS下實現服務端myServer和myCompress

 

三、設計內容

     1、客戶端

        1>獲取文件備份信息

        2>瀏覽目錄下文件信息

              (1)獲取文件名,計算文件的etag信息

              (2)通過文件備份信息,判斷文件是否需要備份

        3>文件備份

                 根據自己定義的分塊大小,將文件分塊上傳

      2、服務端

        1>使用httplib搭建http服務器

              (1)文件上傳備份處理

              (2)文件列表獲取功能

              (3)文件下載功能

        2>熱度較低的文件壓縮存儲

              (1)熱度比較低,根據當前時間減去文件最後一次訪問時間

              (2)文件壓縮,用zlib庫對文件實現gzip格式壓縮

              (3)用戶訪問已經壓縮存儲的文件

                       1.對文件進行解壓縮

                       2.將正常文件數據返回

四、項目流程圖

     

五、項目源碼

      https://github.com/ssh1222/Cplusplus/tree/master/數據衛士

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章