亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Linux下高效可靠的應(yīng)用同步升級(jí)技術(shù)

        2020-05-11 11:22:30王耀華劉詠霖
        關(guān)鍵詞:資源用戶系統(tǒng)

        ◆王耀華 劉詠霖 張 磊

        Linux下高效可靠的應(yīng)用同步升級(jí)技術(shù)

        ◆王耀華1劉詠霖2張 磊1

        (1.武漢深之度科技有限公司研發(fā)中心 北京 10080;2.武漢深之度科技有限公司技術(shù)部 北京 10080)

        為了能夠向用戶提供既可靠又高效的系統(tǒng)及軟件更新方法,我們?cè)O(shè)計(jì)了以鏡像源管理服務(wù)器為主的軟件更新方案。本文詳細(xì)介紹了鏡像源管理服務(wù)器技術(shù)的設(shè)計(jì)方案,并對(duì)技術(shù)方案進(jìn)行了理論分析,對(duì)技術(shù)方案的驗(yàn)證方法和驗(yàn)證結(jié)論做了詳細(xì)的分析和說明。鏡像源管理服務(wù)器技術(shù)在實(shí)現(xiàn)中,相較于當(dāng)前Linux通用的鏡像源更新方案,能夠避免單一鏡像源更新不夠及時(shí)的問題、源服務(wù)器網(wǎng)絡(luò)負(fù)載過高問題,為用戶提供穩(wěn)定且快速的資源下載。

        鏡像源;apt;系統(tǒng)及軟件更新

        1 簡(jiǎn)介

        本設(shè)計(jì)可分為兩部分:鏡像源管理和客戶端下載優(yōu)化。其中,鏡像源管理主要是通過采集鏡像源的流量情況來確定關(guān)鍵鏡像源,當(dāng)官方資源出現(xiàn)更新時(shí),優(yōu)先提示關(guān)鍵鏡像源進(jìn)行資源同步??蛻舳讼螺d優(yōu)化主要是根據(jù)當(dāng)前各鏡像源的下載情況來確定最優(yōu)鏡像站列表,指示客戶端向最優(yōu)鏡像站請(qǐng)求資源,以使客戶端實(shí)現(xiàn)穩(wěn)定、快速的資源下載。

        2 技術(shù)背景

        目前,基于Linux的大部分操作系統(tǒng)在系統(tǒng)和應(yīng)用升級(jí)方案中都是采用單一鏡像站更新的升級(jí)方式,系統(tǒng)服務(wù)商首先同步更新資源到官方鏡像站,其他非官方鏡像站再?gòu)墓俜界R像站同步。但是用戶只能單一地從某個(gè)鏡像站更新系統(tǒng)和應(yīng)用,隨著鏡像站的不斷增加,系統(tǒng)用戶的不斷積累,單一的鏡像站已經(jīng)無(wú)法滿足系統(tǒng)和應(yīng)用的正常升級(jí),而非官方鏡像站又有更新不及時(shí)、用戶體驗(yàn)不佳或者根本無(wú)法使用的問題,給用戶系統(tǒng)和應(yīng)用升級(jí)造成困難。

        2.1 設(shè)計(jì)思想

        當(dāng)今通常采用的技術(shù)方案為,官方同步更新資源到鏡像非官方鏡像站會(huì)定期主動(dòng)同步官方鏡像站資源,用戶通過修改鏡像站地址,切換到網(wǎng)絡(luò)情況較好的鏡像站下載更新系統(tǒng)和應(yīng)用。此方案會(huì)造成如下缺陷:

        (1)無(wú)法確保非官方鏡像站的同步情況,可能存在同步不完整的情況;

        (2)無(wú)法確保優(yōu)質(zhì)的網(wǎng)絡(luò)資源;

        (3)當(dāng)單一的鏡像站太多人使用后,寬帶無(wú)法滿足日益增長(zhǎng)的用戶需求;

        (4)鏡像站的同步時(shí)間不同,造成用戶接受更新的時(shí)間也不同。

        為解決現(xiàn)通用技術(shù)暴露的缺點(diǎn),我們采用建立鏡像源管理服務(wù)器的方法,此技術(shù)方案主要是通過對(duì)鏡像站流量、鏈接數(shù)量及網(wǎng)絡(luò)情況進(jìn)行分析,在服務(wù)端上面做選擇,生成最優(yōu)鏡像站集合,客戶端用戶在不用人工參與選擇的情況下面,通過智能算法優(yōu)先選擇最優(yōu)鏡像站點(diǎn)集合,再通過分布式算法,確保用戶能夠通過最優(yōu)鏡像站集合,分布式下載,快速高效完成系統(tǒng)和應(yīng)用的升級(jí)。

        3 具體設(shè)計(jì)

        3.1 技術(shù)方案

        現(xiàn)有技術(shù)方案系統(tǒng)結(jié)構(gòu)如圖1所示。

        現(xiàn)有方案的資源更新過程如下:

        鏡像源A~C是官方資源站的鏡像站,鏡像源A~C按照預(yù)設(shè)的周期(例如每x小時(shí)同步一次)分別從官方資源站同步資源(系統(tǒng)或應(yīng)用)。當(dāng)有資源更新時(shí),系統(tǒng)服務(wù)商130將更新后的系統(tǒng)或應(yīng)用上傳至官方資源站服務(wù)器110,服務(wù)器110將更新后的系統(tǒng)或應(yīng)用文件存儲(chǔ)到軟件倉(cāng)庫(kù)120。當(dāng)用戶有更新系統(tǒng)或軟件的需求時(shí),需要從多個(gè)鏡像源(官方站或鏡像源A~C)中手動(dòng)選擇一個(gè),向選中的鏡像源服務(wù)器發(fā)起下載請(qǐng)求,并接收服務(wù)器返回的數(shù)據(jù)。

        由于各鏡像源設(shè)定的同步時(shí)間與官方資源站的更新時(shí)間存在時(shí)間差,且鏡像源可能出現(xiàn)同步失敗的情況,因此,不能保證鏡像源A~C的軟件倉(cāng)庫(kù)120A~120C時(shí)刻與官方軟件倉(cāng)庫(kù)120中的數(shù)據(jù)保持一致,用戶可能出現(xiàn)下載失敗的情況。當(dāng)下載失敗時(shí),用戶需要手動(dòng)更換鏡像源,向更換后的鏡像源再次發(fā)起下載請(qǐng)求。

        圖1 現(xiàn)有技術(shù)方案系統(tǒng)結(jié)構(gòu)

        為針對(duì)現(xiàn)有技術(shù)中存在的問題做出了相應(yīng)的改進(jìn)。改進(jìn)后的系統(tǒng)結(jié)構(gòu)圖如圖2所示。

        本方案分為服務(wù)端和客戶端。

        服務(wù)端是根據(jù)鏡像站得到各種維度的數(shù)據(jù),輔助判斷版本發(fā)布和更新的時(shí)間節(jié)點(diǎn),以及軟件倉(cāng)庫(kù)的實(shí)際情況,確保用戶能夠在同一時(shí)間快速地從不同服務(wù)器分流更新系統(tǒng)和應(yīng)用。

        服務(wù)端分為:倉(cāng)庫(kù)流量分析和鏡像源管理兩個(gè)部分,倉(cāng)庫(kù)流量分析主要是對(duì)所有的鏡像源的流量(邏輯流量)、實(shí)際流量進(jìn)行統(tǒng)計(jì),并對(duì)各鏡像站的使用量進(jìn)行統(tǒng)計(jì)。

        上文中所述的邏輯流量,是指通過當(dāng)前用戶裝機(jī)量和本次推送更新數(shù)據(jù)大小,以及當(dāng)前鏡像站的使用比例,計(jì)算出邏輯上,當(dāng)前鏡像站向客戶端傳輸速率和使用總流量;實(shí)際流量,是根據(jù)官方鏡像的日志文件,統(tǒng)計(jì)出選定時(shí)間維度下,官方鏡像所使用的流量。例如,一次更新持續(xù)10了分鐘,我們讀取最近10分鐘的日志文件,計(jì)算這些日志文件所發(fā)送的數(shù)據(jù)量總和,然后將數(shù)據(jù)量總和除以時(shí)長(zhǎng)(10分鐘),就是鏡像站的實(shí)際流量。

        此方案的革新點(diǎn)在于改進(jìn)了apt客戶端,并設(shè)置了相應(yīng)的鏡像源管理服務(wù)器150。管理服務(wù)器150可以獲取各鏡像源的當(dāng)前狀態(tài),并從中選取一些鏡像源為最優(yōu)鏡像源,然后形成列表。當(dāng)用戶有更新系統(tǒng)或軟件的需求時(shí),客戶端向管理服務(wù)器150發(fā)起下載請(qǐng)求,改進(jìn)的apt會(huì)測(cè)試多個(gè)最優(yōu)鏡像列表,根據(jù)最適合當(dāng)前用戶網(wǎng)絡(luò)狀態(tài)的最優(yōu)鏡像源,從中獲取一個(gè)更加準(zhǔn)確的列表信息。管理服務(wù)器將會(huì)此列表返回給客戶端,隨后客戶端再向最優(yōu)鏡像源請(qǐng)求資源。最優(yōu)鏡像源出現(xiàn)異常時(shí),客戶端將異常情況上報(bào)給管理服務(wù)器150,管理服務(wù)器重新為客戶端指定一個(gè)最優(yōu)鏡像源,客戶端向新的最優(yōu)鏡像源請(qǐng)求資源。

        圖2 改進(jìn)后的系統(tǒng)結(jié)構(gòu)

        3.2 鏡像源管理服務(wù)器

        鏡像源管理主要的作用是管理已有的鏡像站、新增鏡像站,以及對(duì)鏡像站的同步狀態(tài)進(jìn)行監(jiān)控。每次發(fā)布系統(tǒng)和應(yīng)用更新的時(shí)候,對(duì)關(guān)鍵鏡像源的狀態(tài)進(jìn)行管理,并依據(jù)狀態(tài)進(jìn)行發(fā)布確認(rèn)。

        圖3 鏡像源管理服務(wù)

        已有鏡像源是一個(gè)集合,從中可以挑選最優(yōu)鏡像源列表,沒有記錄在鏡像源管理工具的鏡像經(jīng)過測(cè)試都可以被加入,標(biāo)記為新增鏡像源,新增鏡像源則要經(jīng)過一段時(shí)間的測(cè)試和使用,才能進(jìn)入最優(yōu)鏡像源列表。

        對(duì)于鏡像源同步進(jìn)度的檢測(cè),因?yàn)殓R像源技術(shù)方式不同,cdn會(huì)存在不同ip的站點(diǎn),我們?cè)赾dn類檢測(cè)的時(shí)候會(huì)檢測(cè)每個(gè)站點(diǎn)的實(shí)際情況。

        3.3 客戶端下載器的優(yōu)化

        客戶端通過對(duì)Linux下載器(apt)進(jìn)行優(yōu)化,不再單一地從固定鏡像站獲取資源,而是優(yōu)先選擇服務(wù)端生成的最優(yōu)鏡像站集合,即從獲取到的最優(yōu)鏡像源列表中進(jìn)行本地測(cè)試,再利用我們?cè)O(shè)計(jì)的算法通過下載次數(shù),下載出錯(cuò)次數(shù),下載延時(shí)等信息在系統(tǒng)后端判斷出的、資源狀態(tài)最好的鏡像源列表。如果當(dāng)前鏡像站同步進(jìn)度不為100% 是不會(huì)統(tǒng)計(jì)到最優(yōu)鏡像源列表。當(dāng)某個(gè)資源下載異常時(shí)及時(shí)切換到其他優(yōu)質(zhì)下載資源上面,并且上報(bào)異常鏡像站點(diǎn)。

        如果出現(xiàn)下載資源切換,網(wǎng)絡(luò)中斷等情況導(dǎo)致下載終止,此設(shè)計(jì)也支持?jǐn)帱c(diǎn)續(xù)傳,并且為保證網(wǎng)絡(luò)的通暢性,本設(shè)計(jì)采用分布式下載。分布式下載是指一次更新或下載,同時(shí)使用5個(gè)本地測(cè)試篩選的最優(yōu)鏡像源列表集??蛻舳送瑫r(shí)向多個(gè)鏡像站請(qǐng)求資源。

        部分核心代碼如下:

        GuestURI(const std::string& uri)

        {

        if(uri.substr(0, strlen("http")) != "http") {

        return uri;

        }

        static bool debug = _config->FindB("Acquire::SmartMirrors::Debug");

        static bool enabled = _config->FindB("Acquire::SmartMirrors::Enable");

        if (!enabled) {

        if (debug) {

        std::clog << "SmartMirrors is disabled." << std::endl;

        }

        return uri;

        }

        static string official = normalizeURI(_config->Find("Acquire::SmartMirrors::MainSource"));

        static string mirror = normalizeURI(_config->Find("Acquire::SmartMirrors::MirrorSource"));

        static string detector = _config->Find("Acquire::SmartMirrors::GuestURI");

        static bool exists = FileExists(detector);

        if (!exists) {

        return uri;

        }

        string cmd = detector + " " + uri + " " + official + " " + mirror;

        std::tr1::shared_ptr out(popen(cmd.c_str(), "r"), pclose);

        if (!out) {

        return uri;

        }

        char buffer[1024] = {0};

        std::string result = "";

        while (!feof(out.get())) {

        if (fgets(buffer, 1024, out.get()) != NULL)

        result += buffer;

        }

        if(result.substr(0, strlen("http")) != "http") {

        return uri;

        }

        if (debug && result != uri) {

        printf("Using '%s' instead of '%s' ", result.c_str(), uri.c_str());

        }

        return result;

        }

        3.4 技術(shù)優(yōu)勢(shì)

        通過本技術(shù)方案,可以解決在有限寬帶資源和鏡像站的情況下,集合社區(qū)資源,解決Linux桌面操作系統(tǒng)在各種復(fù)雜網(wǎng)絡(luò)環(huán)境下,都能及時(shí)高效完成系統(tǒng)和應(yīng)用的升級(jí)。避免了當(dāng)用戶需要升級(jí)軟件,但鏡像源更新不足的情況,以及為用戶提供干凈便捷的軟件升級(jí)渠道,保障了用戶系統(tǒng)更新前后安全性和易管理性。

        對(duì)比Windows平臺(tái),其軟件安裝和更新最容易捆綁惡意插件,本技術(shù)通過統(tǒng)一的鏡像源管理服務(wù)器,保證了軟件更新的純凈,不僅保障了用戶操作系統(tǒng)的整潔,也不會(huì)有惡意插件使機(jī)器性能降低,運(yùn)用此技術(shù),也可有效地解決應(yīng)用軟件間的兼容問題和依賴問題,給用戶提供最方便易用的應(yīng)用部署策略,同時(shí)用戶也不必?fù)?dān)心安裝的軟件內(nèi)含惡意插件的情況。

        [1]薛輝輝,孫偉,王大歲. 一種linux操作系統(tǒng)的調(diào)試方法[M].西安電子科技大學(xué)出版社,2016.

        猜你喜歡
        資源用戶系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        基礎(chǔ)教育資源展示
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        一樣的資源,不一樣的收獲
        資源回收
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        資源再生 歡迎訂閱
        資源再生(2017年3期)2017-06-01 12:20:59
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        性色av闺蜜一区二区三区| 男吃奶玩乳尖高潮视频| 天天躁夜夜躁狠狠躁婷婷| 亚洲av无码一区二区三区网址| a级毛片100部免费观看| 一区二区传媒有限公司| 久久亚洲Av无码专区| 欧美性性性性性色大片免费的| 国产成人精品午夜福利在线 | 极品粉嫩小泬无遮挡20p| 日韩精品一区二区三区视频| 老色鬼永久精品网站| 中文字幕日本熟妇少妇| 白白在线免费观看视频| 日本一区二区视频在线| 风情韵味人妻hd| ā片在线观看免费观看| 中文无码成人免费视频在线观看| 狠狠丁香激情久久综合| 中文字幕久久熟女人妻av免费| 国产一区二区三区 在线观看| 久久亚洲av成人无码电影| 一本色道久久88综合日韩精品| 日韩精品无码一区二区中文字幕 | 亚洲全国最大的人成网站| 全亚洲高清视频在线观看 | 久久麻豆精品国产99国产精| 亚洲欧洲日韩另类自拍| 国产精品不卡免费版在线观看| 日本一区二区视频免费在线看| 又色又爽又高潮免费视频国产| 99精产国品一二三产品香蕉| 久久精品无码一区二区三区不 | 国产精品高清一区二区三区人妖| 亚洲女同同性一区二区| 国产办公室秘书无码精品99| 亚洲人成人77777网站| 99久久国内精品成人免费| 国产激情小视频在线观看| 久久777国产线看观看精品 | 欧美日韩一区二区三区自拍|