中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

wordpress數(shù)據(jù)庫(kù)大數(shù)據(jù)游戲行業(yè)seo整站優(yōu)化

wordpress數(shù)據(jù)庫(kù)大數(shù)據(jù),游戲行業(yè)seo整站優(yōu)化,知名商城網(wǎng)站建設(shè)多少錢,自己怎么設(shè)計(jì)證書模板文章目錄 0.回顧extern1.介紹2.實(shí)現(xiàn)思想3.代碼測(cè)試代碼 熱點(diǎn)管理總結(jié) 0.回顧extern extern cloudBackup::DataManager *_dataManager extern 關(guān)鍵字用于聲明一個(gè)全局變量或?qū)ο?amp;#xff0c;而不定義它。這意味著 _dataManager 是一個(gè)指向 cloudBackup::DataManager 類型的指針…

文章目錄

  • 0.回顧extern
  • 1.介紹
  • 2.實(shí)現(xiàn)思想
  • 3.代碼
    • 測(cè)試代碼
  • 熱點(diǎn)管理總結(jié)

0.回顧extern

在這里插入圖片描述
extern cloudBackup::DataManager *_dataManager

extern 關(guān)鍵字用于聲明一個(gè)全局變量或?qū)ο?#xff0c;而不定義它。這意味著 _dataManager 是一個(gè)指向 cloudBackup::DataManager 類型的指針,但它的定義(即實(shí)際內(nèi)存分配)在其他地方,而不是在當(dāng)前文件中

所以, 你可以理解為: 這行代碼告訴編譯器 _dataManager 是在其他文件中定義的,并且這個(gè)指針在另外文件中已經(jīng)初始化過了。這樣做的目的是讓當(dāng)前文件可以訪問 _dataManager,盡管它的定義是在另一個(gè)文件中

也就是說(shuō), _dataManager在HotManager.hpp中進(jìn)行聲明, 說(shuō)有一個(gè)_dataManager這個(gè)指針對(duì)象。 然后在test.cpp中進(jìn)行定義。

在test.cpp中 定義一個(gè)全局的 _dataManager

1.介紹

服務(wù)器端的熱點(diǎn)?件管理是對(duì)上傳的?熱點(diǎn)?件進(jìn)?壓縮存儲(chǔ),節(jié)省磁盤空間。
熱點(diǎn)?件的判斷在于上傳?件的最后?次訪問時(shí)間是否在熱點(diǎn)判斷時(shí)間之內(nèi),?如如果?個(gè)?件?天都沒有被訪問過我們就認(rèn)為這是?個(gè)?熱點(diǎn)?件,其實(shí)就是當(dāng)前系統(tǒng)時(shí)間,與?件最后?次訪問時(shí)間之間的時(shí)間差是否在?天之內(nèi)的判斷。
需要對(duì)上傳的?件每隔?段時(shí)間進(jìn)?熱點(diǎn)檢測(cè),相當(dāng)于遍歷上傳?件的存儲(chǔ)?件夾,找出所有的?件,然后通過對(duì)逐個(gè)?件進(jìn)?時(shí)間差的判斷,來(lái)逐個(gè)進(jìn)?熱點(diǎn)處理。
將上傳的?件存儲(chǔ)位置與壓縮后壓縮?件的存儲(chǔ)位置分開。這樣在遍歷上傳?件夾的時(shí)候不?于將壓縮過的?件?進(jìn)??熱點(diǎn)處理了。

關(guān)鍵點(diǎn):

上傳?件有??的上傳存儲(chǔ)位置,?熱點(diǎn)?件的壓縮存儲(chǔ)有??的存儲(chǔ)位置
遍歷上傳存儲(chǔ)位置?件夾,獲取所有?件信息。
獲取每個(gè)?件最后?次訪問時(shí)間,進(jìn)?完成是否熱點(diǎn)?件的判斷。
對(duì)?熱點(diǎn)?件進(jìn)?壓縮存儲(chǔ),刪除原來(lái)的未壓縮?件。

2.實(shí)現(xiàn)思想

熱點(diǎn)管理模塊: 對(duì)服務(wù)器上備份的文件進(jìn)行檢測(cè),哪些文件長(zhǎng)時(shí)間沒有被訪問,則認(rèn)為是非熱點(diǎn)文件,則壓縮存儲(chǔ),節(jié)省磁盤空間。

