亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

物聯(lián)網(wǎng)云監(jiān)控平臺(tái)開發(fā)實(shí)戰(zhàn):基于MQTT的設(shè)備管理系統(tǒng)設(shè)計(jì)

物聯(lián)網(wǎng)云監(jiān)控平臺(tái)開發(fā)實(shí)戰(zhàn):基于MQTT的設(shè)備管理系統(tǒng)設(shè)計(jì) 簡(jiǎn)介一套面向物聯(lián)網(wǎng)開發(fā)者的WEB設(shè)備管理與云監(jiān)控源碼項(xiàng)目適用于智能家居、工業(yè)自動(dòng)化等場(chǎng)景解決設(shè)備遠(yuǎn)程接入、狀態(tài)監(jiān)測(cè)、數(shù)據(jù)管理與可視化的實(shí)際問(wèn)題。壓縮包共1915個(gè)文件約27.24MB以PHP后端邏輯、HTML/JS前端頁(yè)面、CSS樣式、PNG圖片素材為主同時(shí)包含MySQL數(shù)據(jù)庫(kù)腳本、配置文件及說(shuō)明文檔便于本地搭建和二次開發(fā)。已有836人學(xué)習(xí)瀏覽。源碼涵蓋設(shè)備注冊(cè)、數(shù)據(jù)上報(bào)、API接口、規(guī)則引擎、可視化界面等完整模塊并提供MQTT通信示例與C語(yǔ)言組件開發(fā)者可據(jù)此掌握從設(shè)備接入到前端展示的完整鏈路還可結(jié)合Excel數(shù)據(jù)表格和Markdown筆記理解項(xiàng)目結(jié)構(gòu)適合希望系統(tǒng)學(xué)習(xí)IoT開發(fā)和云監(jiān)控實(shí)踐的初中級(jí)工程師。1. 項(xiàng)目背景與整體設(shè)計(jì)思路1.1 為什么需要一套物聯(lián)網(wǎng)云監(jiān)控平臺(tái)我做過(guò)不少設(shè)備管理類項(xiàng)目但真正把設(shè)備接入、實(shí)時(shí)監(jiān)控、遠(yuǎn)程運(yùn)維、告警通知串成一條完整閉環(huán)的還是這套物聯(lián)網(wǎng)云監(jiān)控WEB設(shè)備管理系統(tǒng)。以前很多工廠或集成商的設(shè)備管理方式說(shuō)句不好聽的靠的就是一張Excel表和老師傅的經(jīng)驗(yàn)。設(shè)備掛沒(méi)掛、數(shù)據(jù)對(duì)不對(duì)、耗了多少電全憑人工去現(xiàn)場(chǎng)看效率低不說(shuō)出了問(wèn)題往往已經(jīng)是幾個(gè)小時(shí)之后了。這套項(xiàng)目的核心價(jià)值就是給傳統(tǒng)設(shè)備裝上物聯(lián)網(wǎng)這雙眼睛。通過(guò)傳感器和智能網(wǎng)關(guān)把設(shè)備狀態(tài)、環(huán)境參數(shù)、能耗數(shù)據(jù)實(shí)時(shí)采集上來(lái)再在WEB端用圖表、儀表盤、地圖等形式直觀展示。運(yùn)維人員不用再頻繁跑現(xiàn)場(chǎng)坐在電腦前甚至用手機(jī)瀏覽器就能看到設(shè)備的實(shí)時(shí)狀態(tài)。平臺(tái)內(nèi)置的告警規(guī)則還能在設(shè)備異常時(shí)第一時(shí)間推送通知把故障響應(yīng)時(shí)間從小時(shí)級(jí)壓縮到分鐘級(jí)這背后省下的人力成本和產(chǎn)能損失做過(guò)工業(yè)項(xiàng)目的人心里都有數(shù)。1.2 技術(shù)選型背后的真實(shí)考量做物聯(lián)網(wǎng)平臺(tái)技術(shù)棧的選擇直接決定后續(xù)的開發(fā)效率和運(yùn)維成本。這套源碼的技術(shù)路線比較主流后端采用Java Spring Boot框架前端使用Vue.js Element UI數(shù)據(jù)庫(kù)選用MySQL存儲(chǔ)業(yè)務(wù)數(shù)據(jù)消息通信層用的是EMQX或Mosquitto這類MQTT Broker。為什么這么選Spring Boot的生態(tài)成熟集成MyBatis、Redis、定時(shí)任務(wù)都非常順手Vue.js配合Element UI做后臺(tái)管理界面效率極高畢竟設(shè)備管理頁(yè)面的形態(tài)大家都熟悉——表格、表單、彈窗、樹形結(jié)構(gòu)這套組合閉著眼睛都能寫MQTT協(xié)議則是物聯(lián)網(wǎng)場(chǎng)景的事實(shí)標(biāo)準(zhǔn)帶寬占用低、QoS機(jī)制可靠非常適合大量設(shè)備的長(zhǎng)連接場(chǎng)景。不少同學(xué)會(huì)糾結(jié)要不要上微服務(wù)或者直接用Netty自己寫通信層。我的建議是如果不是千萬(wàn)級(jí)設(shè)備接入體量單體應(yīng)用加MQTT Broker的方案完全夠用開發(fā)成本低、排查問(wèn)題方便后期真到了瓶頸階段再按模塊拆分也不遲。做物聯(lián)網(wǎng)平臺(tái)跑通業(yè)務(wù)閉環(huán)永遠(yuǎn)是第一優(yōu)先級(jí)過(guò)度設(shè)計(jì)是新手最容易犯的毛病。2. 系統(tǒng)架構(gòu)與核心模塊拆解2.1 三層架構(gòu)設(shè)備端、平臺(tái)端、WEB端整個(gè)平臺(tái)在大體上分為三層設(shè)備接入層、平臺(tái)服務(wù)層、WEB展示層。設(shè)備接入層負(fù)責(zé)各類傳感器、控制器、智能網(wǎng)關(guān)的數(shù)據(jù)采集和指令下發(fā)通過(guò)MQTT協(xié)議與平臺(tái)保持長(zhǎng)連接平臺(tái)服務(wù)層是核心大腦負(fù)責(zé)設(shè)備認(rèn)證、數(shù)據(jù)解析、存儲(chǔ)、規(guī)則引擎、告警計(jì)算等WEB展示層面向運(yùn)維人員和管理員提供設(shè)備管理、實(shí)時(shí)監(jiān)控、數(shù)據(jù)報(bào)表、系統(tǒng)配置等界面。這三層之間通過(guò)HTTP和MQTT兩類協(xié)議交互。HTTP用于前后端業(yè)務(wù)接口比如登錄、設(shè)備增刪改查、歷史數(shù)據(jù)查詢MQTT用于實(shí)時(shí)數(shù)據(jù)上行和指令下行。為什么要用兩種協(xié)議因?yàn)闃I(yè)務(wù)操作和實(shí)時(shí)通信的訴求不一樣HTTP請(qǐng)求響應(yīng)模式適合低頻、可控的操作而設(shè)備數(shù)據(jù)是持續(xù)產(chǎn)生、需要主動(dòng)推送的輪詢HTTP不僅浪費(fèi)帶寬延遲也不可控。這種混合架構(gòu)是當(dāng)前物聯(lián)網(wǎng)平臺(tái)的主流做法既保證交互體驗(yàn)又兼顧實(shí)時(shí)性能。2.2 數(shù)據(jù)存儲(chǔ)時(shí)序數(shù)據(jù)與業(yè)務(wù)數(shù)據(jù)分離設(shè)備產(chǎn)生的數(shù)據(jù)有一個(gè)顯著特點(diǎn)寫入頻繁、更新極少、帶有時(shí)間戳。如果和業(yè)務(wù)數(shù)據(jù)混在一起存隨著時(shí)間推移表會(huì)變得非常大查詢效率也越來(lái)越差。這套項(xiàng)目里的做法是將兩類數(shù)據(jù)分開存儲(chǔ)設(shè)備基本信息、用戶信息、組織架構(gòu)、告警規(guī)則等存在MySQL業(yè)務(wù)庫(kù)溫濕度、電壓、電流這類遙測(cè)數(shù)據(jù)按天或按月分表也可以選擇存入InfluxDB、TDengine等時(shí)序數(shù)據(jù)庫(kù)。這里有個(gè)設(shè)計(jì)細(xì)節(jié)值得拓展一下很多設(shè)備數(shù)據(jù)本身對(duì)實(shí)時(shí)性要求高但對(duì)歷史精度要求沒(méi)那么苛刻所以在存儲(chǔ)策略上可以做降采樣。比如原始數(shù)據(jù)每5秒一條存3個(gè)月后可以聚合為每分鐘一條存1年后再降為每10分鐘一條。這樣既保證近期數(shù)據(jù)的高精度又能控制長(zhǎng)期存儲(chǔ)的成本。代碼里通常用一個(gè)定時(shí)任務(wù)來(lái)完成數(shù)據(jù)清理和聚合調(diào)用時(shí)序庫(kù)的連續(xù)查詢功能就能實(shí)現(xiàn)。這套方案對(duì)于預(yù)算有限的團(tuán)隊(duì)特別實(shí)用因?yàn)榉?wù)器磁盤沒(méi)那么容易被打滿。2.3 平臺(tái)的核心能力邊界這套源碼作為中小型物聯(lián)網(wǎng)平臺(tái)覆蓋的能力包括設(shè)備管理、實(shí)時(shí)監(jiān)控、遠(yuǎn)程控制、告警中心、數(shù)據(jù)統(tǒng)計(jì)、用戶權(quán)限、操作日志等。設(shè)備管理支持批量導(dǎo)入導(dǎo)出方便初始化或者遷移遠(yuǎn)程控制支持下發(fā)指令并反饋執(zhí)行結(jié)果告警中心支持按設(shè)備分組、按規(guī)則模板批量配置閾值告警數(shù)據(jù)統(tǒng)計(jì)提供曲線圖和報(bào)表導(dǎo)出用于分析運(yùn)行趨勢(shì)。在實(shí)際落地中平臺(tái)還有幾個(gè)隱藏價(jià)值點(diǎn)容易被忽略一是操作日志完備誰(shuí)在什么時(shí)間操作了哪臺(tái)設(shè)備全程留痕這在工廠審計(jì)中很關(guān)鍵二是開放API接口方便與第三方系統(tǒng)如ERP、MES對(duì)接三是數(shù)據(jù)看板支持大屏展示會(huì)議室墻上的大屏接上這個(gè)頁(yè)面整個(gè)產(chǎn)線狀態(tài)一目了然很適合做成果匯報(bào)。這套源碼的邊界和應(yīng)用場(chǎng)景基本覆蓋了中小型項(xiàng)目的絕大多數(shù)需求。3. 設(shè)備接入與上下行數(shù)據(jù)鏈路3.1 MQTT接入流程與設(shè)備認(rèn)證設(shè)備接入的第一步是認(rèn)證。每個(gè)設(shè)備在平臺(tái)注冊(cè)后會(huì)生成唯一的設(shè)備標(biāo)識(shí)如產(chǎn)品Key和設(shè)備序列號(hào)設(shè)備端連接MQTT Broker時(shí)使用設(shè)備證書或Token進(jìn)行認(rèn)證。最常用的做法是采用一機(jī)一密的機(jī)制平臺(tái)為每一臺(tái)設(shè)備生成專屬的ClientId和密碼設(shè)備連接時(shí)攜帶這些信息Broker通過(guò)認(rèn)證插件校驗(yàn)合法性非法設(shè)備直接拒絕連接。從實(shí)操層面看設(shè)備接入流程可以拆成四步第一步在WEB端添加產(chǎn)品定義產(chǎn)品的數(shù)據(jù)模型包括屬性、事件、服務(wù)三類能力第二步為具體設(shè)備實(shí)例填寫序列號(hào)等信息獲取連接憑證第三步設(shè)備端使用MQTT客戶端庫(kù)如Eclipse Paho、MQTT.fx連接Broker訂閱指令主題第四步設(shè)備上報(bào)數(shù)據(jù)后平臺(tái)驗(yàn)證數(shù)據(jù)格式、寫入數(shù)據(jù)庫(kù)并更新設(shè)備在線狀態(tài)。這套流程走順了后面接新設(shè)備就是純粹的配置工作不用改代碼。3.2 數(shù)據(jù)上行從JSON到結(jié)構(gòu)化存儲(chǔ)設(shè)備上報(bào)的數(shù)據(jù)格式通常有兩種一種是非標(biāo)的JSON字符串另一種是物模型定義的標(biāo)準(zhǔn)數(shù)據(jù)格式。推薦使用物模型的方式因?yàn)檫@樣平臺(tái)可以通過(guò)JSON Schema校驗(yàn)數(shù)據(jù)合法性新設(shè)備接入也不用為每種設(shè)備寫一套解析代碼。例如一個(gè)溫濕度傳感器上報(bào)的JSON內(nèi)容大致為{temperature:25.6,humidity:60.3,deviceId:SN001}平臺(tái)收到后先做格式校驗(yàn)再映射到內(nèi)部數(shù)據(jù)結(jié)構(gòu)最終寫入MySQL或時(shí)序數(shù)據(jù)庫(kù)。這個(gè)過(guò)程有幾個(gè)坑需要特別注意第一字段名的統(tǒng)一設(shè)備端上報(bào)temperature數(shù)據(jù)庫(kù)字段也叫temperature代碼里不會(huì)出歧義第二數(shù)據(jù)截?cái)鄦?wèn)題浮點(diǎn)數(shù)精度在傳輸過(guò)程中可能丟失建議后端用BigDecimal或Decimal類型存儲(chǔ)避免后續(xù)統(tǒng)計(jì)對(duì)不上第三時(shí)間戳規(guī)范化設(shè)備上報(bào)的時(shí)間可能是本地時(shí)間也可能是UTC時(shí)間必須統(tǒng)一轉(zhuǎn)換為服務(wù)器時(shí)區(qū)的DateTime否則報(bào)表的時(shí)間線會(huì)亂套。這些細(xì)節(jié)看似零碎但直接影響數(shù)據(jù)質(zhì)量而數(shù)據(jù)質(zhì)量就是物聯(lián)網(wǎng)平臺(tái)的命根子。3.3 指令下發(fā)同步確認(rèn)還是異步通知遠(yuǎn)程控制是物聯(lián)網(wǎng)平臺(tái)的一個(gè)重要面。指令下發(fā)的流程是WEB端點(diǎn)擊控制按鈕后端服務(wù)收到請(qǐng)求后將控制指令發(fā)布到該設(shè)備對(duì)應(yīng)的MQTT主題設(shè)備端訂閱該主題并執(zhí)行動(dòng)作執(zhí)行完畢后將結(jié)果上報(bào)。這里需要區(qū)分平臺(tái)命令送達(dá)和設(shè)備執(zhí)行成功兩個(gè)概念前者只表示消息到達(dá)Broker后者需要設(shè)備端回復(fù)確認(rèn)指令。在項(xiàng)目實(shí)踐中我習(xí)慣把所有下發(fā)的指令記錄到指令表并維護(hù)一個(gè)狀態(tài)字段取值是待下發(fā)、已送達(dá)、執(zhí)行中、成功、失敗、超時(shí)。后端下發(fā)消息后通過(guò)定時(shí)任務(wù)輪詢指令狀態(tài)如果超過(guò)設(shè)定閾值仍未收到設(shè)備回復(fù)就自動(dòng)標(biāo)記超時(shí)。這種機(jī)制能讓W(xué)EB端界面向用戶展示準(zhǔn)確的指令執(zhí)行狀態(tài)而不是發(fā)出去就黑盒狀態(tài)排查離線場(chǎng)景下的假死指令非常好用。3.4 設(shè)備在線狀態(tài)與心跳機(jī)制設(shè)備在線狀態(tài)判斷是物聯(lián)網(wǎng)平臺(tái)基礎(chǔ)卻容易出問(wèn)題的一環(huán)。純TCP長(zhǎng)連接可以直接通過(guò)斷開事件判定掉線但MQTT的心跳包機(jī)制需要單獨(dú)處理。設(shè)備端按設(shè)定間隔發(fā)送心跳例如每60秒一次Broker如果在1.5倍的心跳時(shí)間內(nèi)沒(méi)有收到任何報(bào)文就判定連接斷開。平臺(tái)側(cè)通過(guò)訂閱在線狀態(tài)主題或查詢Broker的客戶端列表來(lái)感知這些變化。這里要說(shuō)明一個(gè)實(shí)際經(jīng)驗(yàn)單純依賴Broker連接狀態(tài)還是不夠的因?yàn)橛行┰O(shè)備斷電前來(lái)不及發(fā)送遺囑消息主機(jī)已經(jīng)掉了Broker雖然能感知但展示層如果做了本地緩存狀態(tài)就會(huì)不一致。我建議平臺(tái)在設(shè)備狀態(tài)判斷時(shí)采用雙保險(xiǎn)Broker連接狀態(tài)為主要依據(jù)服務(wù)端再做一層最后活躍時(shí)間校驗(yàn)超過(guò)設(shè)定時(shí)間強(qiáng)制標(biāo)記為離線。這樣即使在Broker異常或數(shù)據(jù)推送延遲的場(chǎng)景下界面展示的在線狀態(tài)也不會(huì)失真太久。4. 云監(jiān)控核心功能實(shí)現(xiàn)4.1 實(shí)時(shí)數(shù)據(jù)大屏與監(jiān)控看板實(shí)時(shí)監(jiān)控功能是這套平臺(tái)的門面。它包含設(shè)備狀態(tài)總覽、實(shí)時(shí)數(shù)據(jù)儀表盤、地圖分布展示、告警滾動(dòng)播報(bào)等模塊。WEB端通過(guò)WebSocket與后端保持長(zhǎng)連接當(dāng)設(shè)備上報(bào)數(shù)據(jù)后后端服務(wù)將最新的點(diǎn)播數(shù)據(jù)推送到前端前端自動(dòng)更新表格或圖表達(dá)到秒級(jí)看到現(xiàn)場(chǎng)變化的效果。大屏看板的實(shí)現(xiàn)需要從設(shè)計(jì)上區(qū)分實(shí)時(shí)數(shù)據(jù)和歷史數(shù)據(jù)兩種數(shù)據(jù)流。實(shí)時(shí)數(shù)據(jù)走WebSocket即時(shí)推送直接用當(dāng)前最新值刷新看板上的儀表盤指針和數(shù)字實(shí)時(shí)變化歷史趨勢(shì)曲線則通過(guò)HTTP調(diào)用查詢接口獲取按時(shí)間范圍返回聚合后的數(shù)據(jù)點(diǎn)。尤其需要注意的是數(shù)據(jù)頻率的適配如果設(shè)備每5秒上報(bào)一次數(shù)據(jù)而看板只需要30秒級(jí)別的刷新那就不應(yīng)該讓W(xué)ebSocket每條都推送再重繪圖表中間加一層數(shù)據(jù)緩沖和節(jié)流可以大幅降低前端開銷。這套系統(tǒng)在監(jiān)控大屏場(chǎng)景下的加載速度和流暢度都比我之前用輪詢方案做的第一版不知道強(qiáng)了多少。4.2 告警規(guī)則引擎與通知渠道告警是物聯(lián)網(wǎng)監(jiān)控的核心痛點(diǎn)需求。沒(méi)有告警光屏上看到數(shù)據(jù)異常等人工反應(yīng)過(guò)來(lái)?yè)p失已經(jīng)造大了。平臺(tái)內(nèi)置了一套規(guī)則引擎支持為每個(gè)物理量配置多個(gè)告警規(guī)則比如溫度高于80度觸發(fā)緊急告警持續(xù)5分鐘仍然高于75度觸發(fā)高溫預(yù)警。規(guī)則引擎的核心就是對(duì)流式數(shù)據(jù)進(jìn)行持續(xù)計(jì)算每條新數(shù)據(jù)進(jìn)來(lái)都要做閾值判斷同時(shí)還要處理持續(xù)時(shí)長(zhǎng)、恢復(fù)判斷、告警去重等問(wèn)題。告警消息的觸達(dá)方式也是物聯(lián)網(wǎng)平臺(tái)比較看重的一塊。除了在WEB端彈出通知和告警列表之外往往還要支持郵件、短信、企業(yè)微信/釘釘機(jī)器人等渠道。在項(xiàng)目里我實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的策略模式定義一個(gè)告警通知接口不同渠道各自實(shí)現(xiàn)一個(gè)發(fā)送方法告警觸發(fā)時(shí)按照規(guī)則配置的路由策略決定發(fā)哪個(gè)渠道。短信適合值班人員接收的緊急告警郵件適合常規(guī)日?qǐng)?bào)企業(yè)微信群機(jī)器人適合運(yùn)維協(xié)同?;ㄥX買短信的人都知道渠道收斂很重要不然一分鐘能給你發(fā)一兩百條告警短信誤報(bào)和重復(fù)告警能煩死人。4.3 歷史數(shù)據(jù)查詢與報(bào)表統(tǒng)計(jì)歷史數(shù)據(jù)是設(shè)備優(yōu)化和故障分析的原始依據(jù)。平臺(tái)提供兩種查詢方式原始數(shù)據(jù)明細(xì)查詢和聚合統(tǒng)計(jì)。明細(xì)查詢用于定位某個(gè)時(shí)間點(diǎn)的具體數(shù)據(jù)聚合統(tǒng)計(jì)用于分析趨勢(shì)、均值、峰值等。比如查詢某臺(tái)設(shè)備一周內(nèi)的溫度最大值、平均值用于判斷設(shè)備運(yùn)行環(huán)境是否穩(wěn)定。報(bào)表模塊可以導(dǎo)出Excel或生成PDF方便運(yùn)維會(huì)議匯報(bào)。在實(shí)現(xiàn)上有幾個(gè)效率點(diǎn)值得注意。第一查詢條件必須帶時(shí)間范圍索引否則后期數(shù)據(jù)量大了會(huì)慢到?jīng)]法用第二聚合統(tǒng)計(jì)盡量在數(shù)據(jù)庫(kù)層面完成SQL里用GROUP BY配合時(shí)間窗口函數(shù)不要把所有數(shù)據(jù)撈到Java內(nèi)存里再聚合第三緩存熱數(shù)據(jù)最近一小時(shí)的實(shí)時(shí)數(shù)據(jù)可以放在Redis里查詢時(shí)優(yōu)先走緩存緩存未命中再落庫(kù)。這些優(yōu)化做完大數(shù)據(jù)量下的報(bào)表打開速度能快一個(gè)數(shù)量級(jí)用戶體感完全不同。4.4 視頻監(jiān)控與告警聯(lián)動(dòng)很多物聯(lián)網(wǎng)平臺(tái)還有接入攝像頭視頻流的場(chǎng)景。源碼里通過(guò)GB28181協(xié)議或RTSP拉流方式接入網(wǎng)絡(luò)攝像頭WEB端通過(guò)Flv.js或WebRTC播放實(shí)時(shí)視頻流。更實(shí)用的是告警聯(lián)動(dòng)功能當(dāng)某個(gè)報(bào)警觸發(fā)后系統(tǒng)自動(dòng)調(diào)取關(guān)聯(lián)攝像頭的錄像或截圖保存到告警記錄中方便事后回溯現(xiàn)場(chǎng)。這在養(yǎng)殖場(chǎng)、倉(cāng)庫(kù)、配電房等場(chǎng)景中極其有用光看數(shù)據(jù)很難判斷現(xiàn)場(chǎng)是什么狀況但視頻畫面一看就明白了。不過(guò)說(shuō)實(shí)話視頻監(jiān)控模塊在中小型項(xiàng)目里不宜做太深涉及視頻轉(zhuǎn)碼、存儲(chǔ)、回放的話工程量會(huì)成倍上漲。建議初期只用云臺(tái)控制、實(shí)時(shí)預(yù)覽、截圖三種基礎(chǔ)能力后續(xù)再按需擴(kuò)展錄像回放、智能識(shí)別人員闖入、煙火檢測(cè)等功能。畢竟項(xiàng)目核心是云監(jiān)控的云端管理能力視頻是輔助增強(qiáng)不是主菜。5. WEB端設(shè)備管理與權(quán)限設(shè)計(jì)5.1 設(shè)備全生命周期管理WEB端的設(shè)備管理模塊要做到從設(shè)備注冊(cè)到注銷的全生命周期管理。設(shè)備狀態(tài)分為未激活、在線、離線、禁用、注銷五種。設(shè)備新增后處于未激活狀態(tài)第一次成功上報(bào)數(shù)據(jù)后自動(dòng)激活并上線管理員可以手動(dòng)禁用某臺(tái)設(shè)備禁用后平臺(tái)忽略該設(shè)備的采集數(shù)據(jù)和指令請(qǐng)求注銷則是徹底移除設(shè)備并保留歷史記錄供追溯。設(shè)備詳情頁(yè)我建議至少包含四個(gè)區(qū)塊基本信息產(chǎn)品名稱、序列號(hào)、安裝位置、經(jīng)緯度等、運(yùn)行狀態(tài)當(dāng)前在線狀態(tài)、最后在線時(shí)間、連接IP、實(shí)時(shí)數(shù)據(jù)當(dāng)前最新的各屬性值、歷史操作指令下發(fā)記錄、告警記錄。很多運(yùn)維問(wèn)題都是從這臺(tái)設(shè)備最后在線是什么時(shí)候這種基礎(chǔ)查詢開始的信息越全排查越省力。設(shè)備導(dǎo)入導(dǎo)出功能也建議在初期就做。工廠一次性接入幾百臺(tái)設(shè)備如果手工逐個(gè)添加半天時(shí)間就耗在這了。Excel模板批量導(dǎo)入 二維碼批量生成是部署階段最高效的手段。設(shè)備安裝時(shí)現(xiàn)場(chǎng)人員掃碼就能在手機(jī)上看到設(shè)備信息并綁定工單安裝效率明顯提升。5.2 組織架構(gòu)與多租戶權(quán)限模型企業(yè)使用物聯(lián)網(wǎng)平臺(tái)時(shí)往往涉及總部和多個(gè)分部或車間的組織結(jié)構(gòu)。WEB端需要支持按組織架構(gòu)管理設(shè)備也就是設(shè)備的歸屬不只是一個(gè)部門而是層層嵌套的樹形結(jié)構(gòu)??偛抗芾韱T能看到所有設(shè)備數(shù)據(jù)車間管理員只能看到自己車間內(nèi)的設(shè)備。這種基于RBAC模型的權(quán)限管理比較簡(jiǎn)單用戶、角色、權(quán)限點(diǎn)、數(shù)據(jù)范圍四個(gè)維度就夠了。數(shù)據(jù)權(quán)限的控制是很多項(xiàng)目容易做糙的地方。簡(jiǎn)單粗暴的做法是查詢時(shí)只做名稱過(guò)濾但真正的數(shù)據(jù)權(quán)限需要在SQL層面按組織ID進(jìn)行攔截??蚣苌峡梢酝ㄟ^(guò)MyBatis的攔截器自動(dòng)拼接數(shù)據(jù)權(quán)限條件凡是查詢?cè)O(shè)備、數(shù)據(jù)、告警等核心表的地方都自動(dòng)帶上當(dāng)前用戶的可視范圍條件。這樣即使開發(fā)人員中途忘了寫權(quán)限判斷也不會(huì)出現(xiàn)越權(quán)訪問(wèn)的低級(jí)漏洞。5.3 前端交互與性能體驗(yàn)WEB管理端畢竟是給管理員天天用的交互體驗(yàn)直接決定平臺(tái)被接受的程度。項(xiàng)目使用Vue.js Element UI表格支持分頁(yè)、排序、列顯隱、批量選擇操作頁(yè)面操作步驟盡量控制在2跳以內(nèi)。設(shè)備列表和實(shí)時(shí)監(jiān)控頁(yè)在數(shù)據(jù)量大時(shí)要有分頁(yè)和懶加載機(jī)制否則每3秒鐘WebSocket推一次數(shù)據(jù)前端頁(yè)面卡成幻燈片那就沒(méi)法用了。我實(shí)際測(cè)試下來(lái)前端在這幾個(gè)點(diǎn)上下對(duì)功夫體驗(yàn)提升最明顯一是表格的虛擬滾動(dòng)渲染幾千行不卡二是圖表的動(dòng)畫開關(guān)實(shí)時(shí)數(shù)據(jù)刷新時(shí)關(guān)閉動(dòng)畫流暢很多三是全局異常提示和加載狀態(tài)的一致性避免用戶重復(fù)點(diǎn)擊提交。整體的前端架構(gòu)建議采用Vuex存儲(chǔ)用戶信息、權(quán)限點(diǎn)、設(shè)備樹緩存避免每次切換頁(yè)面都要重新拉取設(shè)備列表。6. 部署上線與常見問(wèn)題排查6.1 Docker Compose一鍵編排部署部署這套平臺(tái)推薦使用Docker Compose。數(shù)據(jù)庫(kù)、Redis、MQTT Broker、后端服務(wù)、前端Nginx五個(gè)容器通過(guò)一個(gè)compose文件編排起來(lái)非常省心。特別是現(xiàn)場(chǎng)實(shí)施的時(shí)候目標(biāo)機(jī)器上環(huán)境可能千奇百怪Docker可以把服務(wù)和依賴打包在一起部署一臺(tái)新服務(wù)器大概就是十分鐘的事情。部署時(shí)要注意幾個(gè)配置項(xiàng)MySQL的volume掛載路徑要持久化不然容器重建數(shù)據(jù)就丟了EMQX要開放18083端口用于Dashboard管理1883端口用于設(shè)備連接Nginx配置HTTP長(zhǎng)連接和WebSocket升級(jí)頭否則前端實(shí)時(shí)推送連不上。生產(chǎn)環(huán)境務(wù)必開啟防火墻只放行必要端口設(shè)備接入端口、Web端口、SSH端口三個(gè)就好其他端口全關(guān)。6.2 后端服務(wù)層面常見問(wèn)題與優(yōu)化在實(shí)際運(yùn)行中后端服務(wù)最常碰到的問(wèn)題基本集中在三塊數(shù)據(jù)庫(kù)連接池耗盡、Netty線程阻塞、內(nèi)存溢出。連接池耗盡多半是因?yàn)槁齋QL太多排查可以打開MySQL的慢查詢?nèi)罩景褕?zhí)行時(shí)間超過(guò)1秒的SQL抓出來(lái)做索引優(yōu)化線程阻塞常見于設(shè)備大量涌入時(shí)的任務(wù)隊(duì)列擠壓建議拆分線程池設(shè)備消息處理和數(shù)據(jù)落庫(kù)分開內(nèi)存溢出則需要調(diào)整JVM參數(shù)同時(shí)關(guān)注是否有集合類沒(méi)有清理導(dǎo)致對(duì)象無(wú)法回收。還有一個(gè)容易忽略的服務(wù)端優(yōu)化點(diǎn)是消息并發(fā)處理。全量設(shè)備長(zhǎng)時(shí)間在線、數(shù)據(jù)流量大時(shí)單機(jī)處理能力會(huì)到瓶頸。如果單機(jī)資源還不夠必然要上集群。這一步建議后置先把單機(jī)壓到極致再做集群擴(kuò)展避免在項(xiàng)目初期就背上一堆分布式復(fù)雜度。6.3 設(shè)備端接入的典型異常排查這里整理了一張?jiān)O(shè)備接入時(shí)的排查速查表我在多個(gè)現(xiàn)場(chǎng)項(xiàng)目實(shí)施中用過(guò)可以減少大量溝通成本現(xiàn)象可能原因快速排查思路設(shè)備連不上MQTT認(rèn)證失敗核對(duì)ClientId和密碼檢查是否一機(jī)一密機(jī)制設(shè)備連上了但數(shù)據(jù)沒(méi)入庫(kù)主題訂閱錯(cuò)誤檢查設(shè)備發(fā)布主題與平臺(tái)訂閱主題是否匹配數(shù)據(jù)入庫(kù)但沒(méi)有顯示物模型字段映射錯(cuò)誤檢查數(shù)據(jù)庫(kù)字段名與上報(bào)JSON字段名是否一致設(shè)備狀態(tài)一直離線心跳間隔配置過(guò)大查看平臺(tái)日志中的最后活躍時(shí)間調(diào)整心跳策略指令下發(fā)設(shè)備無(wú)響應(yīng)設(shè)備處于透?jìng)髂J酱_認(rèn)設(shè)備是否訂閱了指令主題查看指令狀態(tài)機(jī)每次在現(xiàn)場(chǎng)排查問(wèn)題我第一步永遠(yuǎn)是看設(shè)備端日志和平臺(tái)端日志的時(shí)間戳對(duì)齊沒(méi)有。設(shè)備上報(bào)時(shí)間、平臺(tái)接收時(shí)間、入庫(kù)時(shí)間三個(gè)時(shí)間一對(duì)比鏈路瓶頸在哪個(gè)環(huán)節(jié)基本就清楚了。6.4 實(shí)戰(zhàn)心得從源碼部署到二次開發(fā)拿到這套源碼之后我建議先不急著改代碼按以下步驟走一遍第一步部署起基礎(chǔ)環(huán)境跑通設(shè)備模擬器上報(bào)數(shù)據(jù) - WEB端看到實(shí)時(shí)數(shù)據(jù) - 修改設(shè)備閾值觸發(fā)告警這條主鏈路第二步仔細(xì)閱讀數(shù)據(jù)庫(kù)設(shè)計(jì)文檔和核心代碼重點(diǎn)理解數(shù)據(jù)表之間的關(guān)系第三步針對(duì)自己的業(yè)務(wù)場(chǎng)景做二次開發(fā)優(yōu)先從增加一種產(chǎn)品類型這種小需求入手逐步熟悉代碼風(fēng)格第四步再進(jìn)行頁(yè)面定制化改造。二次開發(fā)時(shí)注意保持原有分層結(jié)構(gòu)不要在Controller里寫復(fù)雜業(yè)務(wù)邏輯所有數(shù)據(jù)處理都放到Service層。自定義告警規(guī)則時(shí)盡量復(fù)用原來(lái)的規(guī)則引擎接口而不是在原有代碼里加特定判斷邏輯。這樣后續(xù)升級(jí)官方源碼時(shí)改動(dòng)沖突會(huì)小很多。還有一點(diǎn)就是在改數(shù)據(jù)庫(kù)表字段時(shí)及時(shí)同步更新前后端的數(shù)據(jù)模型代碼報(bào)錯(cuò)說(shuō)找不到字段的問(wèn)題在二次開發(fā)階段我?guī)缀趺看味紩?huì)遇到。7. 寫在最后一次完整的物聯(lián)網(wǎng)閉環(huán)實(shí)踐做這套物聯(lián)網(wǎng)云監(jiān)控平臺(tái)帶給我最大的體會(huì)是物聯(lián)網(wǎng)系統(tǒng)真正的復(fù)雜度不在通信協(xié)議也不在某個(gè)炫酷的前端圖表而是把設(shè)備接入、數(shù)據(jù)流轉(zhuǎn)、告警處理、業(yè)務(wù)展示這條鏈路完整地串起來(lái)每一環(huán)都可靠運(yùn)轉(zhuǎn)。設(shè)備端斷線重連、平臺(tái)側(cè)數(shù)據(jù)清洗、WEB端信息展示任何一個(gè)環(huán)節(jié)出紕漏整套系統(tǒng)的可信度就會(huì)打折扣。在實(shí)際落地過(guò)程中我還有一個(gè)很深的經(jīng)驗(yàn)項(xiàng)目驗(yàn)收階段展示給客戶看的永遠(yuǎn)不是代碼寫得多漂亮而是業(yè)務(wù)的完整閉環(huán)。從設(shè)備添加開始到數(shù)據(jù)上傳到異常告警到遠(yuǎn)程控制再到報(bào)表導(dǎo)出每一步都能走得通、看得見、解釋得清這個(gè)項(xiàng)目就成功了九成。這套源碼的價(jià)值正在于它把上述細(xì)節(jié)都做了相對(duì)規(guī)范的實(shí)現(xiàn)給二次開發(fā)提供了一套可以起步的骨架。最后再分享一下個(gè)人部署體驗(yàn)如果條件允許建議在同一臺(tái)性能還行的服務(wù)器上完整部署一遍用MQTT.fx模擬10臺(tái)設(shè)備做壓力測(cè)試觀察CPU和內(nèi)存指標(biāo)調(diào)整數(shù)據(jù)庫(kù)連接數(shù)和JVM參數(shù)。這個(gè)過(guò)程走完你對(duì)這套系統(tǒng)的理解深度比單純看源碼要扎實(shí)得多。做物聯(lián)網(wǎng)這行動(dòng)手永遠(yuǎn)是學(xué)習(xí)效率最高的方式。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产三级在线现体验区| 久久久久深夜无码| 青草伊人久久| 欧美色网| 黄页视频网站野外| 国产蜜臀精品一区免费尤物| 我想要啊 啊 啊| aa片毛片| 中文字幕性感少妇av| 国产少妇肉丝在线观看| 2000亚洲男人天堂| 凹凸精品熟女在线观看| 最近的最新的中文字幕视频| 九九精品美女高溯喷水| 亚洲第一页综合在线| A片大香蕉在线| 欧美日韩性爱视屏免费看了| 中国zzijzzijzzwww精品| 夜色五月天| 最新9久久久9免费视频| 人妻色偷色噜| 噜噜在线| 又黄又硬又粗又长国产视频| 2018天天干在线视频| 欧苏综合色综合| 91网站18+| 91久久免费视频互動交流| 99精品久久| 欧美综合在线第一页| 亚洲骚男同com| 黄色大片免费在线| 啊啊啊啊啊在线观看网址 | 亚洲风情在线观看| 影音先锋乱| 欧美精品久久96人妻无码| 日韩欧洲操屄视频| 日本乱人伦片中文三区| 999岛国大片| 97AV在线免费观看| 国产91亚洲精品一区二区三区| 伊人影院综合是一个与深夜成人在线 | 高清孕妇孕交 交| 人人看欧美性爱| 伊人影院在线理论播放| 三级色影综合网| 亚洲av影院在线观看| 97免费免费视频网| 日韩AV无码网站| 亚洲精品丝袜-不卡成人免费…… 久久久久成人蜜桃精品 | 日本中文字幕在线视频| 任你干在线视频| 午夜福利无毒不卡| 久久精品视| 在线观看无码三级少妇| 天堂麻豆天美| 国产亚洲精品农村妇女| 亚洲男人天堂2016| 少妇高潮特黄A片| 亚欧性爱ab| 日欧毛片久久| av无码精品久久久久| 蜜臀久久在线视频| 色哟哟511老熟女| 中文字幕视频免费| 在线无码操| 亚洲人精品午夜不卡| 亚洲导航深夜福利| 青青操97| 天天爱天天操| 亚洲图片欧美另类综合免费视频大大香| 久热伊人99re| 久久天天摸| 96久久久久| 天天干天天爽| 欧美日韩在线视频网站| 欧美熟女激情| 国产毛片久久久久久久| 97精品在线| 一级啊性爱在线视频| 18禁久久| 99这里只有精品| 超碰97中文| 欧美性天天影视| 香蕉视频欧美一卡二卡| 中文字幕乱码人妻一区二区三区,99精品 | 亚洲色吧网| 97视频在线看| 粉嫩国产精品久久久| 男女激烈网站最新| daxiangjiao你懂的| 国产精品久久久久久 百度| 精品人妻一二三四区视频| 333kkkk·亚洲com久久| 亚洲97资源| 色五月婷婷网| www.yeyecao| 精品九九九九九九九九九| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 欧综合网| 欲色影视综合吧| 91午夜无码| 五月天亚洲网| 99色色网| 欧美日韩大香蕉| 人妻无码久久一区二区三区免费| 天天干人妇| 婷婷激情一区二区三区俺也去| 欧美激情视频在线一区| 久艹视频在线| 2001天天操| 激情五月天插| 久久99九九九九6666免费观看软件| 夜夜爽77777| 国产中出内射一区二区| 欧美天堂亚洲电影院一区在线播放| 亚洲福利中文字幕在线| 久久神马| 久久久噜噜噜久久人妻| 丁香六月婷婷久久综合| 久热影视| oumeizonghese,www| 久久午夜神马| 97色论| 亚洲一欧洲中文字幕在线| JuliaAnnXXX888| 色狠人在线99| 国产精品久久久久久久久AV大片| 中文字幕在线免费观看2| 色在线69堂| 中文字幕日韩综合| 中文日本免费高清| 99999re| 青青草色情网站视频| 97人人模人人爽人人| 日本人妻丰满熟妇久久久久久| 亚洲熟女一区| 亚洲高清无毛一区二区| 国产9熟妇视频网站| 国产精品视频电影| 国产欧美亚洲精品a第2页| 国产精品第一页国产大屁股视频免费区| 日本A级视频| 人人扣人人操| 在线视频免费播放一区| 免费a v| 综合97久久| 中亚精品极乱| 激情啪啪拍91| 日韩操逼性鲍| 亚洲熟女综合网| 男人精品天堂一区| 激情国产乱伦Av| 日韩大香蕉| 粉嫩av一区二区三区四季| 久久久精品国产亚洲伊人| 91c色| 久草午夜| 亚洲中文字幕久久无码精品| 超碰天天操| 一区二区你上我| 天天精品| 国产亚洲精品美女久久久| 丝袜 中出 制服 人妻 美腿 中文字幕| 加勒比日本在线| 992这里有精品| 亚洲av综合色区无码一| 69XX一中文字幕人妻91| 国产在线综合福利网站| 久久精品人妻一区| 久久香蕉国产线看观看亚洲女人 | 91被操| 少妇无码太爽| 久久久国产三级黄色片| 午夜精品五区| 日韩美女操b| 亚洲97成人在线观看| 久久尹人大香焦视| 四虎在线视频| 日本 情色 1区2区3区| 一区二区三区蜜桃成人撸久久东京热| 蜜臀精品1区2区| 亚洲久热| 国产67194| 1禁看欧美黄片免费看| 97超碰磁| 中文操逼字幕| 欧美性第一页| 嗯嗯啊啊啊好爽| 天堂av最新电影网| 激情文学小说一区二区| 视频黄站| 天天日天天插| 碰碰在线视频| 99re9在线| 婷婷中文字幕| 欧美日韩99| 婷婷中文网| 操操操日本的逼| 高潮的A片激情扒开一区| 超碰午夜| 欧美组图日韩亚洲中文字幕| 大香蕉欧美| 91欧美综合| 超碰在线1234区| 国产精品久久发布| 国产精品老熟女一区二区| www.色婷婷色综合| 在线性黄高清免费视频| 久草视频分类在线| 国内精品久久久久影院亚洲| 色色色天美视频| 国产偷拍自拍在线视频| 2020天天色综合| 97情超碰色| 人妻素股| 国产又长又大又粗的视频| 偷拍2020| 91亚洲欧美综合高清在线| 国产成人精品午夜福利| 久久国产精品视频| 国产9l 大屁股| 青女偷拍网| 日本布卡一区二三区| 欧美综合色图网| 美女91网| 精品传媒在线一区| 看全色黄大色大片免费视频| 亚洲一级黄色毛片| 亚洲色图尤物视频| 99精品视频在线观看免费| 天天色,天天干,天天干| 伊人久操| 色悠久| 91搡老女人老妇女老熟女歌词翻译| 五月天亚洲色图| 欧美组图日韩亚洲中文字幕| 日韩成人精品| 综合久久久久久久综合网| 不卡一区二区日本视频| 亚洲AV永久无码一区仙野| 欧美婷婷五月天| 五月丁香影院| www老逼91| 人人超碰在线观看黄| 欧美国产有色电影| 色婷婷日韩精品一区二区三区| 天天天干977| 欧美综合网在线| 欧美Ⅴ性爱| 人妻少妇被猛烈进入中| 国产又粗又长又爽又色| 中文字幕人妻丝袜| 国产精品久久久久久久久久久久久久久 | 97爱免费插| 18一区二区三区| 欧美白嫩在线放| 欧美一区二区三区成人性生活| 国内成人圈中文字幕无码视频| …中文字幕亚洲乱,97人妻无码费视…| 蜜桃午夜视频一区二区| 大色综合| 亚洲欧洲综合av在线| 色爱三区| av天天在线观看| 吉川爱美98堂在线| 97超碰总站| 精人妻一区二区三区| 久久久九九九| 国产 热久久久久国产精品| 日本三级日本三级99| 狠狠色伊人亚洲综合网站色| 欧洲大香蕉| 97天天摸天天碰| AV高清一区| 婷婷亚洲天堂| 天天综合有色网| 欧美第一页| 亚洲高清综合网| 国内精品嫩模A∨私拍小视频| 中日韩久久久| 亚洲中文字幕97久久精品少妇| 亚洲人在线| 97精品97久久| 久久日本熟妇熟色一区| 国产一级不卡在线观看| 99在线免费观看| 91殴美大片| 欧美丰满少妇交换91欧美精品| 大香蕉宅男伊人| 亚洲AV色图一区| 91bbb| 免费精品中文字幕| 日韩另类色图| 国产AB视频| 色99999| 亚洲成?V人片在线观看福利| 一区久久久二区| 国产高清在线自在拍69| 人人性爱视频免费| 亚洲精品久久久久久久蜜桃臀| 国产九九久久久精品| 欧美综合传媒| av天堂天堂av日韩| 国产 v乱码一区二| 99999精品成人| 久久久天堂| 亚洲精品白丝| 精品国产一区探花在线观看| 色综合色欲色综合色综合色综合| 伊人成人情色综合| 欧洲亚洲人妻无码高清久久三区四区| 青青草在线成人视频| 中国一级操逼视频| 91大胆欧美| 国产AV线| 久久久91福利姬| 毛片久久| www.狠狠操| 性九九九九九九| 我要去看2个日本美女.com曹逼| 精品成人av一区二区三区在线| 99久久综合| 亚洲天堂加勒比| 中文字幕精品日韩中文字幕| 自拍二页| 91在线视频国产网站| 女人高潮抽搐喷水视频网站| 精品久久久不卡一区二区| 搡老女人老91妇女老熟女| 天天做日日爱夜夜爽| 97日视频| 精品无码一区二区三区色欲| 亚洲欧美国产中文视频| 国产亚洲一黄| 少妇高潮九九九九九九九| 性影在线视频| 青青草精品| 亚洲综合97| 国产亚洲色婷婷久久99精品91| 欧美日韩国产人人| 久久久久免费看少妇A片特黄| 人妻精品综合中文字幕在线 | 91夜色| 五月天大香蕉| 欧美后入式| 性开放中文AV高清无码免费看| 蜜桃视频一区二区三区在线观看| 歐美性天天| 久久久久久久强迫| 亚洲有薄码区日本系列中文字幕| 欧美性高潮在线| 手机看片1025| 精品超碰色| 8050午夜少妇无码| 夜夜嗨一区二区三区三州加勒比| 黄色欧美性爱视频| 中字一区| 日韩人成网站在线播放| 97超级色碰碰| 青青操狠狠撩| 国产精品97超碰| 日本一区二区做爱的视频| 在线观看视频91| 第四色奇米影视777| 日本 免费 一区二区三区 久久香蕉| 欧美色涩| 久久嫩草国产成人一区| 色视频蜜乳| 综合激情97| 国产精品成久久久久午夜午夜| 俄罗斯一区二区视频在线观看| juliaann精品熟女一区| 精品人妻一区二区三区四区石在线| 性感女人网页在线观看视频| 久久久久久亚洲Av无码精| 96AV久久久| 极品销魂美女一区二区| 手机久操欧美综合色码| 精品国产一区二区三区四区在线看 | 久久69| 97视频网站在线观看| 天天澡天天爽日日AV| 操九九九九九九| 欧美精品宗合| 嫩草 人人网精品| 欧美日韩另类在线| 偷拍片久久| 日韩不卡毛片Av免费高清| 日韩特一级久久| 丰满人妻大屁一区二区| 春色91| 东京热视频网| 77国产精品| 国产精品久久久无码AV网站| 亚洲第一男人天堂| 五月天婷婷影院| 女性91网站| 夜夜操天天肏| 亚洲成人免费中文字幕| 大香蕉日韩欧美| 中文字幕 码精品视频网站| 日韩三级av片| 91丝袜美女| WWW操逼| 亚洲性猛| 99re视频在线观看这里只有精品| 国产午夜精品理论片a大结局| av午夜玫瑰| 一牛影视成人片免费| 亚洲97网站| 狠狠色丁香| 久久男人的天堂| 色爱综合网欧美| 国产免a费看黄片在线| 加勒比性爱成人在线| 97在线视频观看| 久操在97| 韩国黄色片精品久久久| 九九九久久久| 久草精品一区 | 日本媚薬中文字幕在线| 日欧美色| 7777欧美成是人在线观看| 久久久久久久久久9| 色诱avtt| AV综合中文字幕干| 日韩特级毛片免费观看全集| 亚州图片第一页| 亚洲精品一区中文字幕乱码| 99这里只有精品国产| 亚洲激情深爱文学小说网站| 青青11操操操操操操操操| 久久久久久亚洲中文| av天堂加勒比| 精品一久久久| 久久99视频| 国产丝袜欧美在线视频| 欧美少妇高潮视频| 91人妻视频| 国产精品一区二区黄片| 国产精品99精品视频网站| 思思99热| 丰满岳乱妇一区二区三区| 91综合无码| 人妻在线大香蕉| 性一交一乱一交A片久久四色| 在线日韩日本亚洲国产| 麻豆a'v电影| 国产精品对白内射| 日韩欧美亚洲一区二区三区影院| 欧美性xxxxx狂欢| 男女香蕉一区二区| 亚洲精品一二三四区| 国产精品无码AV网站| 国内偷拍精品一区二区| 久久三区四区| 在线一区| 日本不卡三级网在线播放| 在线观看国产黄色| 亚洲精品成人动漫在线| 久久久不卡| 久久精品国产久精国产| AV一二区| 国产原创自拍| 亚洲黄色网址视频| 大香蕉免费3| 97网色| 欲女人妻性色av| 亚洲精品天堂久久A∨51成人漫| 亚洲欧洲自拍| 亚欧操逼片在线观看| 国产精品久久久777| 夜夜爽33333| 久久久久亚洲Aⅴ无码| 午夜啪| 久久香蕉国产线看观看亚洲女人 | 婷婷香网站| 天天操av懂色| 激情五月天视频| 综合欧美激情网| 99精品国产户外露出| 99久久久99久久91熟女| 人妻丝袜二区| 亚洲天堂一区二区| 亚州男人的天堂| 欧洲中文字幕| 日韩AV电影网站| 欧美做爰无码A片视频| 人人潮人人摸| 日本黄色大片一级视频免费麻豆| 国产精品成人AV片免费看网站| 国产久久天堂资源| 精品二区久久| 色哟哟精品1精品2| 中文字幕人乱码中文字的预防方法 | 日韩黄片影院| 蜜臀一区二区三区在线| 国产97在线 | 亚洲| 青青青草原| 99热18这里只有精品| 99青青草国产视频| 亚洲综合在线高清| 四虎永久在线精品免费网址 | 天堂精品在线| 五月丁香成人网| 国产高潮AA片免费看| 婷婷影院入口| 日韩欧美俄罗斯A片| 超碰成人公开| 97在线观看播放视频| 性交一区二区在线播放| 屌妞视频久久久久久久久久久久| 国内黄色精品| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 少妇内射视频| 智利AV在线网| 日韩高清一二三| 后入式视频国产自| 欧美成人国产精品| 蜜臀无码一区二区| 亚洲色图第一页| 天天影视网色欲色香| 日韩色女精品| 蜜桃狠狠色伊人亚洲综合| 亚洲一区中文字幕一区| 国产高清无码一区二区三区四区皇冠| 免费操逼视频下载| 亚洲精品成人激情在线| 日本中文字幕在线电影| 99热婷婷| 亚洲色图久久精品蜜| 欧美日韩高潮喷水91| 96AV精品| 五月婷婷hd| 日韩午夜国产| 亚洲国产丝袜在线观看| 日本最新1区2区3区| 99re在线视频这里只有精品| 日日骚av| 日本久久超碰| 日本淫乱女一区二区三区视频| 人人搞人人插人人操| 100啪啪视频大全| 超碰无码加勒比| 国产女人与拘做受视频免费| 国产午夜无码片在线观看影视 | 久草草一二三四区久久| 精品国产乱码久久久兰草影视| 中国的操老妇女| nuu12国产麻豆精品| 中韩中文字幕在线观看| 99re9| 免费久久一级毛片大黄| 综合久久久久久久综合网| 国产亚州高清国产拍精| 五月天久久久| 北京专精特新企业招聘信息| 九九九久久久久| 日韩精品影视| 日韩一级二级三级| 人人模人人看| 成年女人黄网站| 久久久精品国产亚洲AV无码| 亚洲综合97中文网| 中国黑人三级片网站上区| 91激情综合| 嗯嗯不要 视频| 日本精品免费一区二区三区四区| 91AV天美在线视频| 综合色区偷拍| 日本精品中文字幕视频| 色色福利| 大香蕉免费中文| 激情亚洲天堂| 亚洲成人帖图| 久久精品国产亚洲AV清纯| 久久综合亚洲色1080p| 国产精品三级视频网站| 蜜色网色哟哟| 久久九操在线观看| 性色A∨91| 蜜乳AV.COM| 人妻少妇av在线观看| 欧美久久草熟女| 美女黄码视频午夜| 国产99热| 3d成人精品一区二区| 99热亚洲| 久久久久久9999| 亚洲午夜精品久久久中文影院| 99人妻碰碰碰久久久久禁片| 牛牛aV| 日韩精品三区四区| 色色青青久久| 秋霞网无码| 久久肏大逼| 黄页18禁| 婷婷五月天小说| 青青草精品| 久久这里只精品| 1769国内精品视频| 日本三级大片| 亚洲视频二区| 老熟女91| av天堂5| 一区中文字幕二区日韩| 一二三四区电影| 免费av在线播放二区| www.色婷婷| 色九九九综合| 97欧美在线| 欧美午夜一区二区三区| 日本伦理一区二区| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 欧亚日韩三区| 日韩在线女优天天干| 久久偷偷色综合蜜桃| 亚洲一区二区在线观看91| 逼逼逼逼操操操操操操操操操午夜剧场| 日本高清电影欧美色图| 色综合99| 粉嫩AV一区夜夜嗨| 亚洲精品久久久久久久蜜桃臀| a天堂视频| 熟妇视频一区二区三区在线观看| 超碰色大香蕉| 国产女人极品高潮毛片| 国产天天骚| 国产在线激情| 1024人妻熟女一区二区三区| 99热在线不卡| 96精品久久久久久久久久| 岛国片在线观看视频亚洲| 亚洲情色在线| 国产毛片毛片4p懂色| 久99| 欧美高清在线| 精品国产丝袜一区二区三区乱码| 99啪啪视频| 亚洲综合在线第一页| 久久精品国产72国产精品福利| 天天综合欧美综合| 国产精品久久久 | 超碰97起碰| 亚洲成人在线资源| 久久社区一区二区三区| 青青草视频久久久久| AV中亚| 五月丁香激情啪啪| 97在线观看免费| 91狠狠狠| 亚洲中文一区二区三区| 97超碰亚洲| 被窝影院午夜看片无码| 日韩女优中文字幕| 欧在线一二区| 五月丁香| 五月天婷婷社区| 91干熟女| 青青青草原| 操我无码| 久久天天摸| 99无码视频| 人人澡人人澡人人| 18禁的网站在线| 欧美伦乱爱| 无码精品久久| 开心六月色| 成人羞羞视频国产| 超碰97精品在线| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 婷婷五月综合在线| 骚鸭AV| 久久啊啊| 午夜人妻精品综合在线| 中文字幕一区二区无码成人| 桃花色涩综合影院| 国产91丝袜 在线播放| 亚洲各类熟们中文字幕| 神马午夜久久久| 久久亚洲人妻| 免费?级毛片无码?∨蜜芽试看| 青青草吊丝| 日韩成人性日韩成人性爱视频在线免费观看| 9/A片| 懂色aV一区二区天美传媒| 97超碰色五月| 天天干人人看综合| 成人无码专区精品视频| www.99色| 亚洲激情天堂网| 欧美精品99久久久**| 偷拍2020| 国产女人成人精品视频| 情色图区| 污啪啪啪视频| 国产福利合集| a男人的天堂| 国产成人超碰在线| 青娱乐手机日韩在线视频| 天天干人人干天天日97| 日韩97精| 97久久超碰| 中日韓欧美高清| 淫色网综合| 91精品久久久| 大屁股熟女一区二区三区| 国产超碰| 日韩小电影| 色婷婷在线视频精品导航| 日韩无码精品综合久久| 色小视频蜜乳| 伊人九九九| 久久a久久| 超碰人人操97碰| 综合激情一一91| 97碰在线视频| 久久久97| 97超碰资源网| 日韩国产中文字幕| 美女网站91| 欧美在线伊人色| 芊芊操逼视频无码| 欧美色交| 91蜜臀在线久久久久| 摸奶性爱视频网站在线免费播放| 小草av不卡亚洲二区| 国产女人成人精品视频| 日韩欧美加勒比| 久久神马影院| 国产做?爰片久久毛片?片美国| 91老司机在线| 操B久久| 新版天堂中文资源8在线| 大奶的诱惑| 国产精品网站www| 国产精品岛国片在线观看| 特级大荫道BBwBBwBBW| 午夜福利av电影在线| 欧美瑟综合| 日本三级小说中文字幕| 精品亚洲国产成人精品| 精品1区2区3区| 黄总AV色图| 亚卅熟女乱色| 色色毛片| 亚洲精品黑丝| 大稥蕉免费视频这里只有精品| 三级激情网站| 欧美九九九| 超碰97男人| 天美麻花大全视频| 国产无码三级视频在线观看| 少妇精品久久久八区九区| 国产一区二区三区中文字幕| 97在线观看播放视频| 97久久超碰日韩精品| 蜜桃在线观看一区二区三区| 超碰人人超在线观看| 精品人妻中文字幕高清| 亚洲怡春院| 久久久久久夜夜夜夜夜| 精品性爱一二三区| 中文一区二区三区影院| 大香蕉九九| 超碰在线欧美性爱激情| 超碰97极品9| 欧美性爱一区| 丁香五月社区| 国产专区第一页| 国产熟妇 码视频户外直播| 91精品免费| 亚洲人精品久久久喷水| 亚欧Av| 亚洲欧洲av影音| www.久久超碰| 人妻 欧美 中文| 婷婷色综合| 韩国成人精品久久久免费看| 免费一二区| 久久9999| 大香蕉综合久久| 亚洲麻豆精品二区三区| 日韩成人性爱AV| 国产一区二区三区高清视频| 97精品一区二区视频在线观看| 亚洲自拍欧美国产首页网曝| 一区二区 韩日AV| 少妇高潮对白在线观看| 91久久免费视频互動交流| 欧美亚洲系列| 色婷五月| 成人 日本A片无码8888| 国产无码三级视频在线观看| 亚洲视频精选| 国产乱不卡| 伊人991| 九一屌逼| 久久极品伊人| 色婷婷五月综合激情中文字幕| 一区不卡在线观看av| 天美传媒精品一区二区| 东京热91| 天天干1区2区在线| 欧美伦乱爱| 亚洲成人一二三区| 大香蕉伊人色偷偷在线| 思思热免费视频观看| 国产精品无码av嫩草| 国产精品黑人一区二区三区| 五十路一区无码| 99re这里只有精品2| 日韩无码久久熟女一级片| 91日日| 大香蕉在线视频15| 夂久色| 91日本在线观看| 人妻中文字幕日韩电影| 亚洲国产精品9999在线观看| 色婷婷久久综合超碰| 欧美色图亚洲色图成人在在线| 日韩AV片| 亚洲操操| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 欧成人精品一区二区三区| 97亚洲国产| 加勒比五月天| 老女人老91妇女老热女| 日本啊啊啊啊啊视频| 操我啊啊啊啊啊| 91人妻超碰| 男人亚洲91首页在线| 九九色色| 91操操| 日本色色色| 丁香六月啪| 久久精品性| 天美麻花大全视频| 久久久国产成人一区二区三区在线| 一区二区三区免费岛国片| 日韩无码黄色片| 日韩亚洲中文有码视频| 欧美日韩国产黄色片| 久久久久久69国产一区二区 | 嗯~啊~快点 死我视频| 玖玖视频在线资源一区二区三区| 天天做天天爱天天爽| AV大香蕉| 99热这里只有精品9| 不卡av免费在线网址| 欧美中文综合| 欧美色图20p| 亚洲久久久| 久久久中文| 久久狠狠色噜噜狠狠狠狠97| 丰满人妻区一区二区三| 日本阿v天堂在线观看| 丝袜美腿亚洲| 国产无码精品无码| 国产精品久久久久久亚洲色欲| 国产 日韩,欧美 自拍| 国产精品不卡av免费在线观看| 97视频网站| 久久的免费性爱视频| 97超碰人人操人人操| 少妇熟女1区2区3区| 色欲av一区二区三区蜜芽| 一区二区三区亚洲| 亚洲导航深夜福利| 亚洲一卡2卡3卡4卡乱码网站| 欧美人妻一区| 国产 热久久久久国产精品| 亚洲 一区二区 自拍| 欧美极度丰满熟妇hd| 自慰白浆在线观看| AV九九| 男人天堂久久精品| 国产老熟女| 久久久久久9999| 久9久精品视频| 亚洲男人天堂视频| 午夜经典| 亚洲美女av无码| 亚洲精品免费中文字幕| 青娱乐欧美激情一区二区| 亚洲导航深夜福利| 福利在线黄片| 大香樵伊人网| 中文字幕在线观看网页| 欧美色图下一页| 亚洲精品黑丝| 少妇天堂| 亚洲国产成人精品久久久国产成人一区二区| 久久久久久久9最新免费视频观看| 噜噜噜亚洲精品| 国产丁香精品露脸视频| 青青草好吊色| 国产不良强奸视频免费看| 伊人五月天激情| 亚洲九区| 久久人妻97久久久久久久| 操b网站亚洲无码| 天美一区在线| 东京热91| 久久青青草在线视频| 清纯唯美亚洲综合| 一级AV性爱| h无码动漫在线观看| 99热9| 麻豆天美国美国产AV| 人妻在线大香蕉| 国产精品白丝AV| 色网色网色网色网色网色| 日本十八禁免费看污网站| 久久久久久国产无码精品| 九九热在线视频| 啊啊好多水| 人妻人久久精品中文字幕| 免费一二区| 性色av蜜臀av色欲aV| 婷婷五月天成人网| 性色av一区二区| 四虎免费在线播放| 国产日韩精品suv| 懂色AV蜜臀无码精品APP | 中文字幕一区二区三区视频播放| 天天操天天射青青草| 小草av不卡亚洲二区 | 成年男人的天堂| 天天色踪合| 91亚洲欧洲| 国产综合在线视频网站| 亚洲欧美色图| 国产三级多多影院2022国产AA一级毛片无码 | 91爱做| 大粗鳼巴久久久久| 先锋影音av先锋一区| 99re久久| 99在线观看无大码| 精品天堂| 偷拍自拍在线视频观看| 97色五月天完| 2020中文字幕在线| 午夜人人操| 色情五月综合婷婷| 媚薬在线视频麻豆| 97色操| 天天操夜夜嗨| 97精品一二区| 国产欧美日产一区二区三区 - 国产欧美日 | 国产无码久久高清| 亚洲操人| 欲香欲色天天天综合和网| 欧美加勒比| 日韩丝袜二区| 少妇天堂网络| 大鸡巴久久| 亚欧成人综合影院| 99re6国产精品99re在线| 青草伊人久久| 免费av高清无码| 情色AV电影| 天天搞欧美| {男男暴菊gay无套网站| 久久久久久国产精品| 综合亚洲情色| 久久人| 免费一级欧美片片线观看| 黄色十八禁网站| 亚洲日韩天堂| 午夜免费福利视频一区| 欧美少妇性乱| 人妻色偷色噜| 丰满人妻-区二区三区免费| 啊啊啊啊啊啊啊网址在线观看| 香蕉国产精品麻豆亚洲欧美日韩 | 舔舔啊| 狠狠操官网| 天美传媒一二三区永久网站| 偷拍亚洲情色| 又粗又长又爽在线观看| 按摩中文字幕| juliaann丝袜| 免费看久久久性性| 天天舔天天日天天射| 91视频精品| 五月丁香六月婷| 亚洲欧美内射| 色嗨嗨在线| 黄色十八禁网站| 2024年最新色情网站在线观看| 99精彩视频| 色综合 加勒比| 东北丰满熟女国产一区 | 日韩情色一区二区| 亚洲综合婷婷| 国产AV线| 青娱乐久久艹| 国产第二页| 无码 黑人一区二区三区| 免費人妻夜夜爽天天爽爽一区| 欧美综合91| 六月丁香啪啪| 四虎精品永久在线观看| 黄片直播三级黄片两女一男| ai欧美亚洲小说| 国产一区二区免费福利片| 人妻激情偷乱视频一区二区三区 | 国产强奸超碰AV| 亚洲资源网| 国产一级不卡在线观看| 北条麻妃性愛视频| 18禁无码永久免费无限制| 嗯……啊…嗯嗯…啊…好舒服| 女人精品内射国产99| 天天欧美欧美亚洲网| 日本加勒比无码专区| 亚洲 日韩 欧美 国产综合体| 青草伊人网| 午夜精品视频777| 色与欲影视天天看综合网| 国产激情av女片自拍| 蜜臀一二三区| 91黑人无码激情在线| 天天干夜夜| 2020国产精品| 久操频道免费在线呗看| 大香蕉丝袜一级片| 一区二区三区一亚洲中文字幕、综合区灬 | 久久国产对白激情浪潮| 日韩成人在线性爱视频| 久久久久久久久九九久孕交| www.亚洲成人一区| 久操 高清| 日本色色视频网站| 91天天c| 精品久久久久av影院| 狠操91,com| 国产亚洲精品第一最新| 成人AV在线网站| 久热九九| 久草成人| 亚洲瓯美色图| 精品久久无码午夜福利| 人妻人人澡人人爽人人| 日韩欧美成人午夜福利| 天天天天天超碰| 国产亚洲精品av一区| 成人一区二区三区四区| 日韩亚洲中文字幕在线| 久日91在线| 天天懆天天日| 亚洲欧美日韩国产丝袜自拍中文| 中国国国产一级特黄毛片| 黄页网站成人免费| 五月天开心网| 天天日天天干天天操| 国产91精品久久久久久久网曝门| 超碰国产精品无码| 伊人久久亚洲色欲综合网站 | 国产欧美另类久久久精品课程| 97电影院超碰| 欧美极品美女aaaaaa级黄片| 秋霞午夜视频一区二区| 成人七区| 国产丁香精品露脸视频| 亚洲性爱高潮影院| av影片在线观看不卡| 又摸又舔在线观看网站| 亚洲国产精品成人无码久久久| 超碰 欧美| 97香焦色区| 久久久久亚洲av综合波多野制衣| 激情小说亚洲视频| 丁香六月婷| 色视频蜜乳| 欧美天天在线| 天天爽天天操| 免费av高清无码| 性感美女啊啊啊在线| 91碰碰| 国产又色又粗又黄又爽| 日本国产二线女色| 骚逼高潮久久精品| 四虎国产精品永久入口| 伊人久久亚洲色欲综合网站| 26uuu国产| 无码久久国产| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 欧美在线色| 国产精品亚洲免费| 91在线视频国产网站| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 美国日韩黄片| 国产高清在线自在拍69| 91色综| 东北丰满熟女国产一区| 国产一二三福利视频网| 亚州综合电影| 中文字幕jul-617人妻熟女| 蜜臀99久久精品久久久懂爱| 男人的天堂在线| 国产少妇肉丝在线观看| 免费无码婬片AAAA片直播色戒| 伊人亚洲综合| 伊人影院中文字幕| 中国国产精品一区视频| 一本色道人妻久久| 国产AV人人 夜夜人人澡| 色色色色电影网| 亚洲无码视频免费在线观看网址!| 日韩一级二级三级免费看完整版国语版 | 亚洲最大的黄色电影网站。| 久草视频在线视频在线视频在线观看| 国产一级做a爰大片免费久久| 怡红院亚洲怡春院av| av大香蕉| 色操逼网| 国产精品农村妇女| 牛牛久久国产精品视频一二三| 青青草天天亲夜夜操网| 国产午夜福利专区综合| 亚州高清AV| 精品乱子一区二区三区99| 狠狠色婷婷777| 隔壁邻居波多野结衣中文字幕| 男人精品区| 中文字幕在线2| 日韩99999色| 久操精品网| 亚洲无码国产探花在线观看| 91热热色| 亚码人妻| 欧美大码在线视频| 国产亚洲精品第一最新| 亚洲国产精品成人综合| 亚洲天堂另类| 婷婷15月天青娱乐| 视频二区美腿丝袜制服人妻欧美 | 久久久性少妇| 九九热免费在线国产视频伊人五月| 成人av动漫在线观看| 国产AV色黄看到爽| 大香蕉综合网| 91日日夜夜| 久久男人网| 欧美第一页性| 日本精品不卡一二三区| 亚洲欧美首页| 青草影院内射高潮| 免费的av网| 激情综合婷婷| 日本高清视频xxxx| 少妇高潮九九九九| 午夜福利一区二区三区四区五区色婷婷| 九九英色视频| 五月香婷婷| 精品毛片久久久精品毛片| 午夜视频久久久久一区| 91处女在线观看|