智慧型雲儲存系統

2021-09-25 18:55:47 字數 2078 閱讀 1264

github原始碼:智慧型雲儲存系統目錄專案介紹

流程框架

客戶端服務端

客戶端設計

功能設計

介面服務端設計

功能設計

介面總體流程

客戶端對指定目錄進行監控,如果目錄下產生了新檔案或者目錄下的檔案被修改了就自動備份到伺服器上,基於http協議的put請求上傳採用多執行緒,分塊傳輸的方式,提高上傳效率。

伺服器基於httplib搭建http伺服器,給使用者提供訪問檔案列表,上傳檔案等功能,採用多執行緒的方式測目錄如果是太久沒有訪問的(熱度低)檔案,進行壓縮處理,節省伺服器磁碟空間。

客戶端通過三個模組實現:目錄檔案檢測監控模組、檔案上傳備份模組、檔案本分資訊記錄模組。

客戶端流程圖

服務端分為對客戶端服務模組,檔案壓縮模組

服務端流程

1、首先是有乙個目錄下檔案檢測的功能,判斷其是否需要備份

2、對於需要備份的檔案,分塊上傳到伺服器上

1、在程式執行環境下建立 backupinfo.txt 檔案,用於記錄檔案最後大小和最後寫入時間

2、程式一開始,就將backupinfo.txt中的資訊讀入到記憶體中,鑑別是否需備份。

3、對於需要備份的檔案,基於http的put請求,採用多執行緒分塊傳輸的方式上傳到伺服器上

4、備份成功後修改記憶體中的記錄資訊,在伺服器返回狀態為200 ok的時候,寫入到backupinfo.txt中。

class cloudclient

;

服務端的設計主要是兩大模組,對客戶端服務模組,乙個是,檔案上傳後處理模組。

兩個模組多執行緒的方式實現。

客戶端服務模組實現:server.h

;檔案壓縮模組實現:compressserver.h

#pragma once

#include#include#include#include#include#include#include#include#include#include#include#include#include#define compress_dir "mroot/zip/"

#define gunzip_dir "mroot/list"

#define commpress_file_conf "comconf.txt"

#define heat_time 60

namespace bf = boost::filesystem;

//壓縮服務

智慧型儲存系統概念解析

原文出處 emc中文支援論壇 智慧型儲存系統是配置了多塊硬碟和大量記憶體,並提供多條 i o通路,擁有智慧型作業系統的儲存陣列。它採用複雜的演算法來實現最優化的儲存資源處理,以滿足高效能需求的應用程式。本文將介紹 智慧型儲存系統的組成部件。一般來說,前端 快取 後端和物理磁碟四部分構成乙個智慧型儲存...

七牛雲檔案儲存系統

使用 vue 上傳到七牛雲 推薦使用 使用 django 上傳到七牛雲 pip install qiniu在 後端 django 獲取七牛token from qiniu import auth class qiniu apiview def get self,request 宣告秘鑰物件 對應七牛...

雲硬碟與雲儲存(物件儲存)

雲硬碟是可以掛載到雲主機上,和物理硬碟一樣使用。雲儲存則類似於網盤一樣。兩者聽起來差不多,但實際上,無論在應用場景,還是設計上,都有挺大的區別。1 可靠性 雲硬碟相當於raid1的標準,偏重模擬硬碟的效能。而雲儲存提供簡單的api 程式設計模型和資料模型 可以提供key value pair的資料儲...