基于fota升級(jí)的穩(wěn)定處理方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其是涉及一種基于FOTA升級(jí)的穩(wěn)定處理方法和裝置。
【背景技術(shù)】
[0002]FOTA升級(jí)(Firmware Over-the-Air,固件空中升級(jí))技術(shù),主要是指一種通過空中接口遠(yuǎn)程管理、更新終端設(shè)備中固件的技術(shù)。通過FOTA升級(jí)操作,不僅僅可以下載升級(jí)應(yīng)用軟件,也可以更新設(shè)備的操作系統(tǒng)。這樣,F(xiàn)OTA升級(jí)操作使設(shè)備制造商能夠通過網(wǎng)絡(luò)將升級(jí)包發(fā)送到用戶的終端設(shè)備中,從而對(duì)固件、軟件進(jìn)行升級(jí),不但方便了用戶,也為設(shè)備制造商節(jié)約了成本。
[0003]在現(xiàn)有的終端設(shè)備的FOTA升級(jí)過程中,F(xiàn)OTA服務(wù)器會(huì)與終端設(shè)備進(jìn)行多次的交互,并且會(huì)在交互的過程中對(duì)終端設(shè)備的相關(guān)信息進(jìn)行多次的同步持久化存儲(chǔ)。在大量的終端用戶進(jìn)行并發(fā)的FOTA升級(jí)時(shí),由于持久化一般通過傳統(tǒng)的數(shù)據(jù)庫存儲(chǔ)在硬盤中,而硬盤1的性能瓶頸比較大,造成FOTA系統(tǒng)的處理壓力增大,處理速度降低,響應(yīng)效率急速下降,給用戶體驗(yàn)帶來了嚴(yán)重的影響。
[0004]為了解決前述問題,發(fā)明人提出了一種FOTA數(shù)據(jù)的分布式持久化管理方法,該方法的具體處理流程為:首先通過FOTA服務(wù)器獲取各終端用戶的唯一標(biāo)識(shí)令牌,并根據(jù)唯一標(biāo)識(shí)令牌獲取對(duì)應(yīng)的有序隊(duì)列;然后通過分布式緩存裝置將各終端用戶的FOTA數(shù)據(jù)存儲(chǔ)到對(duì)應(yīng)的有序隊(duì)列中;接著通過分布式持久化管理裝置從有序隊(duì)列中獲取各終端用戶的FOTA數(shù)據(jù),并對(duì)FOTA數(shù)據(jù)進(jìn)行合并處理;最后通過分布式持久化管理裝置根據(jù)唯一標(biāo)識(shí)令牌獲取對(duì)應(yīng)的分布式數(shù)據(jù)庫,將處理后的FOTA數(shù)據(jù)存儲(chǔ)到對(duì)應(yīng)的分布式數(shù)據(jù)庫中。從而,使得原本數(shù)據(jù)庫的同步操作成為了異步操作,在FOTA升級(jí)的整個(gè)交互過程中,同步FOTA數(shù)據(jù)的操作均在內(nèi)存中完成,異步進(jìn)行數(shù)據(jù)庫的交互操作,實(shí)現(xiàn)了對(duì)FOTA數(shù)據(jù)的延遲異步處理,提高了系統(tǒng)的處理速度和響應(yīng)效率,提升了系統(tǒng)性能。
[0005]然而,當(dāng)出現(xiàn)大量終端用戶進(jìn)行升級(jí)訪問時(shí),分布式持久化管理裝置與分布式數(shù)據(jù)庫交互有可能會(huì)出現(xiàn)阻塞,進(jìn)而使得分布式緩存裝置內(nèi)部的多個(gè)有序隊(duì)列的容量倍增而導(dǎo)致內(nèi)存耗盡,最終造成整個(gè)FOTA服務(wù)不可用,從而影響FOTA升級(jí)的穩(wěn)定性。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的主要目的在于提供一種基于FOTA升級(jí)的穩(wěn)定處理方法和裝置,旨在提高FOTA升級(jí)的穩(wěn)定性。
[0007]為達(dá)以上目的,本發(fā)明提出一種基于FOTA升級(jí)的穩(wěn)定處理方法,包括步驟:
[0008]穩(wěn)定處理裝置在初始啟動(dòng)時(shí)生成一定數(shù)量的信號(hào)量,并根據(jù)所述信號(hào)量控制發(fā)送給FOTA服務(wù)器的升級(jí)請求的并發(fā)數(shù)量;
[0009]穩(wěn)定處理裝置檢測分布式緩存裝置中各有序隊(duì)列的長度,據(jù)此計(jì)算出FOTA數(shù)據(jù)的增長率;
[0010]穩(wěn)定處理裝置根據(jù)所述FOTA數(shù)據(jù)的增長率動(dòng)態(tài)調(diào)整所述信號(hào)量的數(shù)量。
[0011]優(yōu)選地,所述穩(wěn)定處理裝置檢測分布式緩存裝置中各有序隊(duì)列的長度,據(jù)此計(jì)算出FOTA數(shù)據(jù)的增長率,包括:
[0012]穩(wěn)定處理裝置每隔單位時(shí)間檢測一次分布式緩存裝置中各有序隊(duì)列的長度;
[0013]穩(wěn)定處理裝置根據(jù)公式S= (Ln-LlriVLlrix10^計(jì)算出FOTA數(shù)據(jù)的增長率,其中,S為FOTA數(shù)據(jù)的增長率,Ln為本次檢測的所有有序隊(duì)列的長度之和,L n_i為前一次檢測的所有有序隊(duì)列的長度之和。
[0014]優(yōu)選地,所述計(jì)算出FOTA數(shù)據(jù)的增長率的步驟之后還包括:
[0015]當(dāng)所述FOTA數(shù)據(jù)的增長率超過預(yù)設(shè)閾值時(shí),穩(wěn)定處理裝置根據(jù)所述FOTA數(shù)據(jù)的增長率對(duì)所述分布式緩存裝置中的有序隊(duì)列進(jìn)行數(shù)據(jù)丟棄處理。
[0016]優(yōu)選地,所述根據(jù)所述信號(hào)量控制發(fā)送給FOTA服務(wù)器的升級(jí)請求的并發(fā)數(shù)量包括:
[0017]穩(wěn)定處理裝置接收終端用戶向FOTA服務(wù)器發(fā)送的升級(jí)請求,并為每一升級(jí)請求獲取一信號(hào)量;
[0018]當(dāng)所述升級(jí)請求獲取信號(hào)量成功時(shí),穩(wěn)定處理裝置則將所述升級(jí)請求發(fā)送給FOTA服務(wù)器;
[0019]當(dāng)所述升級(jí)請求獲取信號(hào)量失敗時(shí),穩(wěn)定處理裝置則不予發(fā)送所述升級(jí)請求給FOTA服務(wù)器。
[0020]優(yōu)選地,所述為每一升級(jí)請求獲取一信號(hào)量的步驟之后還包括:
[0021]當(dāng)所述升級(jí)請求獲取信號(hào)量失敗時(shí),穩(wěn)定處理裝置則將所述升級(jí)請求加入到等待隊(duì)列,并定時(shí)輪訓(xùn)所述等待隊(duì)列,為所述升級(jí)請求重新獲取信號(hào)量。
[0022]本發(fā)明同時(shí)提出一種基于FOTA升級(jí)的穩(wěn)定處理裝置,包括穩(wěn)定過濾器模塊和穩(wěn)定監(jiān)控模塊,其中:
[0023]所述穩(wěn)定過濾器模塊,用于在初始啟動(dòng)時(shí)生成一定數(shù)量的信號(hào)量,并根據(jù)所述信號(hào)量控制發(fā)送給FOTA服務(wù)器的升級(jí)請求的并發(fā)數(shù)量;
[0024]所述穩(wěn)定監(jiān)控模塊,用于檢測分布式緩存裝置中各有序隊(duì)列的長度,據(jù)此計(jì)算出FOTA數(shù)據(jù)的增長率,并將所述FOTA數(shù)據(jù)的增長率反饋給所述穩(wěn)定過濾器模塊;
[0025]所述穩(wěn)定過濾器模塊進(jìn)一步用于:根據(jù)所述FOTA數(shù)據(jù)的增長率動(dòng)態(tài)調(diào)整所述信號(hào)量的數(shù)量。
[0026]優(yōu)選地,所述穩(wěn)定監(jiān)控模塊用于:
[0027]每隔單位時(shí)間檢測一次分布式緩存裝置中各有序隊(duì)列的長度;
[0028]根據(jù)公式S = (Ln-Llri)ZVix10^計(jì)算出FOTA數(shù)據(jù)的增長率,其中,S為FOTA數(shù)據(jù)的增長率,Ln為本次檢測的所有有序隊(duì)列的長度之和,L n_i為前一次檢測的所有有序隊(duì)列的長度之和。
[0029]優(yōu)選地,所述穩(wěn)定監(jiān)控模塊還用于:當(dāng)所述FOTA數(shù)據(jù)的增長率超過預(yù)設(shè)閾值時(shí),穩(wěn)定監(jiān)控模塊根據(jù)所述FOTA數(shù)據(jù)的增長率對(duì)所述分布式緩存裝置中的有序隊(duì)列進(jìn)行數(shù)據(jù)丟棄處理。
[0030]優(yōu)選地,所述穩(wěn)定過濾器模塊用于:
[0031]接收終端用戶向FOTA服務(wù)器發(fā)送的升級(jí)請求,并為每一升級(jí)請求獲取一信號(hào)量;
[0032]當(dāng)所述升級(jí)請求獲取信號(hào)量成功時(shí),穩(wěn)定過濾器模塊則將所述升級(jí)請求發(fā)送給FOTA服務(wù)器;
[0033]當(dāng)所述升級(jí)請求獲取信號(hào)量失敗時(shí),穩(wěn)定過濾器模塊則不予發(fā)送所述升級(jí)請求給FOTA服務(wù)器。
[0034]優(yōu)選地,所述穩(wěn)定過濾器模塊還用于:當(dāng)所述升級(jí)請求獲取信號(hào)量失敗時(shí),則將所述升級(jí)請求加入到等待隊(duì)列,并定時(shí)輪訓(xùn)所述等待隊(duì)列,為所述升級(jí)請求重新獲取信號(hào)量。
[0035]本發(fā)明所提供的一種基于FOTA升級(jí)的穩(wěn)定處理方法,通過檢測分布式緩存裝置中各有序隊(duì)列的長度計(jì)算出FOTA數(shù)據(jù)的增長率,根據(jù)該增長率來動(dòng)態(tài)調(diào)整信號(hào)量的數(shù)量,再根據(jù)信號(hào)量的數(shù)量來動(dòng)態(tài)控制升級(jí)請求的并發(fā)數(shù)量。從而實(shí)現(xiàn)了對(duì)FOTA服務(wù)器升級(jí)請求的實(shí)時(shí)監(jiān)控以及對(duì)升級(jí)請求并發(fā)數(shù)量的動(dòng)態(tài)調(diào)整,并且采用多種策略進(jìn)行穩(wěn)定性以及數(shù)據(jù)完整性的平衡,提高了 FOTA升級(jí)的穩(wěn)定性,保證了系統(tǒng)運(yùn)行的穩(wěn)定性和平滑性,最大限度的保障了有序隊(duì)列中數(shù)據(jù)的準(zhǔn)確完整性,保障了后期的數(shù)據(jù)分析運(yùn)營的準(zhǔn)確性。
【附圖說明】
[0036]圖1是本發(fā)明基于FOTA升級(jí)的穩(wěn)定處理方法一實(shí)施例的流程圖;
[0037]圖2是本發(fā)明基于FOTA升級(jí)的穩(wěn)定處理裝置一實(shí)施例的模塊示意圖;
[0038]圖3是本發(fā)明實(shí)施例中基于FOTA升級(jí)的穩(wěn)定處理裝置與FOTA服務(wù)器和分布式緩存裝置的交互示意圖。
[0039]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
【具體實(shí)施方式】
[0040]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0041]參見圖1,提出本發(fā)明基于FOTA升級(jí)的穩(wěn)定處理方法一實(shí)施例,所述方法包括以下步驟:
[0042]步驟Sll:穩(wěn)定處理裝置在初始啟動(dòng)時(shí)生成一定數(shù)量的信號(hào)量。
[0043]本發(fā)明的穩(wěn)定處理裝置通過信號(hào)量來控制升級(jí)請求的并發(fā)數(shù)量。本實(shí)施例中,穩(wěn)定處理裝置包括穩(wěn)定過濾器模塊和穩(wěn)定監(jiān)控模塊,穩(wěn)定過濾器模塊在初始啟動(dòng)時(shí),根據(jù)分布式緩存裝置的內(nèi)存容量以及FOTA服務(wù)器每次交互的數(shù)據(jù)的大小計(jì)算出信號(hào)量的數(shù)量,并生成相應(yīng)數(shù)量的信號(hào)量。信號(hào)量的具體計(jì)算公式優(yōu)選為:信號(hào)量的數(shù)量=(分布式緩存裝置的內(nèi)存總?cè)萘?FOTA服務(wù)器每次交互的數(shù)據(jù)的大小)*80%。
[0044]步驟S12:穩(wěn)定處理裝置根