實(shí)現(xiàn)思路:

遍歷所有的文件,檢測(cè)文件的最后一次訪問時(shí)間,與當(dāng)前時(shí)間進(jìn)行相減得到差值,這個(gè)差值如果大于設(shè)定好的非熱點(diǎn)判斷時(shí)間則認(rèn)為是非熱點(diǎn)文件,則進(jìn)行壓縮存放到壓縮路徑中,刪除源文件。

法一:遍歷數(shù)據(jù)管理模塊中backupAInfo.dat

  1. 從數(shù)據(jù)管理模塊中遍歷所有的備份文件信息
  2. 遍歷備份文件夾,獲取所有的文件進(jìn)行屬性獲取,最終判斷

法二:直接遍歷備份文件夾backupDir。

遍歷文件夾,每次獲取文件的最新數(shù)據(jù)進(jìn)行判斷,并且還可以解決數(shù)據(jù)信息缺漏的問題

  1. 遍歷備份目錄,獲取所有文件路徑名稱
  2. 逐個(gè)獲取最后一次訪問時(shí)間與當(dāng)前系統(tǒng)時(shí)間進(jìn)行比較判斷
  3. 對(duì)非熱點(diǎn)文件進(jìn)行壓縮處理,刪除源文件
  4. 修改數(shù)據(jù)管理模塊對(duì)應(yīng)的文件信息(壓縮標(biāo)志->true)

3.代碼

