本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種配置文件處理裝置和方法。
背景技術(shù):
手機(jī)中通常存儲(chǔ)了不同的配置文件,例如,手機(jī)系統(tǒng)的配置文件中記錄了如CPU功耗參數(shù)、屏幕參數(shù)、射頻參數(shù)等,內(nèi)置應(yīng)用的配置文件中記錄了如手機(jī)管家的黑白名單等。針對(duì)這些配置文件的升級(jí),現(xiàn)有技術(shù)中實(shí)現(xiàn)了手機(jī)配置管理系統(tǒng)。
目前的手機(jī)配置管理系統(tǒng)中,引入了Zookeeper(一種分布式服務(wù))實(shí)現(xiàn)分布式系統(tǒng)。該手機(jī)配置管理系統(tǒng)模型如圖1所示,可見(jiàn)一旦Zookeeper宕機(jī),將導(dǎo)致API(應(yīng)用程序編程接口)系統(tǒng)不可用;一旦Zookeeper出現(xiàn)通知異常等情況,將導(dǎo)致不同API系統(tǒng)獲取到的數(shù)據(jù)不一致等問(wèn)題。如果要解決這些問(wèn)題,需要對(duì)系統(tǒng)進(jìn)行復(fù)雜的重構(gòu),由于配置管理系統(tǒng)可預(yù)期的文件數(shù)量不大,在萬(wàn)級(jí)左右,且對(duì)于文件發(fā)布的及時(shí)性要求沒(méi)有那么高,所以沒(méi)有必要進(jìn)行復(fù)雜的重構(gòu)工作。
基于上述內(nèi)容,可知現(xiàn)有技術(shù)方案方案存在的問(wèn)題是:
1、系統(tǒng)對(duì)Zookeeper依賴性太強(qiáng),存在單點(diǎn)故障,即如果Zookeeper宕機(jī),將導(dǎo)致系統(tǒng)不可用。
2、系統(tǒng)的成本較高。
3、為了解決Zookeeper的單點(diǎn)故障問(wèn)題,系統(tǒng)的復(fù)雜度較高,不利于后期的維護(hù)擴(kuò)展。
所以,需要實(shí)現(xiàn)一套新的手機(jī)配置管理的技術(shù)方案,去掉對(duì)Zookeeper的依賴,同時(shí)又不能影響到系統(tǒng)的整體性能和產(chǎn)品需求。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的主要目的在于提出一種配置文件處理裝置和方法,旨在在不依賴Zookeeper的情況下,提升處理發(fā)布和撤銷的配置文件的效率。
為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種配置文件處理裝置,包括:標(biāo)識(shí)獲 取模塊,用于從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)的發(fā)布配置文件表和/或撤銷配置文件表,并從所述發(fā)布配置文件表中獲取其記錄的發(fā)布的配置文件的標(biāo)識(shí),和/或從所述撤銷配置文件表中獲取其記錄的撤銷的配置文件的標(biāo)識(shí);內(nèi)容處理模塊,用于按獲取的標(biāo)識(shí),獲取所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容并寫入緩存中預(yù)設(shè)的配置文件緩存表,和/或從所述配置文件緩存表中刪除所述撤銷的配置文件對(duì)應(yīng)的配置文件內(nèi)容;刷新模塊,用于根據(jù)所述配置文件緩存表,刷新對(duì)應(yīng)的接口緩存。
可選地,前述的裝置,所述標(biāo)識(shí)獲取模塊按預(yù)設(shè)的第一時(shí)間間隔掃描所述發(fā)布配置文件表以獲取所述發(fā)布的配置文件的標(biāo)識(shí),按預(yù)設(shè)的第二時(shí)間間隔掃描所述撤銷配置文件表以獲取所述撤銷的配置文件的標(biāo)識(shí),所述第一時(shí)間間隔超過(guò)所述第二時(shí)間間隔。
可選地,前述的裝置,所述內(nèi)容處理模塊從所述發(fā)布的配置文件中獲取其記錄的指定數(shù)據(jù)交換格式的字符串,并將所述字符串轉(zhuǎn)換為所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容。
可選地,前述的裝置,所述標(biāo)識(shí)獲取模塊從所述發(fā)布配置文件表中獲取未記錄在預(yù)設(shè)的發(fā)布標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到所述發(fā)布標(biāo)識(shí)列表中,和/或從所述撤銷配置文件表中獲取未記錄在預(yù)設(shè)的撤銷標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到所述撤銷發(fā)布標(biāo)識(shí)列表中。
可選地,前述的裝置,所述內(nèi)容處理模塊根據(jù)所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容的類型,將所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容寫入對(duì)應(yīng)類型的配置文件緩存表。
為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種配置文件處理方法,所述方法包括步驟:從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)的發(fā)布配置文件表和/或撤銷配置文件表,并從所述發(fā)布配置文件表中獲取其記錄的發(fā)布的配置文件的標(biāo)識(shí),和/或從所述撤銷配置文件表中獲取其記錄的撤銷的配置文件的標(biāo)識(shí);按獲取的標(biāo)識(shí),獲取所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容并寫入緩存中預(yù)設(shè)的配置文件緩存表,和/或從所述配置文件緩存表中刪除所述撤銷的配置文件對(duì)應(yīng)的配置文件內(nèi)容;根據(jù)所述配置文件緩存表,刷新對(duì)應(yīng)的接口緩存。
可選地,前述的方法,從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)的發(fā)布配置文件表和/或撤銷配置文件表,并從所述發(fā)布配置文件表中獲取其記錄的發(fā)布的配置文件的標(biāo) 識(shí),和/或從所述撤銷配置文件表中獲取其記錄的撤銷的配置文件的標(biāo)識(shí),具體包括:按預(yù)設(shè)的第一時(shí)間間隔掃描所述發(fā)布配置文件表以獲取所述發(fā)布的配置文件的標(biāo)識(shí),按預(yù)設(shè)的第二時(shí)間間隔掃描所述撤銷配置文件表以獲取所述撤銷的配置文件的標(biāo)識(shí),所述第一時(shí)間間隔超過(guò)所述第二時(shí)間間隔。
可選地,前述的方法,獲取所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容并寫入緩存中預(yù)設(shè)的配置文件緩存表,具體包括:從所述發(fā)布的配置文件中獲取其記錄的指定數(shù)據(jù)交換格式的字符串,并將所述字符串轉(zhuǎn)換為所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容。
可選地,前述的方法,從所述發(fā)布配置文件表中獲取其記錄的發(fā)布的配置文件的標(biāo)識(shí),和/或從所述撤銷配置文件表中獲取其記錄的撤銷的配置文件的標(biāo)識(shí),具體包括:從所述發(fā)布配置文件表中獲取未記錄在預(yù)設(shè)的發(fā)布標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到所述發(fā)布標(biāo)識(shí)列表中,和/或從所述撤銷配置文件表中獲取未記錄在預(yù)設(shè)的撤銷標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到所述撤銷發(fā)布標(biāo)識(shí)列表中。
可選地,前述的方法,獲取所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容并寫入緩存中預(yù)設(shè)的配置文件緩存表,具體包括:根據(jù)所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容的類型,將所述發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容寫入對(duì)應(yīng)類型的配置文件緩存表。
根據(jù)以上技術(shù)方案,可知本發(fā)明的配置文件處理裝置和方法至少具有以下優(yōu)點(diǎn):
在本發(fā)明的技術(shù)方案中,完全去掉了對(duì)zookeeper的依賴,通過(guò)在數(shù)據(jù)庫(kù)中設(shè)置的發(fā)布配置文件表和/或撤銷配置文件表,可以快速查找到發(fā)布的配置文件的標(biāo)識(shí)和/或撤銷的配置文件的標(biāo)識(shí),進(jìn)而有利于快速進(jìn)行相應(yīng)的配置文件內(nèi)容的處理,提升了處理發(fā)布和/或撤銷的配置文件的效率。
附圖說(shuō)明
圖1是現(xiàn)有技術(shù)的基于zookeeper的技術(shù)方案的示意圖;
圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的配置文件處理裝置的框圖;
圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例的配置文件處理裝置的原理圖;
圖4是根據(jù)本發(fā)明的一個(gè)實(shí)施例的配置文件處理方法的流程圖;
圖5是根據(jù)本發(fā)明的一個(gè)實(shí)施例的配置文件處理方法的流程圖。
本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
如圖2所示,本發(fā)明第一實(shí)施例提出一種配置文件處理裝置,包括:
標(biāo)識(shí)獲取模塊210,用于從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)的發(fā)布配置文件表和/或撤銷配置文件表,并從發(fā)布配置文件表中獲取其記錄的發(fā)布的配置文件的標(biāo)識(shí),和/或從撤銷配置文件表中獲取其記錄的撤銷的配置文件的標(biāo)識(shí)。在本實(shí)施例中可以實(shí)現(xiàn)一種API系統(tǒng),API系統(tǒng)仍然使用內(nèi)存緩存方案,而內(nèi)存的數(shù)據(jù)不再依賴于Zookeeper,而是依賴于數(shù)據(jù)庫(kù)。配置文件表作為數(shù)據(jù)庫(kù)中的源表,如果對(duì)其進(jìn)行掃描,效率太低,所以在本實(shí)施例中新增兩張表,作為系統(tǒng)的隊(duì)列表,一張是發(fā)布配置文件表,一張是撤銷配置文件表。
后臺(tái)系統(tǒng)發(fā)布配置文件的時(shí)候,將配置文件的ID(標(biāo)識(shí))寫入發(fā)布配置文件表中;撤銷配置文件的時(shí)候,將配置文件的ID寫入撤銷配置文件表。這樣,API系統(tǒng)只需要掃描發(fā)布配置文件表與撤銷配置文件表,就可以獲取到系統(tǒng)中發(fā)布的配置文件列表以及撤銷的配置文件列表。
內(nèi)容處理模塊220,用于按獲取的標(biāo)識(shí),獲取發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容并寫入緩存中預(yù)設(shè)的配置文件緩存表,和/或從配置文件緩存表中刪除撤銷的配置文件對(duì)應(yīng)的配置文件內(nèi)容。在本實(shí)施例中,當(dāng)發(fā)布或撤銷的配置文件的ID獲取后,即可按ID獲取相應(yīng)配置文件的內(nèi)容。
刷新模塊230,用于根據(jù)配置文件緩存表,刷新對(duì)應(yīng)的接口緩存。
根據(jù)本實(shí)施例的技術(shù)方案,完全去掉了對(duì)zookeeper的依賴,通過(guò)在數(shù)據(jù)庫(kù)中設(shè)置的發(fā)布配置文件表和/或撤銷配置文件表,可以快速查找到發(fā)布的配置文件的標(biāo)識(shí)和/或撤銷的配置文件的標(biāo)識(shí),進(jìn)而有利于快速進(jìn)行相應(yīng)的配置文件內(nèi)容的處理,提升了處理發(fā)布和/或撤銷的配置文件的效率。
本發(fā)明第二實(shí)施例提出一種配置文件處理裝置,包括:
標(biāo)識(shí)獲取模塊210,按預(yù)設(shè)的第一時(shí)間間隔掃描發(fā)布配置文件表以從發(fā)布配置文件表中獲取未記錄在預(yù)設(shè)的發(fā)布標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添 加到發(fā)布標(biāo)識(shí)列表中,按預(yù)設(shè)的第二時(shí)間間隔掃描撤銷配置文件表以從撤銷配置文件表中獲取未記錄在預(yù)設(shè)的撤銷標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到撤銷發(fā)布標(biāo)識(shí)列表中,第一時(shí)間間隔超過(guò)第二時(shí)間間隔。在本實(shí)施例中,根據(jù)一般的產(chǎn)品需求,對(duì)于撤銷的動(dòng)作系統(tǒng)需要更快的識(shí)別到,而發(fā)布的動(dòng)作允許更大的延時(shí)。于是,定時(shí)任務(wù)中,監(jiān)控撤銷配置文件表的周期可以設(shè)置為5秒,而監(jiān)控發(fā)布配置文件表的周期可以設(shè)置為10秒。當(dāng)然,任務(wù)周期可以在配置管理系統(tǒng)的設(shè)置頁(yè)面中根據(jù)需求的變更進(jìn)行修改;在本實(shí)施例中,在獲取最新發(fā)布與撤銷的配置文件列表時(shí),可以根據(jù)自增長(zhǎng)ID的特性,獲取大于目前內(nèi)存列表(包括前述的發(fā)布ID列表以及撤銷ID列表)中最大ID的數(shù)據(jù)即可,這樣就不需要獲取這兩張表中所有的數(shù)據(jù),提高了系統(tǒng)效率。
內(nèi)容處理模塊220,用于按獲取的標(biāo)識(shí),從發(fā)布的配置文件中獲取其記錄的指定數(shù)據(jù)交換格式(包括但不限于json格式)的字符串,并將字符串轉(zhuǎn)換為發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容,根據(jù)發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容的類型,將發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容寫入對(duì)應(yīng)類型的配置文件緩存表,和/或從配置文件緩存表中刪除撤銷的配置文件對(duì)應(yīng)的配置文件內(nèi)容。在本實(shí)施例中,由于API系統(tǒng)中在緩存表中保存的配置文件內(nèi)容來(lái)自數(shù)據(jù)庫(kù)中的若干張表(具體如圖3所示),如果在發(fā)布配置文件表中僅保存配置文件ID的話,監(jiān)控任務(wù)以及系統(tǒng)初始化時(shí)根據(jù)配置文件ID獲取配置文件內(nèi)容的時(shí)候,就需要讀取數(shù)據(jù)庫(kù)的若干張表進(jìn)行內(nèi)容的拼湊,效率較低。為了提高系統(tǒng)初始化的速度,在發(fā)布配置文件表中,除了保存配置文件的ID,還進(jìn)行配置文件內(nèi)容對(duì)象的json字符串的保存。這樣,在監(jiān)控任務(wù)和初始化時(shí),只需要根據(jù)json字符串進(jìn)行對(duì)象的轉(zhuǎn)換,即可得到配置文件的內(nèi)容,極大的提高了系統(tǒng)效率,尤其是初始化的速度。在本實(shí)施例中,為了提高配置緩存文件表的讀取效率,設(shè)置了對(duì)應(yīng)多種類型的配置緩存文件表,所以獲取數(shù)據(jù)內(nèi)容后需要按照其類型寫入對(duì)應(yīng)的配置緩存文件表中。
刷新模塊230,用于根據(jù)配置文件緩存表,刷新對(duì)應(yīng)的接口緩存。在本實(shí)施例中,由于存在多種類型接口緩存,所以根據(jù)配置文件緩存表中的對(duì)應(yīng)類型的內(nèi)容,刷新相應(yīng)類型的接口緩存,做到準(zhǔn)確的刷新處理。
根據(jù)本實(shí)施例的技術(shù)方案,在不影響系統(tǒng)性能且不影響產(chǎn)品需求的前提下,去掉了對(duì)Zookeeper的依賴,為配置管理系統(tǒng)節(jié)約了成本,并降低了系統(tǒng) 的復(fù)雜度,大大減輕了后續(xù)維護(hù)擴(kuò)展的工作量。
如圖4所示,本發(fā)明第三實(shí)施例提出一種配置文件處理方法,包括:
步驟S410,從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)的發(fā)布配置文件表和/或撤銷配置文件表,并從發(fā)布配置文件表中獲取其記錄的發(fā)布的配置文件的標(biāo)識(shí),和/或從撤銷配置文件表中獲取其記錄的撤銷的配置文件的標(biāo)識(shí)。在本實(shí)施例中可以實(shí)現(xiàn)一種API系統(tǒng),API系統(tǒng)仍然使用內(nèi)存緩存方案,而內(nèi)存的數(shù)據(jù)不再依賴于Zookeeper,而是依賴于數(shù)據(jù)庫(kù)。配置文件表作為數(shù)據(jù)庫(kù)中的源表,如果對(duì)其進(jìn)行掃描,效率太低,所以在本實(shí)施例中新增兩張表,作為系統(tǒng)的隊(duì)列表,一張是發(fā)布配置文件表,一張是撤銷配置文件表。
后臺(tái)系統(tǒng)發(fā)布配置文件的時(shí)候,將配置文件的ID(標(biāo)識(shí))寫入發(fā)布配置文件表中;撤銷配置文件的時(shí)候,將配置文件的ID寫入撤銷配置文件表。這樣,API系統(tǒng)只需要掃描發(fā)布配置文件表與撤銷配置文件表,就可以獲取到系統(tǒng)中發(fā)布的配置文件列表以及撤銷的配置文件列表。
步驟S420,按獲取的標(biāo)識(shí),獲取發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容并寫入緩存中預(yù)設(shè)的配置文件緩存表,和/或從配置文件緩存表中刪除撤銷的配置文件對(duì)應(yīng)的配置文件內(nèi)容。在本實(shí)施例中,當(dāng)發(fā)布或撤銷的配置文件的ID獲取后,即可按ID獲取相應(yīng)配置文件的內(nèi)容。
步驟S430,根據(jù)配置文件緩存表,刷新對(duì)應(yīng)的接口緩存。
根據(jù)本實(shí)施例的技術(shù)方案,完全去掉了對(duì)zookeeper的依賴,通過(guò)在數(shù)據(jù)庫(kù)中設(shè)置的發(fā)布配置文件表和/或撤銷配置文件表,可以快速查找到發(fā)布的配置文件的標(biāo)識(shí)和/或撤銷的配置文件的標(biāo)識(shí),進(jìn)而有利于快速進(jìn)行相應(yīng)的配置文件內(nèi)容的處理,提升了處理發(fā)布和/或撤銷的配置文件的效率。
如圖5所示,本發(fā)明第四實(shí)施例提出一種配置文件處理方法,包括:
步驟S510,按預(yù)設(shè)的第一時(shí)間間隔掃描發(fā)布配置文件表以從發(fā)布配置文件表中獲取未記錄在預(yù)設(shè)的發(fā)布標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到發(fā)布標(biāo)識(shí)列表中,按預(yù)設(shè)的第二時(shí)間間隔掃描撤銷配置文件表以從撤銷配置文件表中獲取未記錄在預(yù)設(shè)的撤銷標(biāo)識(shí)列表中的標(biāo)識(shí),獲取后并將其添加到撤銷發(fā)布標(biāo)識(shí)列表中,第一時(shí)間間隔超過(guò)第二時(shí)間間隔。在本實(shí)施例中,根據(jù) 一般的產(chǎn)品需求,對(duì)于撤銷的動(dòng)作系統(tǒng)需要更快的識(shí)別到,而發(fā)布的動(dòng)作允許更大的延時(shí)。于是,定時(shí)任務(wù)中,監(jiān)控撤銷配置文件表的周期可以設(shè)置為5秒,而監(jiān)控發(fā)布配置文件表的周期可以設(shè)置為10秒。當(dāng)然,任務(wù)周期可以在配置管理系統(tǒng)的設(shè)置頁(yè)面中根據(jù)需求的變更進(jìn)行修改;在本實(shí)施例中,在獲取最新發(fā)布與撤銷的配置文件列表時(shí),可以根據(jù)自增長(zhǎng)ID的特性,獲取大于目前內(nèi)存列表(包括前述的發(fā)布ID列表以及撤銷ID列表)中最大ID的數(shù)據(jù)即可,這樣就不需要獲取這兩張表中所有的數(shù)據(jù),提高了系統(tǒng)效率。
步驟S520,按獲取的標(biāo)識(shí),從發(fā)布的配置文件中獲取其記錄的指定數(shù)據(jù)交換格式(包括但不限于json格式)的字符串,并將字符串轉(zhuǎn)換為發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容,根據(jù)發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容的類型,將發(fā)布的配置文件對(duì)應(yīng)的配置文件內(nèi)容寫入對(duì)應(yīng)類型的配置文件緩存表,和/或從配置文件緩存表中刪除撤銷的配置文件對(duì)應(yīng)的配置文件內(nèi)容。在本實(shí)施例中,由于API系統(tǒng)中在緩存表中保存的配置文件內(nèi)容來(lái)自數(shù)據(jù)庫(kù)中的若干張表(具體如圖3所示),如果在發(fā)布配置文件表中僅保存配置文件ID的話,監(jiān)控任務(wù)以及系統(tǒng)初始化時(shí)根據(jù)配置文件ID獲取配置文件內(nèi)容的時(shí)候,就需要讀取數(shù)據(jù)庫(kù)的若干張表進(jìn)行內(nèi)容的拼湊,效率較低。為了提高系統(tǒng)初始化的速度,在發(fā)布配置文件表中,除了保存配置文件的ID,還進(jìn)行配置文件內(nèi)容對(duì)象的json字符串的保存。這樣,在監(jiān)控任務(wù)和初始化時(shí),只需要根據(jù)json字符串進(jìn)行對(duì)象的轉(zhuǎn)換,即可得到配置文件的內(nèi)容,極大的提高了系統(tǒng)效率,尤其是初始化的速度。在本實(shí)施例中,為了提高配置緩存文件表的讀取效率,設(shè)置了對(duì)應(yīng)多種類型的配置緩存文件表,所以獲取數(shù)據(jù)內(nèi)容后需要按照其類型寫入對(duì)應(yīng)的配置緩存文件表中。
步驟S530,根據(jù)配置文件緩存表,刷新對(duì)應(yīng)的接口緩存。在本實(shí)施例中,由于存在多種類型接口緩存,所以根據(jù)配置文件緩存表中的對(duì)應(yīng)類型的內(nèi)容,刷新相應(yīng)類型的接口緩存,做到準(zhǔn)確的刷新處理。
根據(jù)本實(shí)施例的技術(shù)方案,在不影響系統(tǒng)性能且不影響產(chǎn)品需求的前提下,去掉了對(duì)Zookeeper的依賴,為配置管理系統(tǒng)節(jié)約了成本,并降低了系統(tǒng)的復(fù)雜度,大大減輕了后續(xù)維護(hù)擴(kuò)展的工作量。
需要說(shuō)明的是,在本文中,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體 意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者裝置不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者裝置所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過(guò)程、方法、物品或者裝置中還存在另外的相同要素。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說(shuō)明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。