• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種基于流媒體壓縮算法的高性能集群監(jiān)控系統(tǒng)

    2019-11-12 05:12:26樊書華
    計算機(jī)應(yīng)用與軟件 2019年11期
    關(guān)鍵詞:壓縮算法采集器緩沖區(qū)

    樊書華 王 鵬 汪 衛(wèi)

    1(復(fù)旦大學(xué)軟件學(xué)院 上海 201203)2(復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 上海 200433)

    0 引 言

    隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,計算機(jī)集群系統(tǒng)已應(yīng)用在人們生活的各個方面。集群的主要作用是對系統(tǒng)中各個節(jié)點的使用情況進(jìn)行實時的管理和掌握[1],集群監(jiān)控系統(tǒng)也隨之應(yīng)運而生[2-4]。通過對集群的各項數(shù)據(jù),包括應(yīng)用負(fù)載、CPU利用率、磁盤、網(wǎng)絡(luò)流量、內(nèi)存、應(yīng)用心跳等系統(tǒng)指標(biāo),分別進(jìn)行收集存儲,并在處理分析后做出相應(yīng)判斷,當(dāng)發(fā)生異常情況時對系統(tǒng)管理員發(fā)送通知,從而達(dá)到實時監(jiān)控的效果。但是以人工的方式對集群進(jìn)行監(jiān)控管理存在著各種各樣的問題,比如效率過低、對系統(tǒng)異常的捕獲不夠及時等,因此集群監(jiān)控系統(tǒng)的實現(xiàn)程度將直接決定集群系統(tǒng)是否能夠平穩(wěn)運行。

    然而隨著實際生產(chǎn)環(huán)境中業(yè)務(wù)的增加,集群規(guī)模逐漸擴(kuò)大,服務(wù)器收到密集的高負(fù)荷請求,現(xiàn)有的集群監(jiān)控系統(tǒng)如針對openstack開發(fā)的Ceilometer[5-6]、層次化監(jiān)控系統(tǒng)Ganglia[7-9]、企業(yè)級開源系統(tǒng)Zabbix[10]等,在性能表現(xiàn)方面容易產(chǎn)生瓶頸。以目前應(yīng)用較為廣泛的主流系統(tǒng)為例,Ceilometer在開源集群監(jiān)控系統(tǒng)中相對于其他幾個監(jiān)控系統(tǒng),在完整性、輕量性等幾個方面很有優(yōu)勢[11]。但由于其使用單層的客戶端服務(wù)器模式來搭建監(jiān)控系統(tǒng),當(dāng)集群規(guī)模擴(kuò)大時,數(shù)據(jù)的種類和規(guī)模都會擴(kuò)大,這樣數(shù)據(jù)采集、存儲就容易遇到瓶頸。

    針對目前集群監(jiān)控系統(tǒng)存在的性能問題,本文旨在設(shè)計并實現(xiàn)一種基于流媒體壓縮算法的高性能集群監(jiān)控系統(tǒng)。首先,對性能問題的表現(xiàn)和問題產(chǎn)生的原因進(jìn)行介紹,包括監(jiān)控數(shù)據(jù)量的組成分析以及監(jiān)控數(shù)據(jù)幀的時間和空間冗余性分析;其次,對系統(tǒng)架構(gòu)以及對應(yīng)的功能模塊進(jìn)行描述;再次,分別從數(shù)據(jù)幀冗余性優(yōu)化、系數(shù)量化處理等模塊對系統(tǒng)高性能進(jìn)行設(shè)計與實現(xiàn);最后結(jié)合系統(tǒng)實驗,給出性能提升具體結(jié)果與評估。

    1 相關(guān)工作

    當(dāng)前常用的壓縮算法包括LZ4、Brotli、LZF、Snappy等,接下來首先對這幾種算法進(jìn)行簡單介紹。

    LZ4算法來源于LZ77,由Yann Collet在2011年發(fā)明。該算法采用滑動窗口的原理,通過哈希表對字典進(jìn)行存儲,從而對匹配的字符串進(jìn)行查找。其中哈希表的key值代表字符串的二進(jìn)制值,value值代表字符串在文件中對應(yīng)的位置。主要優(yōu)勢為壓縮效率高,當(dāng)需要壓縮的數(shù)據(jù)中出現(xiàn)的重復(fù)項越多時,壓縮效果越好。

    無損壓縮算法Brotli在2015年由Google提出,通過哈夫曼編碼以及變種的LZ77算法等方式對數(shù)據(jù)進(jìn)行壓縮,主要用于處理順序數(shù)據(jù)流。該算法不僅包含常見的滑動窗口字典,也對常見字符串字典進(jìn)行了預(yù)定義,從而增強(qiáng)壓縮效果。Brotli算法已受到絕大多數(shù)主流瀏覽器的支持,達(dá)到加快傳輸速度的效果。

    LZF算法對字符串通過LZ77及LZSS的混合編碼進(jìn)行壓縮,由入口文件、壓縮和解壓縮文件、配置及接口文件組成。LZF算法較為輕量,Redis中默認(rèn)采用該算法,在數(shù)據(jù)存儲至本地時進(jìn)行壓縮處理。

    Snappy算法在2011年開源,來自于Zippy并由C++語言實現(xiàn),該算法以壓縮率和兼容性為一定代價,實現(xiàn)較高壓縮速度以及壓縮比的目標(biāo),壓縮速度達(dá)到250 MB/s甚至更高。Snappy算法在Google很多內(nèi)部項目諸如MapReduce以及BigTable中得到了廣泛使用。

    但在這些傳統(tǒng)的數(shù)據(jù)壓縮算法中,通過字符串匹配和哈希字典等方式進(jìn)行壓縮,雖然在單個時間片單個數(shù)據(jù)幀上效果很好,但沒有考慮到集群監(jiān)控系統(tǒng)中數(shù)據(jù)幀在時間軸上的冗余性。此外,這些壓縮算法還需要在主從兩個節(jié)點之間同步字典數(shù)據(jù),這會帶來額外的網(wǎng)絡(luò)帶寬開銷。因此本文旨在設(shè)計一種新的基于流媒體壓縮的算法用于集群監(jiān)控系統(tǒng)中,從而對系統(tǒng)性能進(jìn)行有效提升。

    2 問題分析

    集群監(jiān)控系統(tǒng)的性能瓶頸主要表現(xiàn)如下,以ceilometer監(jiān)控系統(tǒng)為例:在其余參數(shù)恒定的條件下,服務(wù)器端(即時序數(shù)據(jù)庫gnocchi)單位時間內(nèi)可以處理的數(shù)據(jù)量會隨客戶端(數(shù)據(jù)采集器collectd)的緩沖區(qū)大小(單個restful請求包含的數(shù)據(jù)量)的變化而呈線性增長,即:當(dāng)緩沖區(qū)大小為100條時,單位時間可以處理的restful請求為600條,單位時間可以處理的數(shù)據(jù)量為6萬條;緩沖區(qū)大小為500條時,單位時間可以處理的 restful 請求為533條,單位時間可以處理的數(shù)據(jù)量為27萬條。

    根據(jù)目前配置,當(dāng)客戶端緩沖區(qū)的大小為200條時,服務(wù)器端時序數(shù)據(jù)庫在單位時間內(nèi)能夠處理的restful請求大概在500條,其中包括的數(shù)據(jù)條目大概為10萬條。以單個被監(jiān)控節(jié)點一次輪詢的6 000條數(shù)據(jù)為基準(zhǔn),假如被監(jiān)控節(jié)點數(shù)目為200臺(在不考慮客戶端相同數(shù)據(jù)重發(fā)的狀態(tài)下,實際上隨著寫線程數(shù)量的增長,數(shù)據(jù)采集器緩沖隊列里的內(nèi)容被重發(fā)的概率也越高),在單次輪詢時間10秒內(nèi)會產(chǎn)生120萬條數(shù)據(jù),這樣會使得數(shù)據(jù)庫阻塞,隨著寫線程的增多,不到200臺主機(jī)就會使得數(shù)據(jù)庫發(fā)生阻塞。當(dāng)然按照網(wǎng)絡(luò)流量數(shù)據(jù),200臺主機(jī)的網(wǎng)絡(luò)流量為100 MB/s,達(dá)到了百兆網(wǎng)卡極限,也是千兆網(wǎng)卡的10%,會給網(wǎng)絡(luò)流量產(chǎn)生很大壓力。

    接下來,對目前集群監(jiān)控系統(tǒng)中存在的性能方面的問題原因,分別對監(jiān)控數(shù)據(jù)量以及數(shù)據(jù)幀在時間和空間上的冗余性進(jìn)行分析。

    2.1 數(shù)據(jù)量分析

    當(dāng)集群規(guī)模擴(kuò)大時,服務(wù)器收到的請求密度變大,此時容易產(chǎn)生阻塞現(xiàn)象。以單臺宿主機(jī)為例,在單位時間內(nèi)需要向服務(wù)器發(fā)送高達(dá)0.5~1 MB的時序數(shù)據(jù)集(包括物理機(jī)信息,虛擬機(jī)信息和docker信息)。以單次輪詢來看,一次性需要收集的數(shù)據(jù)就達(dá)到了幾千條,當(dāng)宿主機(jī)規(guī)模達(dá)到一定量以后,監(jiān)控整體系統(tǒng)性能將會受到嚴(yán)重阻塞,影響監(jiān)控效率。

    針對采集到的監(jiān)控指標(biāo),數(shù)據(jù)類型可以分為以下幾個部分,包括中央處理器、進(jìn)程、網(wǎng)絡(luò)、內(nèi)存、硬盤等。針對單臺物理計算節(jié)點而言,監(jiān)控數(shù)據(jù)量具有兩個主要規(guī)律:

    ? 橫向增長:針對單臺物理計算節(jié)點而言,隨著主機(jī)上搭載的虛擬機(jī)數(shù)目增加,對應(yīng)的虛擬機(jī)指標(biāo),主機(jī)全體指標(biāo)將隨之增長;

    ? 縱向增長:物理機(jī)中隨著CPU核數(shù)的增長,對應(yīng)的各項監(jiān)控數(shù)據(jù)指標(biāo),包括總使用量、steal百分比、空閑百分比、IO等待百分比、用戶百分比等也呈線性增長趨勢,這一規(guī)律對網(wǎng)卡、進(jìn)程、磁盤也有效。

    綜上,對于集群監(jiān)控系統(tǒng)來說,單個節(jié)點需要采集的數(shù)據(jù)指標(biāo)就已非??捎^,若對多個節(jié)點監(jiān)控指標(biāo)同時采集,數(shù)量集將是非常龐大的,并且隨著監(jiān)控節(jié)點數(shù)的增加數(shù)據(jù)量也會成倍增加,這無疑會給集群監(jiān)控系統(tǒng)性能方面的表現(xiàn)造成影響。

    2.2 數(shù)據(jù)幀冗余性分析

    數(shù)據(jù)幀主要具有時間和空間兩方面的冗余性。采集到的數(shù)據(jù)幀以哈希表(python字典)的形式進(jìn)行存儲,例如[{′df-sys-fs-cgroup@precent_bytes-free′: {′Timestamp′: 1546498760.7887914, ′Value′: 100.0}}],如表1所示,時空冗余性主要體現(xiàn)在如下兩個方面:

    ? 空間冗余性方面,在某一個時間點t1上,所有數(shù)據(jù)項的時間戳在小數(shù)點之前(即秒級單位)都是相同的,小數(shù)點之后的差別可以忽略不計,故只保留一個時間戳即可。同時形如′Timestamp′和′Value′這樣重復(fù)的鍵值也是產(chǎn)生空間冗余的原因。

    ? 時間冗余性方面,在兩個時間點t1和t2上,兩幀數(shù)據(jù)的表項名稱都是相同的。因此每隔一定時間對監(jiān)控數(shù)據(jù)進(jìn)行采集時,總會對各個監(jiān)控項的子條目名稱進(jìn)行高覆蓋率的重復(fù)收集,這是時間冗余數(shù)據(jù)產(chǎn)生的原因。

    續(xù)表1

    3 總體架構(gòu)與環(huán)境搭建

    3.1 系統(tǒng)架構(gòu)

    在本文實現(xiàn)的基于流媒體壓縮算法的高性能集群監(jiān)控系統(tǒng)架構(gòu)中,如圖1所示,以數(shù)據(jù)收集、數(shù)據(jù)存儲、數(shù)據(jù)分析為基本層級,之后將分析處理后的數(shù)據(jù)實現(xiàn)展示、報警以及自適應(yīng)等功能。在數(shù)據(jù)收集層,通過給各個數(shù)據(jù)采集器collectd節(jié)點添加插件(主機(jī)監(jiān)控插件,libvirt插件以及docker插件),從而定期地對系統(tǒng)和程序中各個指標(biāo)進(jìn)行收集。

    圖1 集群監(jiān)控系統(tǒng)架構(gòu)

    針對時序數(shù)據(jù)庫,實現(xiàn)對物理機(jī)、虛擬機(jī)以及容器的同時監(jiān)控。數(shù)據(jù)采集之后采用過濾器連接Gnocchi服務(wù),采用最新的流式壓縮算法實現(xiàn)高效的數(shù)據(jù)存儲和傳輸機(jī)制,從而實現(xiàn)數(shù)據(jù)存儲層要求。此外,數(shù)據(jù)展示層是與用戶最相近的一層,對Grafana組件進(jìn)行定制,以集中統(tǒng)一的方式實現(xiàn)數(shù)據(jù)的展示,給系統(tǒng)管理員帶來便捷。

    3.2 模塊功能

    本文實現(xiàn)的集群監(jiān)控系統(tǒng)中包括數(shù)據(jù)收集、數(shù)據(jù)存儲、數(shù)據(jù)處理等在內(nèi)的各個功能。

    在資源采集方面,數(shù)據(jù)采集階段引入Collectd守護(hù)進(jìn)程[13],并以在Collectd上實現(xiàn)插件的形式,完成對系統(tǒng)以及系統(tǒng)中應(yīng)用程序的各類性能指標(biāo)進(jìn)行定期的收集任務(wù)。同時,面對海量的數(shù)據(jù)收集過程,本文在數(shù)據(jù)采集器的性能方面進(jìn)行了有效的提升。首先,對Collectd所采集的大批量數(shù)據(jù)進(jìn)行精簡化,其次,采用壓縮數(shù)據(jù)的方法,減小了網(wǎng)絡(luò)中的帶寬壓力。最后,通過調(diào)整數(shù)據(jù)采集器的發(fā)送流程,當(dāng)阻塞的時間超過提前設(shè)定的閾值時,對該數(shù)據(jù)進(jìn)行丟棄處理。

    在高效的數(shù)據(jù)傳輸和存儲方面,采用了Gnocchi這一款開源的時序數(shù)據(jù)庫。Gnocchi專門為處理大規(guī)模時序數(shù)據(jù)的存儲和索引而設(shè)計,在數(shù)據(jù)存入之前就對相應(yīng)數(shù)據(jù)進(jìn)行了聚合操作,從而提高了數(shù)據(jù)訪問效率。

    在系統(tǒng)界面方面,隨著系統(tǒng)中業(yè)務(wù)發(fā)展的日益復(fù)雜化,若對集群監(jiān)控的過程中隨時對系統(tǒng)中的運行情況進(jìn)行掌握,監(jiān)控數(shù)據(jù)的可視化展示部分是集群監(jiān)控系統(tǒng)必不可少的組件。在與用戶主要交互的數(shù)據(jù)展示層,本文通過對Grafana的組件和模板采用定制的方式,對所需要監(jiān)控的集群來進(jìn)行整齊統(tǒng)一的管理。

    3.3 環(huán)境搭建

    本文實現(xiàn)的集群監(jiān)控系統(tǒng)整體環(huán)境為:通過Kolla Ansible對OpenStack進(jìn)行部署。其中,Ansible本身是專門為分布式集群安裝程序的框架,Kolla是Ansible的子項目,以Ansible為基礎(chǔ),專門為OpenStack提供服務(wù)。Docker作為一個開源的應(yīng)用容器引擎,目標(biāo)在于為操作系統(tǒng)的虛擬化提供輕量級的解決方案,相當(dāng)于小的封閉式操作系統(tǒng)環(huán)境,同時具有快速的部署和交付能力,以及良好的擴(kuò)容性和資源利用率。如表2所示,集群搭建的機(jī)器環(huán)境包括服務(wù)器端和客戶端。

    表2 集群監(jiān)控環(huán)境

    對監(jiān)控環(huán)境Collectd以及Gnocchi來說,服務(wù)器端(數(shù)據(jù)采集端)配置與客戶端(數(shù)據(jù)發(fā)送端)配置如表3所示。

    表3 集群服務(wù)配置

    4 系統(tǒng)設(shè)計與實現(xiàn)

    針對高密度的數(shù)據(jù)請求容易產(chǎn)生的阻塞現(xiàn)象這一問題,如圖2所示,本文的主要解決思路為:通過引入流式數(shù)據(jù)壓縮,對傳輸?shù)臄?shù)據(jù)進(jìn)行壓縮處理。在H.264編碼算法中,主要分為正在編碼的幀和參考幀,參考幀即為已經(jīng)編碼且經(jīng)過了重新解碼。根據(jù)正在編碼的幀得到當(dāng)前宏塊,同時結(jié)合參考幀進(jìn)行預(yù)測,從而得到預(yù)測宏塊。預(yù)測宏塊作用于當(dāng)前宏塊獲得殘差宏塊,并進(jìn)行變換和量化處理,隨后的過程主要分為兩部分:變換和量化后進(jìn)行熵編碼,獲取編碼后的比特流;通過反變換和反量化產(chǎn)生解碼殘差宏塊,進(jìn)而獲得參考幀。

    圖2 流式數(shù)據(jù)壓縮H.264編碼算法

    在具體分析如何對系統(tǒng)性能進(jìn)行提升之前,首先需要對系統(tǒng)中對數(shù)據(jù)的收集過程進(jìn)行了解。本文采用數(shù)據(jù)采集器Collectd及相應(yīng)插件對集群系統(tǒng)的監(jiān)控指標(biāo)進(jìn)行收集之后,通過Redis寫入Gnocchi數(shù)據(jù)庫。

    如圖3所示,數(shù)據(jù)采集器Collectd收集到的數(shù)據(jù)以列表的形式進(jìn)行存儲。每臺主機(jī)上采集到的數(shù)據(jù)格式包括接口、內(nèi)存、進(jìn)程、網(wǎng)絡(luò)等監(jiān)控項,每類監(jiān)控項又包含數(shù)個子條目。列表中的每個元素都包含監(jiān)測數(shù)據(jù)項與標(biāo)簽兩個部分,標(biāo)簽以0和1進(jìn)行區(qū)分,0代表該項未被線程讀,1則代表已讀。系統(tǒng)中存在n個讀線程read_thread worker,首先確認(rèn)列表中元素的標(biāo)簽值,若標(biāo)簽為0則進(jìn)行讀取,并寫入到隊列write_queue_s的隊尾處。隊列write_queue_s遵循先入先出的規(guī)則,因此對于寫線程write_thread worker,依照從隊列頭部讀取數(shù)據(jù)的順序通過write-http請求寫入數(shù)據(jù)庫。

    圖3 集群數(shù)據(jù)讀寫

    4.1 數(shù)據(jù)幀冗余性優(yōu)化算法

    在數(shù)據(jù)幀時空冗余性方面,結(jié)合第2節(jié)問題分析中的冗余性詳解,優(yōu)化主要分為以下步驟:

    ? 對采集到的監(jiān)控數(shù)據(jù)項來說,列表中每個元素的時間戳屬性都非常接近,因此采取將時間戳規(guī)整到同一個值的方法,并歸并到數(shù)據(jù)幀外達(dá)到有效壓縮的效果,從而大大減少同一次收集的數(shù)據(jù)幀中時間戳出現(xiàn)的頻率。

    ? 在數(shù)據(jù)集的Value項中,未經(jīng)優(yōu)化的值小數(shù)點后取到了十幾位以上。因此本文通過對較低位,即無效位數(shù)進(jìn)行裁剪,達(dá)到對系統(tǒng)性能實現(xiàn)優(yōu)化的目標(biāo)。

    在數(shù)據(jù)幀的時間冗余性優(yōu)化方面,首先數(shù)據(jù)采集器Collectd對節(jié)點采集監(jiān)控指標(biāo)數(shù)據(jù),同時對不同的時間點來說,采集到的兩段計算資源的數(shù)據(jù)項名稱大部分時間都是相同的。如磁盤的子條目包括df_complext_reserved、df_complex_used,CPU的子條目為percent system、percent interrupt。因此,每隔一定時間對監(jiān)控數(shù)據(jù)進(jìn)行采集時,各個監(jiān)控項收集的相應(yīng)子條目名稱重復(fù)率也非常高。

    為了提升系統(tǒng)性能,本文設(shè)計了運行在數(shù)據(jù)采集器Collect的與數(shù)據(jù)庫Gnocchi之間的數(shù)據(jù)幀同步協(xié)議(Datagram Synchronization Protocol)。數(shù)據(jù)采集器Collectd在對監(jiān)控數(shù)據(jù)處理進(jìn)入Gnocchi數(shù)據(jù)庫之前,使用Redis的緩存設(shè)計,在寫入Gnocchi之前,首先進(jìn)入Redis緩沖區(qū),從而達(dá)到加快讀寫速度的效果。同時,采集到的監(jiān)控先將所有的監(jiān)控條目名記錄到緩存中,然后將壓縮后的值寫入到對應(yīng)條目的值中。

    如圖4所示,數(shù)據(jù)庫Gnocchi與數(shù)據(jù)采集器Collectd之間的數(shù)據(jù)幀同步協(xié)議的整體流程為:

    圖4 數(shù)據(jù)幀同步協(xié)議

    ? 首先數(shù)據(jù)采集器Collectd對需要監(jiān)控的指標(biāo)進(jìn)行數(shù)據(jù)收集,數(shù)據(jù)幀格式為包含哈希表的列表,即{監(jiān)控條目名: [時間戳,值]}。同時,一個寫線程write-thread對應(yīng)一個plugin-collectd-gnocchi。

    ? 進(jìn)入到數(shù)據(jù)緩沖區(qū)Data Buffer后,本文對監(jiān)控數(shù)據(jù)項使用字典結(jié)構(gòu)(Dictionary),字典中的key存儲監(jiān)控項的名稱,value為該監(jiān)控項的對應(yīng)值。

    ? Redis緩沖區(qū)中含有Incoming Driver,其中包含各個目錄,如temp/dir1、temp/dir2等,之后每個目錄節(jié)點將各自由一個metricd worker進(jìn)行處理。Redis緩沖區(qū)中先存儲監(jiān)控條目名,即字典中的key,隨后每個條目名的對應(yīng)值等待下個步驟傳輸。

    ? 數(shù)據(jù)采集到服務(wù)器端,而數(shù)據(jù)的預(yù)處理過程放到客戶端進(jìn)行。在數(shù)據(jù)采集緩沖區(qū)中保留最新數(shù)據(jù)幀,當(dāng)產(chǎn)生新的數(shù)據(jù)幀時,與緩沖區(qū)中已有的數(shù)據(jù)幀作對比,檢測兩個數(shù)據(jù)幀是否高度相似,假如兩者數(shù)據(jù)相似度非常高,則不再進(jìn)行發(fā)送操作。

    ? 在本文提出的數(shù)據(jù)同步協(xié)議中,數(shù)據(jù)分為兩種類型,對于完整數(shù)據(jù)complete_data來說,以類型為0標(biāo)記,調(diào)用函數(shù)0寫入Redis緩存中對應(yīng)條目名的value值,對于壓縮數(shù)據(jù)compressed_data來說,以類型為1進(jìn)行標(biāo)記,通過函數(shù)1寫入Redis緩存。

    ? 兩個緩沖區(qū)中的內(nèi)容保持同步,假如發(fā)現(xiàn)了新的數(shù)據(jù),在數(shù)據(jù)緩沖區(qū)Data Buffer與Incoming Driver兩個緩沖區(qū)都沒有保存,則認(rèn)為該數(shù)據(jù)為complete data,類型為0,發(fā)送完整數(shù)據(jù)包,并在緩沖區(qū)中生成對應(yīng)的數(shù)據(jù)幀;若發(fā)送的數(shù)據(jù)幀中條目比緩沖區(qū)中的條目少,則多出來的條目對應(yīng)值保持原始值不變。

    下面對算法進(jìn)行定義:

    算法1數(shù)據(jù)幀冗余性優(yōu)化算法

    輸入:來自于單個數(shù)據(jù)采集節(jié)點的日志log={log_msgi|i=1,2,…,N},其中單位子日志log_msgi以字典的形式進(jìn)行存儲,具體格式如下:log_msgi=[{Entryname:{Timestamp,Value}}]。

    輸出:基于流媒體壓縮的日志數(shù)據(jù)。

    1) 數(shù)據(jù)幀原有序列中的key值,即監(jiān)控項名稱,轉(zhuǎn)換為對應(yīng)序列號;

    2) 合并數(shù)據(jù)幀中的時間戳,并抽取Timestamp中的公共部分進(jìn)行統(tǒng)一;

    3) 消除數(shù)據(jù)幀條目中的冗余表項名;

    4) 當(dāng)產(chǎn)生新數(shù)據(jù)時,與緩沖區(qū)已有數(shù)據(jù)作對比,檢測是否高度相似,若相似度較高則不再進(jìn)行操作。

    4.2 系數(shù)量化處理

    針對時序數(shù)據(jù)中因為數(shù)據(jù)過大而占資源過多的性能問題,本文對數(shù)據(jù)系數(shù)進(jìn)行了量化處理。找出一系列數(shù)據(jù)中盡可能接近的公因子進(jìn)行提取,從而使提取后的數(shù)據(jù)值變小,來達(dá)到減少傳輸數(shù)據(jù)量的目標(biāo)。

    系數(shù)量化之前,取原數(shù)據(jù)序列{18, 9, 46, 27, 35}中各個數(shù)據(jù)最為接近的公因子9作為公共系數(shù),在提取該系數(shù)之后,產(chǎn)生新序列:9{2,1,5,3,4}。通過量化處理,能夠減少數(shù)據(jù)存放空間,對系統(tǒng)的表現(xiàn)性能產(chǎn)生優(yōu)化作用。為了還原原始數(shù)據(jù),可以通過量化后的數(shù)據(jù)序列與系數(shù)結(jié)合,產(chǎn)生{18, 9, 45, 27, 36}。

    4.3 系統(tǒng)實現(xiàn)

    集群監(jiān)控系統(tǒng)中的數(shù)據(jù)收集依賴于各個Collectd節(jié)點,數(shù)據(jù)存儲結(jié)合Gnocchi服務(wù)。首先對以下幾個主要組件進(jìn)行說明。Collectd_gnocchi作為一種插件,幫助Collectd發(fā)送給Gnocchi的數(shù)據(jù)接口。Gnocchi_metricd是單獨的線程Thread Worker,從Gnocchi的前端Sack中取任務(wù)節(jié)點,并存儲到Gnocchi的后端數(shù)據(jù)。gnocchiClient為Collectd_gnocchi調(diào)用的發(fā)送數(shù)據(jù)包的接口。Gnocchi_api負(fù)責(zé)接受數(shù)據(jù)包。

    數(shù)據(jù)壓縮與解壓縮流程如圖5所示。首先Collected_gnocchi將Collectd收集的數(shù)據(jù)發(fā)送到Gnocchi的數(shù)據(jù)接口Client,數(shù)據(jù)壓縮完畢之后通過網(wǎng)絡(luò)中的http請求與post請求,隨后數(shù)據(jù)進(jìn)行解壓縮后,Gnocchi_api負(fù)責(zé)接收數(shù)據(jù)包,Gnocchi_metricd中的線程將分別從Gnocchi的前端目錄中調(diào)取任務(wù)節(jié)點。

    圖5 數(shù)據(jù)壓縮與解壓縮

    客戶端和服務(wù)器端的部分代碼如下:

    # 客戶端部分代碼

    Def preparePost(self, typeV)

    refreshCache(raw[‘key’])

    if data[type] == 0

    data[key] = cacheDictionary

    else if data[type] == 1

    data[key] = valueList

    # 服務(wù)器端部分代碼

    Def processData(request)

    getType_Data_Hostname_Timestamp

    # 從Redis緩存中提取對應(yīng)數(shù)據(jù),然后還原數(shù)據(jù)幀

    if data[type] == 1

    myDictionary = loads(redisGet(HostName))

    myDataList = loads(Data);

    getResultDictionary

    # 存入Redis緩存

    else if data[type] == 0

    redisSet(myHostName, myData)

    客戶端的核心代碼實現(xiàn)思路為:

    1) 初始化函數(shù)定義整體數(shù)據(jù)幀緩存,并定義處理后的數(shù)據(jù)列表;

    2) 當(dāng)新數(shù)據(jù)產(chǎn)生時,通過refreshCache函數(shù)起到刷新數(shù)據(jù)幀的作用;

    3) 根據(jù)最新數(shù)據(jù)幀,generateData函數(shù)提取數(shù)據(jù),并保留兩位小數(shù);

    4) 當(dāng)數(shù)據(jù)類型為0時,發(fā)送完整數(shù)據(jù)幀,當(dāng)數(shù)據(jù)類型為1時,發(fā)送壓縮后的數(shù)據(jù)幀。

    服務(wù)器端的核心代碼實現(xiàn)思路為,通過Process_data函數(shù),對兩種數(shù)據(jù)類型分別進(jìn)行處理:

    1) 針對壓縮過的數(shù)據(jù)幀,從Redis緩存中提取相應(yīng)的數(shù)據(jù),然后還原數(shù)據(jù)幀;

    2) 針對未壓縮的數(shù)據(jù)幀,直接存儲Redis緩存。

    5 系統(tǒng)實驗與評估

    5.1 實驗環(huán)境

    系統(tǒng)實驗采用1臺物理機(jī)搭載18個虛擬機(jī)的形式,具體實驗配置如表4所示。

    表4 集群監(jiān)控系統(tǒng)高性能實驗配置

    5.2 實驗結(jié)果

    在分別對采集的監(jiān)控指標(biāo)進(jìn)行時間冗余性數(shù)據(jù)壓縮、空間冗余性數(shù)據(jù)壓縮、量化數(shù)據(jù)壓縮等一系列步驟后,數(shù)據(jù)壓縮前后對比如表5所示。

    表5 監(jiān)控數(shù)據(jù)壓縮前后對比

    本節(jié)對壓縮效果進(jìn)行了實驗測試,在時間間隔為10秒的前提下,每隔10秒對節(jié)點進(jìn)行監(jiān)控數(shù)據(jù)收集,為了比較多次實驗下相應(yīng)的壓縮效果,本文分別在時間軸10、20、30、40和50 s對節(jié)點取了5次監(jiān)控指標(biāo)數(shù)據(jù),得到了數(shù)據(jù)在各個階段優(yōu)化后相應(yīng)壓縮結(jié)果。從表6中可以看出,壓縮的數(shù)據(jù)比例平均為原始數(shù)據(jù)的88.68%,壓縮后數(shù)據(jù)大小為原始數(shù)據(jù)的11.32%,其中時間冗余與空間冗余優(yōu)化的提升效果最為明顯,多次實驗平均優(yōu)化結(jié)果分別為35.33%和52.60%。

    表6 監(jiān)控數(shù)據(jù)各流程壓縮比

    同時本文將實現(xiàn)的流式高性能壓縮算法與當(dāng)前包括LZ4、Brotli、LZF、Snappy等在內(nèi)的主流日志壓縮算法進(jìn)行效果對比,具體結(jié)果如表7所示??梢钥吹皆谶@些算法中,本文實現(xiàn)的流式算法達(dá)到了最好的壓縮效果,在兩組實驗測試數(shù)據(jù)中,壓縮后的數(shù)據(jù)對原始數(shù)據(jù)大小的比例分別為11.22%以及11.25%,其余四種傳統(tǒng)算法分別在14.86%到18.8%之間,說明本文設(shè)計的基于流媒體壓縮算法在實際數(shù)據(jù)采集中也有著可觀的性能表現(xiàn)。

    表7 本文算法與LZ4、Brotli、LZF、Snappy算法效率對比

    本文提出的基于流媒體壓縮算法在性能方面優(yōu)于其他主流壓縮算法的主要原因為:針對流式數(shù)據(jù)的時間冗余性與空間冗余性兩大特征,基于流媒體的壓縮算法通過信息同步的策略使得重復(fù)數(shù)據(jù)不再進(jìn)行傳輸;同時針對兩個時間節(jié)點來看,假如數(shù)值相近,本文減少一次信息的發(fā)送,從而進(jìn)一步減少信息的冗余。與傳統(tǒng)的數(shù)據(jù)壓縮算法相比,對數(shù)據(jù)幀在時間軸上的冗余性做出了良好的優(yōu)化。此外,這些壓縮算法會帶來額外網(wǎng)絡(luò)帶寬開銷的,本文算法計算大多分布在從屬節(jié)點上,因此不會對主節(jié)點帶來額外的計算開銷。

    6 結(jié) 語

    針對目前主流集群監(jiān)控系統(tǒng)在性能方面的問題,本文旨在對一種基于流媒體壓縮算法的高可用集群監(jiān)控系統(tǒng)進(jìn)行設(shè)計與實現(xiàn)。首先針對系統(tǒng)產(chǎn)生問題的原因,如監(jiān)控數(shù)據(jù)量在縱向?qū)用婧蜋M向?qū)用娴南鄳?yīng)增長規(guī)律,數(shù)據(jù)冗余性體現(xiàn),結(jié)合從實際節(jié)點采集的數(shù)據(jù)幀格式進(jìn)行展示與分析。為了解決該問題,本文設(shè)計了運行在數(shù)據(jù)采集器Collect的與數(shù)據(jù)庫Gnocchi之間的新的數(shù)據(jù)幀同步協(xié)議,并先后從數(shù)據(jù)幀空間冗余性優(yōu)化、數(shù)據(jù)幀時間冗余性優(yōu)化、系數(shù)量化處理等步驟進(jìn)行實現(xiàn)。

    在系統(tǒng)實驗中,每隔一段時間對實際節(jié)點進(jìn)行數(shù)據(jù)采集,經(jīng)過系統(tǒng)高性能設(shè)計與實現(xiàn)之后,數(shù)據(jù)優(yōu)化效果明顯,其中對數(shù)據(jù)幀的時間冗余性和空間冗余性的提升效果最為突出,壓縮比分別在35%與52%左右。從實驗結(jié)果可以看出,本文實現(xiàn)的高性能集群監(jiān)控系統(tǒng)在實際應(yīng)用場景中具有很大的發(fā)展?jié)摿Α?/p>

    猜你喜歡
    壓縮算法采集器緩沖區(qū)
    嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設(shè)計與實現(xiàn)
    COVID-19大便標(biāo)本采集器的設(shè)計及應(yīng)用
    基于參數(shù)識別的軌道電路監(jiān)測數(shù)據(jù)壓縮算法研究
    基于ZigBee的大型公共建筑能耗采集器設(shè)計
    基于LabVIEW的多數(shù)據(jù)采集器自動監(jiān)控軟件設(shè)計與開發(fā)
    更正聲明
    關(guān)鍵鏈技術(shù)緩沖區(qū)的確定方法研究
    PMU數(shù)據(jù)預(yù)處理及壓縮算法
    多接口溫濕度數(shù)據(jù)采集器的設(shè)計
    地理信息系統(tǒng)繪圖緩沖區(qū)技術(shù)設(shè)計與實現(xiàn)
    亚洲中文字幕日韩| 91精品一卡2卡3卡4卡| 欧美色视频一区免费| 国产精品精品国产色婷婷| 国产精品无大码| 国产女主播在线喷水免费视频网站 | 亚洲自偷自拍三级| 日本免费一区二区三区高清不卡| 亚洲无线观看免费| 国产精品蜜桃在线观看 | 亚洲不卡免费看| 国产精品一区www在线观看| 精品一区二区三区视频在线| 久久久久网色| 亚洲人与动物交配视频| 国产片特级美女逼逼视频| 好男人在线观看高清免费视频| 亚洲精品久久国产高清桃花| 男女视频在线观看网站免费| 18禁在线无遮挡免费观看视频| 日日摸夜夜添夜夜爱| 日本免费a在线| a级毛片a级免费在线| 黄片无遮挡物在线观看| 日本免费一区二区三区高清不卡| 国产爱豆传媒在线观看| 国产成人精品久久久久久| 国产高清不卡午夜福利| 99久久九九国产精品国产免费| 直男gayav资源| 一卡2卡三卡四卡精品乱码亚洲| 成年免费大片在线观看| 婷婷色av中文字幕| 蜜桃亚洲精品一区二区三区| 国产日本99.免费观看| 国产日本99.免费观看| 热99re8久久精品国产| 国产精品美女特级片免费视频播放器| 国产精品久久久久久精品电影小说 | 久久综合国产亚洲精品| 中国国产av一级| 久久精品综合一区二区三区| 国产视频首页在线观看| 成人漫画全彩无遮挡| 久久精品综合一区二区三区| 亚洲综合色惰| 成人国产麻豆网| 村上凉子中文字幕在线| 欧美+亚洲+日韩+国产| 欧美一区二区精品小视频在线| 在线观看免费视频日本深夜| 白带黄色成豆腐渣| 一级黄色大片毛片| 精品一区二区三区视频在线| 男插女下体视频免费在线播放| 亚洲av第一区精品v没综合| 一级毛片电影观看 | 成年女人看的毛片在线观看| 黄色日韩在线| 一级黄色大片毛片| 国产熟女欧美一区二区| 熟女电影av网| 在线观看免费视频日本深夜| 精品一区二区三区人妻视频| 国产乱人视频| 99国产极品粉嫩在线观看| 亚洲真实伦在线观看| 国产三级中文精品| 欧美日本亚洲视频在线播放| 一进一出抽搐gif免费好疼| 久久99精品国语久久久| 波野结衣二区三区在线| 亚洲经典国产精华液单| 欧美日韩一区二区视频在线观看视频在线 | 美女黄网站色视频| 免费看a级黄色片| 男女啪啪激烈高潮av片| 日韩人妻高清精品专区| 成人毛片60女人毛片免费| av.在线天堂| 我的老师免费观看完整版| 看非洲黑人一级黄片| 欧美精品国产亚洲| 九九热线精品视视频播放| 校园人妻丝袜中文字幕| 黄色视频,在线免费观看| 偷拍熟女少妇极品色| 狂野欧美激情性xxxx在线观看| 91久久精品国产一区二区三区| 超碰av人人做人人爽久久| 久久6这里有精品| 免费搜索国产男女视频| 一本久久中文字幕| 欧美色视频一区免费| 99久久精品国产国产毛片| 久久久国产成人免费| 精品久久久久久成人av| 成人综合一区亚洲| 国产一级毛片在线| 成人二区视频| 干丝袜人妻中文字幕| 韩国av在线不卡| 少妇人妻精品综合一区二区 | 干丝袜人妻中文字幕| 欧美xxxx性猛交bbbb| 麻豆国产av国片精品| 麻豆成人午夜福利视频| 亚洲最大成人手机在线| 欧美成人一区二区免费高清观看| 精品免费久久久久久久清纯| 美女xxoo啪啪120秒动态图| 国产精品精品国产色婷婷| 最后的刺客免费高清国语| 1024手机看黄色片| 韩国av在线不卡| 亚洲国产精品久久男人天堂| 男女那种视频在线观看| 亚洲三级黄色毛片| 不卡视频在线观看欧美| 国产探花极品一区二区| 人体艺术视频欧美日本| 欧美一区二区精品小视频在线| 久久欧美精品欧美久久欧美| 久久人人精品亚洲av| 亚洲乱码一区二区免费版| 久久精品夜夜夜夜夜久久蜜豆| 亚洲自偷自拍三级| 精品久久国产蜜桃| 岛国在线免费视频观看| 欧美激情在线99| 国产亚洲av嫩草精品影院| 国产片特级美女逼逼视频| 精品无人区乱码1区二区| 99久久成人亚洲精品观看| 99久久人妻综合| 欧美极品一区二区三区四区| 免费在线观看成人毛片| 成人二区视频| 乱码一卡2卡4卡精品| 亚洲在线自拍视频| 99久久精品一区二区三区| 人人妻人人看人人澡| 久久鲁丝午夜福利片| 亚洲人成网站在线播放欧美日韩| av天堂在线播放| 2022亚洲国产成人精品| 蜜臀久久99精品久久宅男| 欧美日本亚洲视频在线播放| 黄片无遮挡物在线观看| 欧美日本亚洲视频在线播放| 亚洲av不卡在线观看| 插阴视频在线观看视频| 成人鲁丝片一二三区免费| 欧美成人精品欧美一级黄| 国产亚洲av片在线观看秒播厂 | 中文字幕制服av| 一进一出抽搐动态| 男人的好看免费观看在线视频| 国产一区二区激情短视频| 亚洲精品色激情综合| 久久中文看片网| or卡值多少钱| 国产黄片视频在线免费观看| 春色校园在线视频观看| 中文字幕免费在线视频6| 成人综合一区亚洲| 成人高潮视频无遮挡免费网站| 日本黄色视频三级网站网址| av在线观看视频网站免费| 婷婷色综合大香蕉| 亚洲av免费在线观看| 我要看日韩黄色一级片| 国产精华一区二区三区| 欧美另类亚洲清纯唯美| 成年免费大片在线观看| 九九爱精品视频在线观看| 欧美高清性xxxxhd video| 最近最新中文字幕大全电影3| 精品国内亚洲2022精品成人| kizo精华| 亚洲国产精品合色在线| 国产高清不卡午夜福利| 久久久午夜欧美精品| 丰满人妻一区二区三区视频av| 亚洲综合色惰| 成人漫画全彩无遮挡| 国产老妇伦熟女老妇高清| 麻豆乱淫一区二区| 中文在线观看免费www的网站| 免费av观看视频| 亚洲av二区三区四区| 12—13女人毛片做爰片一| 插逼视频在线观看| 中文字幕av成人在线电影| 日日啪夜夜撸| 精品国产三级普通话版| 国产黄a三级三级三级人| 九色成人免费人妻av| 中文精品一卡2卡3卡4更新| 国产精品爽爽va在线观看网站| 天天躁日日操中文字幕| 99热6这里只有精品| 精品久久久久久久久久久久久| 午夜免费男女啪啪视频观看| 国产精品.久久久| 波多野结衣高清无吗| 日韩欧美三级三区| 嫩草影院入口| 亚洲精品影视一区二区三区av| videossex国产| 亚洲国产色片| 韩国av在线不卡| 欧美成人免费av一区二区三区| 天堂网av新在线| 人人妻人人看人人澡| 免费无遮挡裸体视频| 成人毛片a级毛片在线播放| 亚洲欧美日韩无卡精品| 国产蜜桃级精品一区二区三区| 国产精品一区二区三区四区久久| 黄色视频,在线免费观看| 精品久久久久久久末码| 亚洲成a人片在线一区二区| 成人美女网站在线观看视频| 国产高清不卡午夜福利| 天天躁夜夜躁狠狠久久av| 久久婷婷人人爽人人干人人爱| 久久久精品94久久精品| 亚洲精品影视一区二区三区av| 国产精品一区www在线观看| 国产v大片淫在线免费观看| 国产乱人偷精品视频| 美女被艹到高潮喷水动态| 九草在线视频观看| 国产乱人视频| 久久久久久久久大av| 一级毛片久久久久久久久女| 免费观看的影片在线观看| 韩国av在线不卡| 日本一本二区三区精品| 国产伦理片在线播放av一区 | 免费无遮挡裸体视频| ponron亚洲| 黄片wwwwww| 国产黄a三级三级三级人| 岛国在线免费视频观看| 亚洲国产精品成人久久小说 | 99国产极品粉嫩在线观看| 99热网站在线观看| 狂野欧美激情性xxxx在线观看| 在线观看午夜福利视频| 成人av在线播放网站| 国产精品久久电影中文字幕| 午夜免费男女啪啪视频观看| 国产精品久久久久久久电影| 免费观看精品视频网站| 日韩视频在线欧美| 老熟妇乱子伦视频在线观看| av国产免费在线观看| 欧美性猛交黑人性爽| 欧美xxxx性猛交bbbb| 美女被艹到高潮喷水动态| 一个人看的www免费观看视频| 国产精品久久久久久亚洲av鲁大| 一边亲一边摸免费视频| 成人av在线播放网站| 啦啦啦观看免费观看视频高清| 看十八女毛片水多多多| 久久精品夜夜夜夜夜久久蜜豆| 亚洲aⅴ乱码一区二区在线播放| 精品日产1卡2卡| 婷婷亚洲欧美| 在线观看一区二区三区| 日本爱情动作片www.在线观看| 欧美极品一区二区三区四区| 日本熟妇午夜| 国产亚洲5aaaaa淫片| 成人漫画全彩无遮挡| 在线免费观看不下载黄p国产| 欧美一级a爱片免费观看看| 日本-黄色视频高清免费观看| 日韩欧美三级三区| 在现免费观看毛片| 最近最新中文字幕大全电影3| 在线天堂最新版资源| 国产精品国产三级国产av玫瑰| 最后的刺客免费高清国语| 国产又黄又爽又无遮挡在线| 欧美区成人在线视频| 国产精品一及| 亚洲aⅴ乱码一区二区在线播放| 成年av动漫网址| www.av在线官网国产| 成人国产麻豆网| 好男人视频免费观看在线| 中文在线观看免费www的网站| 美女脱内裤让男人舔精品视频 | 久久综合国产亚洲精品| 国产亚洲欧美98| 日本熟妇午夜| 欧美日韩在线观看h| 免费大片18禁| 久久人人爽人人片av| 97超碰精品成人国产| 日韩精品青青久久久久久| 久久久精品94久久精品| 91精品国产九色| 变态另类成人亚洲欧美熟女| 国产精品一区二区三区四区久久| 好男人在线观看高清免费视频| 国产成人午夜福利电影在线观看| 91aial.com中文字幕在线观看| 99久久无色码亚洲精品果冻| av黄色大香蕉| 人妻夜夜爽99麻豆av| 精品午夜福利在线看| 一本久久中文字幕| 日本三级黄在线观看| 伦理电影大哥的女人| 国产一区二区在线观看日韩| 深爱激情五月婷婷| 国产麻豆成人av免费视频| 亚洲丝袜综合中文字幕| 精品不卡国产一区二区三区| 精品人妻视频免费看| 一级毛片电影观看 | 国产探花极品一区二区| 在线天堂最新版资源| 美女黄网站色视频| 亚洲国产色片| 国产日韩欧美在线精品| 联通29元200g的流量卡| 全区人妻精品视频| eeuss影院久久| 亚洲精品久久久久久婷婷小说 | 99热只有精品国产| 免费搜索国产男女视频| 亚洲成人久久爱视频| 99热这里只有是精品在线观看| 日韩一区二区视频免费看| 色5月婷婷丁香| 国产av在哪里看| 91久久精品国产一区二区三区| 一本久久精品| 欧美高清性xxxxhd video| 老熟妇乱子伦视频在线观看| 精华霜和精华液先用哪个| 亚洲国产欧美人成| 一级毛片电影观看 | 久久精品夜色国产| a级毛色黄片| 一级毛片aaaaaa免费看小| av在线亚洲专区| 日韩欧美 国产精品| 亚洲18禁久久av| 嫩草影院精品99| 熟女人妻精品中文字幕| 日韩欧美在线乱码| av在线蜜桃| 永久网站在线| 亚洲乱码一区二区免费版| 变态另类成人亚洲欧美熟女| 国产午夜福利久久久久久| 婷婷色综合大香蕉| 国产精品三级大全| 亚洲成人久久爱视频| 国产在视频线在精品| av福利片在线观看| 97超视频在线观看视频| 亚洲精品影视一区二区三区av| 亚洲久久久久久中文字幕| 亚洲中文字幕一区二区三区有码在线看| 日韩三级伦理在线观看| 日韩欧美精品免费久久| 少妇的逼水好多| 尾随美女入室| 熟女电影av网| 亚洲一区二区三区色噜噜| 国产蜜桃级精品一区二区三区| 日韩强制内射视频| 天天躁日日操中文字幕| 欧美极品一区二区三区四区| 免费av不卡在线播放| 国产精品无大码| 日韩高清综合在线| 亚洲久久久久久中文字幕| 国产午夜精品论理片| 最新中文字幕久久久久| av在线播放精品| 特大巨黑吊av在线直播| 久久久久国产网址| 黑人高潮一二区| 中文字幕精品亚洲无线码一区| 在线观看66精品国产| 深夜精品福利| 能在线免费看毛片的网站| 最近最新中文字幕大全电影3| 亚洲av二区三区四区| 国产精品福利在线免费观看| 久久久久久久午夜电影| 久久人人爽人人片av| 亚洲性久久影院| 国产高清激情床上av| 日本黄色片子视频| 国产成人一区二区在线| 精品久久久久久久久亚洲| 一边摸一边抽搐一进一小说| av在线老鸭窝| 成年女人看的毛片在线观看| 欧美一区二区国产精品久久精品| 午夜久久久久精精品| 国产乱人视频| 国产精品日韩av在线免费观看| 一级av片app| 尾随美女入室| 身体一侧抽搐| 成人漫画全彩无遮挡| 欧美色视频一区免费| 亚洲欧美日韩东京热| 亚洲中文字幕一区二区三区有码在线看| 欧美日韩精品成人综合77777| 毛片一级片免费看久久久久| 麻豆乱淫一区二区| 国产高清不卡午夜福利| 少妇裸体淫交视频免费看高清| 99热这里只有精品一区| 1000部很黄的大片| 青春草亚洲视频在线观看| 青春草国产在线视频 | 亚洲无线观看免费| 国产精品福利在线免费观看| 久久久精品94久久精品| 久久久久性生活片| www.av在线官网国产| 男人舔女人下体高潮全视频| 亚洲精品国产av成人精品| 天堂av国产一区二区熟女人妻| 国内少妇人妻偷人精品xxx网站| 久久精品综合一区二区三区| 日韩 亚洲 欧美在线| 欧美+日韩+精品| 久久婷婷人人爽人人干人人爱| 国产麻豆成人av免费视频| 中文资源天堂在线| 亚洲美女视频黄频| 精品欧美国产一区二区三| 欧洲精品卡2卡3卡4卡5卡区| 婷婷亚洲欧美| 久久精品人妻少妇| 国产黄片视频在线免费观看| 中文字幕免费在线视频6| 小说图片视频综合网站| 国产av不卡久久| 99久久精品国产国产毛片| 99热精品在线国产| 午夜福利高清视频| а√天堂www在线а√下载| 精品久久久久久成人av| 99视频精品全部免费 在线| 久久综合国产亚洲精品| 最近最新中文字幕大全电影3| 国产精品综合久久久久久久免费| 成人漫画全彩无遮挡| 老司机福利观看| 永久网站在线| 一区二区三区四区激情视频 | 亚洲丝袜综合中文字幕| 精品熟女少妇av免费看| 丰满乱子伦码专区| 啦啦啦啦在线视频资源| 伊人久久精品亚洲午夜| 中文欧美无线码| 插阴视频在线观看视频| 亚洲av中文字字幕乱码综合| 日韩人妻高清精品专区| a级毛片免费高清观看在线播放| 少妇人妻精品综合一区二区 | 青春草国产在线视频 | 色吧在线观看| 国产av一区在线观看免费| 欧美一区二区精品小视频在线| 狂野欧美激情性xxxx在线观看| 国产大屁股一区二区在线视频| 午夜福利在线在线| 97热精品久久久久久| 99精品在免费线老司机午夜| 中文欧美无线码| 国产老妇伦熟女老妇高清| 在线播放无遮挡| 男女下面进入的视频免费午夜| 国产精品嫩草影院av在线观看| 国产午夜精品一二区理论片| 自拍偷自拍亚洲精品老妇| 99久久无色码亚洲精品果冻| 亚洲国产日韩欧美精品在线观看| 精品人妻偷拍中文字幕| 听说在线观看完整版免费高清| 特大巨黑吊av在线直播| 日本-黄色视频高清免费观看| 久久精品影院6| 国内精品宾馆在线| 午夜免费男女啪啪视频观看| 3wmmmm亚洲av在线观看| 国产日本99.免费观看| 在线a可以看的网站| 亚洲欧洲日产国产| 国产又黄又爽又无遮挡在线| 亚洲成人中文字幕在线播放| 在线免费观看不下载黄p国产| 亚洲欧美成人精品一区二区| 亚洲成人中文字幕在线播放| 亚洲av熟女| 国产综合懂色| 人人妻人人澡欧美一区二区| 老司机影院成人| 少妇的逼水好多| 男女做爰动态图高潮gif福利片| 秋霞在线观看毛片| 熟女电影av网| 国产精品日韩av在线免费观看| 人妻久久中文字幕网| 波多野结衣高清无吗| 亚洲成人久久爱视频| 欧美三级亚洲精品| 69人妻影院| 欧美+日韩+精品| av又黄又爽大尺度在线免费看 | 人体艺术视频欧美日本| 99热只有精品国产| 久久99热6这里只有精品| 伊人久久精品亚洲午夜| 日日撸夜夜添| 国产中年淑女户外野战色| 欧美区成人在线视频| 久久精品综合一区二区三区| 亚洲国产精品久久男人天堂| 深夜a级毛片| 亚洲国产色片| 三级男女做爰猛烈吃奶摸视频| 成人午夜高清在线视频| 午夜精品一区二区三区免费看| 五月伊人婷婷丁香| 国产精品久久久久久精品电影小说 | 国产精品久久久久久av不卡| 中文字幕久久专区| 成人三级黄色视频| 美女 人体艺术 gogo| 黄色配什么色好看| АⅤ资源中文在线天堂| 精品久久久久久久久久久久久| 2021天堂中文幕一二区在线观| 精品一区二区三区视频在线| 成人永久免费在线观看视频| 亚洲精品色激情综合| 国产日韩欧美在线精品| 亚洲综合色惰| 成人美女网站在线观看视频| 国产精品国产三级国产av玫瑰| 国产大屁股一区二区在线视频| 精品久久久久久久久亚洲| 亚洲一区高清亚洲精品| 26uuu在线亚洲综合色| 干丝袜人妻中文字幕| 精品人妻视频免费看| 少妇人妻精品综合一区二区 | 91av网一区二区| 亚洲人与动物交配视频| 亚洲精品乱码久久久久久按摩| 美女cb高潮喷水在线观看| 大香蕉久久网| 精品久久久久久久末码| 亚洲国产精品合色在线| 少妇猛男粗大的猛烈进出视频 | 亚洲图色成人| 亚洲真实伦在线观看| 亚洲国产精品成人久久小说 | 色噜噜av男人的天堂激情| 又爽又黄无遮挡网站| 日本与韩国留学比较| 最后的刺客免费高清国语| 大又大粗又爽又黄少妇毛片口| 久久精品国产清高在天天线| 级片在线观看| 看非洲黑人一级黄片| 成年av动漫网址| 欧美日本亚洲视频在线播放| 男人狂女人下面高潮的视频| 亚洲精品日韩在线中文字幕 | 91精品国产九色| 2021天堂中文幕一二区在线观| 国产精品美女特级片免费视频播放器| 午夜福利高清视频| 1024手机看黄色片| 男女啪啪激烈高潮av片| 男人的好看免费观看在线视频| 亚洲中文字幕日韩| 欧美成人一区二区免费高清观看| 欧美区成人在线视频| 色播亚洲综合网| 小说图片视频综合网站| 久久韩国三级中文字幕| 美女脱内裤让男人舔精品视频 | 国产成人影院久久av| 在线天堂最新版资源| 亚洲国产精品成人综合色| 女同久久另类99精品国产91| 国产成人a∨麻豆精品| 三级男女做爰猛烈吃奶摸视频| videossex国产| 国产成人精品久久久久久| 性色avwww在线观看| 国产爱豆传媒在线观看| 韩国av在线不卡| 一区福利在线观看| 直男gayav资源|