#ifndef __MY_HOT__
#define __MY_HOT__
#include <unistd.h>
#include <memory>
#include "dataManager.hpp"//在多個(gè)文件中使用 _dataManager 確保它在每個(gè)文件中都被聲明為extern 但只在一個(gè)源文件中被定義
//聲明全局變量_dataManager 在其他文件中定義 
//extern cloudBackup::DataManager *_dataManager;
extern std::shared_ptr<cloudBackup::DataManager> _dataManager;namespace cloudBackup
{class HotManager{private:std::string _backupDir; // 備份文件路徑std::string _zipDir;	// 壓縮文件路徑std::string _zipSuffix; // 壓縮文件后綴int _hotTime;			// 熱點(diǎn)判定時(shí)間間隔// 熱點(diǎn)文件-返回真bool isHot(const std::string &filename){FileUtil fileUtil(filename);time_t last_atime = fileUtil.LastATime();time_t cur_time = time(NULL);if (cur_time - last_atime > _hotTime)return false;return true;}public:HotManager(){Config *config = Config::GetInstance();_backupDir = config->GetBackupDir();_zipDir = config->GetZipDir();_zipSuffix = config->GetZipSuffix();_hotTime = config->GetHotTime();//QFileUtil tmp1(_backupDir);FileUtil tmp2(_zipDir);tmp1.CreateDirectory();tmp2.CreateDirectory();}// 死循環(huán)bool RunHotManager(){while (true){// 1. 遍歷備份目錄 獲取所有文件名FileUtil fileUtil(_backupDir);std::vector<std::string> array;fileUtil.ScanDirectory(&array);// 2. 遍歷判斷文件是否是熱點(diǎn)文件for (auto &file : array){if (isHot(file) == true) // 熱點(diǎn)文件則不需要特別處理continue;// 3. 獲取文件的備份信息BackupAInfo info;// 文件存在 但hashmap中沒有備份信息 考慮差錯(cuò):設(shè)置該文件的備份信息if (_dataManager->GetOneByFileName(file, &info) == false)info.NewBackupAInfo(file);// 3. 對(duì)非熱點(diǎn)文件進(jìn)行壓縮處理FileUtil tmp(file);tmp.Compress(info._zipPath);// 4. 刪除源文件 修改備份信息tmp.Remove();info._isZipped = true;_dataManager->Update_Table(info);}usleep(1000); // 避免空目錄循環(huán)遍歷 消耗cpu資源過高}return true;}};
}#endif //__MY_HOT__

測(cè)試代碼

#include "fileUtil.hpp"
#include "jsonUtil.hpp"
#include "config.hpp"
#include "dataManager.hpp"
#include "hotManager.hpp"
// #include "service.hpp"
#include <thread>
using namespace std;// 聲明全局指針對(duì)象 如果聲明為局部的
// 當(dāng)出了作用域 生命周期截止 指針對(duì)象銷毀 堆空間泄露
// cloudBackup::DataManager *_dataManager;
std::shared_ptr<cloudBackup::DataManager> _dataManager;
void HotTest()
{cloudBackup::HotManager hot;hot.RunHotManager();
}
int main(int argc, char *argv[])
{//_dataManager 的定義在程序其他部分嘗試訪問它之前就已經(jīng)完成std::shared_ptr<cloudBackup::DataManager> ptr(new cloudBackup::DataManager());_dataManager = ptr;HotTest();return 0;
}

熱點(diǎn)管理總結(jié)

對(duì)備份的文件進(jìn)行檢測(cè),哪些文件長(zhǎng)時(shí)間沒有被訪問,則認(rèn)為是非熱點(diǎn)文件,對(duì)其壓縮存儲(chǔ),節(jié)省磁盤空間。

  1. 遍歷備份目錄 獲取所有文件名
  2. 遍歷判斷文件是否是熱點(diǎn)文件
  3. 對(duì)非熱點(diǎn)文件進(jìn)行壓縮處理
  4. 刪除源文件 修改備份信息

在這里插入圖片描述

http://www.risenshineclean.com/news/49685.html

相關(guān)文章:

  • 網(wǎng)站頂部有空白產(chǎn)品推銷
  • 東莞網(wǎng)站優(yōu)化電話域名解析查詢工具
  • 淮北做網(wǎng)站的公司有哪些怎么開網(wǎng)站平臺(tái)
  • 天津網(wǎng)絡(luò)推廣培訓(xùn)seo手機(jī)排名軟件
  • 北京市建設(shè)官方網(wǎng)站泉州seo報(bào)價(jià)
  • 上海網(wǎng)站制作公司的排名免費(fèi)seo教程分享
  • 十堰高端網(wǎng)站建設(shè)武漢seo計(jì)費(fèi)管理
  • 彩票網(wǎng)站里的統(tǒng)計(jì)怎么做太原seo建站
  • 怎么免費(fèi)制作網(wǎng)站平臺(tái)銷售人員培訓(xùn)課程有哪些
  • 怎么在word添加wordpress長(zhǎng)沙seo網(wǎng)絡(luò)公司
  • 北京高端網(wǎng)站定制公司哪家好關(guān)鍵詞排名優(yōu)化技巧
  • 網(wǎng)站建設(shè)的軟件平臺(tái)如何做seo搜索引擎優(yōu)化
  • 樂清柳市網(wǎng)站建設(shè)公司百度網(wǎng)站名稱及網(wǎng)址
  • 出國(guó)游做的好的網(wǎng)站搜百度盤
  • 佛山模板網(wǎng)站建站網(wǎng)站推廣哪家好
  • 新聞網(wǎng)站策劃方案軟文推廣案例
  • 網(wǎng)站建設(shè)設(shè)計(jì)公司磁力吧ciliba
  • 公司內(nèi)部網(wǎng)站開發(fā)桂林seo
  • 全國(guó)二級(jí)建造師查詢官網(wǎng)廣州專門做seo的公司
  • 試題wordpress的特點(diǎn)成都純手工seo
  • 網(wǎng)站自定義鏈接怎么做的微信搜一搜怎么做推廣
  • 東莞市專注網(wǎng)站建設(shè)服務(wù)機(jī)構(gòu)網(wǎng)絡(luò)營(yíng)銷成功案例
  • 網(wǎng)站多久會(huì)被百度收錄整合營(yíng)銷的特點(diǎn)有哪些
  • 網(wǎng)站建設(shè)有什么崗位職責(zé)網(wǎng)絡(luò)營(yíng)銷策劃方案書
  • 網(wǎng)站開發(fā)需要什么配置的電腦如何交換友情鏈接
  • 注冊(cè)完域名怎么做網(wǎng)站正規(guī)優(yōu)化公司哪家好
  • 免費(fèi)網(wǎng)站建設(shè)seo西安疫情最新數(shù)據(jù)消息中高風(fēng)險(xiǎn)地區(qū)
  • 網(wǎng)站信息化建設(shè)總體情況百度大搜
  • 網(wǎng)站方案策劃書如何建網(wǎng)站
  • 做喜報(bào)的網(wǎng)站品牌營(yíng)銷策略論文