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

        ?

        SAAS 模 式 WebGIS 關(guān) 鍵 技 術(shù)

        2020-01-13 09:48:36
        實驗室研究與探索 2019年12期
        關(guān)鍵詞:租戶服務(wù)器端瀏覽器

        何 洪 磊

        (連云港職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,江蘇 連云港 222006)

        0 引 言

        WebGIS(互聯(lián)網(wǎng)地理信息系統(tǒng))在當前有著廣泛的應(yīng)用,例如天氣預(yù)報、調(diào)查統(tǒng)計、國土管理、公共設(shè)施管理、城市規(guī)劃、環(huán)境評估、災(zāi)害預(yù)測、軍事公安、農(nóng)林牧業(yè)、水利電力、資源調(diào)查、郵電通訊、商業(yè)金融、交通運輸、宣傳展示等幾乎所有領(lǐng)域。

        因此,有眾多的用戶需要搭建滿足自己需求的WebGIS系統(tǒng)。目前,搭建系統(tǒng)的方式通常是使用專業(yè)軟件(例如ARCGIS、mapinfo、超圖),聘請專業(yè)人員開發(fā)完成。這樣的搭建方式就需要較高的費用成本,對于大部分用戶來說構(gòu)成負擔(dān),尤其是一些非核心業(yè)務(wù),不頻繁使用的用戶。而且,在眾多的WebGIS系統(tǒng)應(yīng)用中,有許多是相同或者是相近的,重復(fù)搭建也是是一種資源的浪費。

        為了解決這種問題,本文提出了一種SAAS模式的WebGIS系統(tǒng):用戶可以通過在線定制的方式搭建符合自己需求的WebGIS系統(tǒng);用戶自己制作的系統(tǒng)可以作為模板共享給其他用戶;有著相似應(yīng)用需求的用戶,可以使用某種WebGIS系統(tǒng)模板,修改參數(shù)就可以完成自己系統(tǒng)的定制。

        1 SAAS模式WebGIS系統(tǒng)結(jié)構(gòu)設(shè)計

        當前最主流的WebGIS系統(tǒng)是分層式瓦片地圖,它將系統(tǒng)功能分解為瀏覽器端模塊和服務(wù)器端模塊組合實現(xiàn)[1-2],如圖1所示。瀏覽器端的JavaScript引擎運行地圖模塊,從服務(wù)器端獲取地圖瓦片并組織成為地圖,同時還能夠響應(yīng)用戶的縮放、拖動、標記等各種操作。服務(wù)器端提供WMS(Web地圖服務(wù))、WTS(Web瓦片服務(wù))、WFS(Web要素服務(wù))以及各種應(yīng)用服務(wù)。這樣的好處是降低了服務(wù)器端的負載,提高了對瀏覽器的兼容性。

        圖1 WebGIS系統(tǒng)結(jié)構(gòu)

        SAAS模式WebGIS系統(tǒng)設(shè)計采用了這種主流的分層式瓦片地圖結(jié)構(gòu),同時又要考慮到SAAS系統(tǒng)用戶眾多,用戶的各種不同需求,就需要實現(xiàn)系統(tǒng)的可定制性。為了滿足眾多租戶的各種需求,在進行系統(tǒng)設(shè)計之前,首先對租戶的需求進行分析,也就是在眾多的租戶需求中統(tǒng)計分解出共同的需求和差異化的需求。對于差異化的需求,在系統(tǒng)設(shè)計時,要考慮到可以允許租戶自己定制,并且不同的用戶之間不會互相影響[3-4],如圖2所示。

        圖2 差異化需求的定制

        假設(shè)共性需求為D0,可選的差異化需求為Δi(Δ1,Δ2,…,Δk),那么系統(tǒng)的總需求集是D=D0+Δ1+Δ2+…+Δk。不同用戶的需求集可以表示為:

        (1)

        系統(tǒng)提供服務(wù)集,每個服務(wù)對應(yīng)解決一個需求。例如對應(yīng)解決需求Δi的服務(wù)為Si,則系統(tǒng)的總服務(wù)集:

        S=S0+S1+S2+…+SK

        不同用戶的服務(wù)集可以表示為

        (2)

        考慮到用戶眾多,差異化需求會非常多,如果這些需求對應(yīng)的服務(wù)都在服務(wù)器端運行,會極大地增加服務(wù)器的負載,降低系統(tǒng)的運行性能。為了降低服務(wù)器負載,將對應(yīng)共性需求D0的服務(wù)S0在服務(wù)器端實現(xiàn),對應(yīng)差異化需求Δi的服務(wù)Si在瀏覽器端實現(xiàn)。

        系統(tǒng)的一個關(guān)鍵技術(shù)就是可定制性,用戶可以根據(jù)自己的需要,對業(yè)務(wù)邏輯、用戶界面、數(shù)據(jù)結(jié)構(gòu)進行定制[5]。根據(jù)該原則結(jié)合WebGIS特點設(shè)計了SAAS模式WebGIS系統(tǒng)的結(jié)構(gòu),如圖3所示。

        圖3 SAAS模式WebGIS系統(tǒng)結(jié)構(gòu)

        數(shù)據(jù)層在服務(wù)器端,包括地圖瓦片數(shù)據(jù)、地理信息數(shù)據(jù)、元數(shù)據(jù)、應(yīng)用數(shù)據(jù)、WMS、WFS、WCS等。用戶對數(shù)據(jù)結(jié)構(gòu)的定制通過元數(shù)據(jù)實現(xiàn),同時元數(shù)據(jù)也是用來保存用戶定制的業(yè)務(wù)邏輯和界面信息。

        業(yè)務(wù)邏輯層包括服務(wù)器端Web服務(wù)和瀏覽器端業(yè)務(wù)邏輯層兩部分,服務(wù)器端提供多種Web服務(wù),主要是實現(xiàn)用戶共性需求的功能。瀏覽器端業(yè)務(wù)邏輯層包括地圖模塊、服務(wù)模塊、配置模塊、控制模塊。地圖模塊實現(xiàn)地圖常用功能;服務(wù)模塊實現(xiàn)差異化需求的功能,提供各種服務(wù)模塊供用戶選擇;配置模塊是提供用戶定制界面、定制服務(wù)、定制業(yè)務(wù)邏輯功能;控制模塊是用戶定制內(nèi)容的實現(xiàn),控制系統(tǒng)按照用戶定制的業(yè)務(wù)邏輯運行。

        表示層就是瀏覽器端提供的用戶界面,可以由用戶在配置模塊中定制。然后將配置信息存放到服務(wù)器端元數(shù)據(jù)表中。用戶使用系統(tǒng)時,按照元數(shù)據(jù)表中的信息顯示用戶界面。

        2 SAAS模式WebGIS關(guān)鍵技術(shù)

        SAAS模式WebGIS系統(tǒng)既要能滿足用戶定制需求,同時又要保證服務(wù)器的性能。本文設(shè)計的解決方案是:采用SOA方式,將系統(tǒng)服務(wù)功能分解并模塊化,供用戶自由配置,然后將負載合理分配到服務(wù)器端和客戶端。

        所以SAAS模式WebGIS系統(tǒng)的關(guān)鍵技術(shù)包括:

        (1) SOA和負載均衡。將用戶共性需求和差異性需求對應(yīng)的功能分別由多個服務(wù)實現(xiàn),并合理分布在服務(wù)器端和瀏覽器端。當多個用戶定制的不同實例同時運行時,降低服務(wù)器壓力。

        (2) 系統(tǒng)可配置性。系統(tǒng)可由用戶定制性,包括用戶界面、業(yè)務(wù)邏輯、數(shù)據(jù)結(jié)構(gòu)等。

        (3) 控制引擎。系統(tǒng)能夠監(jiān)聽用戶活動和服務(wù)模塊的返回值,按照用戶定制的參數(shù)運行。

        (4) 系統(tǒng)的易用性。用戶可以將定制的系統(tǒng)作為模板,共享給其他用戶使用。

        2.1 SOA和負載均衡

        建立SOA架構(gòu),首先分析共性需求和差異性需求,然后構(gòu)建對應(yīng)的服務(wù)模塊解決。通過分析,常用的WebGIS系統(tǒng)需求包括:用戶管理、地理信息管理、地圖管理、類型切換、制圖、定時器、數(shù)據(jù)搜索、數(shù)據(jù)定制等[6-10]。對應(yīng)的服務(wù)模塊如下:

        (1) 地圖服務(wù)。地圖服務(wù)通過瀏覽器端的JavaScript API和服務(wù)器對應(yīng)的服務(wù)實現(xiàn)??梢酝ㄟ^設(shè)置各種參數(shù),包括地圖的ID、對齊方式、地圖瓦片、中心坐標、寬度、高度等來確定具體的屬性。

        (2) 地理信息管理。地理信息服務(wù)包括地理信息的類別管理和地理信息的添加、刪除、修改等。

        (3) 用戶管理。用戶管理包括用戶的注冊、登錄、類別、權(quán)限等。

        (4) 制圖服務(wù)。制圖服務(wù)是指根據(jù)地理信息在地圖指定的圖層中繪制圖表。例如在地圖上繪制各城市的GDP三維直方圖、繪制農(nóng)田病蟲害的散點圖、繪制河流濕地的生態(tài)圖等。

        (5) 語音視頻通信服務(wù)。語音視頻通信服務(wù)是指提供和地圖上的某信息點視頻通信的服務(wù)。例如遠程在線監(jiān)控、語音視頻通話。

        (6) 定時器。設(shè)置定時器,每隔一個指定時間,執(zhí)行設(shè)定的操作。例如,每隔5 min刷新氣象圖。

        (7) 數(shù)據(jù)搜索。數(shù)據(jù)搜索服務(wù)包括搜索目標和返回結(jié)果顯示方式兩個部分,搜索目標是指定要搜索的數(shù)據(jù)庫,SQL語句。返回結(jié)果顯示方式是指返回結(jié)果顯示區(qū)的寬度、高度等樣式和顯示區(qū)界面中的數(shù)據(jù)集的字段。

        其中一些服務(wù)對應(yīng)的類如圖4所示:GMap是通過GMAP接口實現(xiàn)的地圖對象;GIcon是圖標;GPoint是坐標;GPolyline是折線;GMark是標注;GDiv是在地圖對象指定圖層寫入內(nèi)容的類;Plot是在地圖繪制圖表的類;Search是實現(xiàn)搜索功能的類;Vedio_comm是實現(xiàn)地理位置實時通信的類;Web_commu是在WebRTC接口實現(xiàn)的瀏覽器端語音視頻通信類。

        圖4 服務(wù)模塊類圖

        系統(tǒng)將用戶管理、地理信息管理等用戶共同的需求,由服務(wù)器端實現(xiàn)。其他的差異化需求由于數(shù)量眾多,而且用戶數(shù)量龐大,如果這些需求對應(yīng)的服務(wù)放在服務(wù)器端同時運行將會對服務(wù)器構(gòu)成非常大的壓力[11]。所以,將對應(yīng)的差異化需求解決方案由JavaScript模塊完成,將這些模塊組成解決方案庫。用戶定制時,選擇相應(yīng)的JavaScript模塊,下載到客戶端瀏覽器運行即可。這些瀏覽器端的運行的服務(wù)模塊,如果需要訪問服務(wù)器端的數(shù)據(jù)庫,只需要調(diào)用在服務(wù)器端的一個數(shù)據(jù)庫操作的Web服務(wù)即可,如圖5所示。

        圖5 服務(wù)模塊的負載均衡

        2.2 系統(tǒng)的可配置

        系統(tǒng)的可配置包括用戶界面、業(yè)務(wù)邏輯的定制。用戶界面就是HTML文檔,所以界面自制就用戶編輯HTML文檔或者DOM對象樹。而業(yè)務(wù)邏輯包括是服務(wù)模塊選擇和業(yè)務(wù)規(guī)則文件的制作。各種服務(wù)模塊本身也需要配合用戶界面,例如地圖服務(wù)就是Gmap對象實例綁定一個DIV。通常是在HTML文檔包含要調(diào)用服務(wù)的JS庫,然后綁定DOM對象并實例化。所以,用戶界面定制和服務(wù)模塊的選擇可以一起完成的。

        當前瀏覽器都支持編輯模式,所以主要開啟瀏覽器編輯模式,可以在線編輯HTML文檔。流程圖如圖6所示。

        圖6 配置流程圖

        工作過程如下:

        (1) 首先生成一個iframe對象,將該iframe的中的document設(shè)置成編輯狀態(tài)(document.designMode="on"),這樣,就可以在這個空白文檔中實現(xiàn)在線編輯了。然后在用戶界面編輯區(qū)上方設(shè)置一個工具條,用于編輯用戶界面和服務(wù)模塊。

        (2) 鼠標光標在編輯區(qū)內(nèi)拖動選擇編輯范圍,也可以單擊鼠標確定坐標。

        (3) 編輯器會自動識別選擇范圍內(nèi)的對象和其父對象的DOM結(jié)構(gòu),例如document.table.img,用戶如果選擇了要編輯的對象,編輯器就會打開一個屬性對話框供用戶編輯。

        (4) 如果用戶并未選擇編輯對象,而是單擊工具欄命令按鈕,編輯器就會執(zhí)行對應(yīng)的命令。這個命令如果是需要用戶設(shè)置參數(shù)的(例如服務(wù)模塊、表格、表單等),編輯器就會打開一個屬性對話框供用戶編輯,并且每個對象會被設(shè)置一個對應(yīng)的ID(例如,插入的第N個地圖模塊的ID設(shè)置為Map_N)。如果不是,就直接執(zhí)行。

        (5) 編輯器將對應(yīng)命令執(zhí)行后的HTML代碼寫入編輯區(qū),編輯區(qū)顯示用戶編輯的結(jié)果,最后把HTML文檔和對應(yīng)的DOM樹保存到服務(wù)器端。

        在上一個步驟中選擇了要加入的服務(wù)模塊,然后制作業(yè)務(wù)規(guī)則文件來組合這些服務(wù)。業(yè)務(wù)邏輯定制過程如圖7所示。

        圖7 業(yè)務(wù)邏輯定制過程

        一個業(yè)務(wù)規(guī)則文件包含多條業(yè)務(wù)規(guī)則,每條業(yè)務(wù)規(guī)則包含3個要素:源對象、事件、動作[12]。當源對象發(fā)生了某事件,就會觸發(fā)指定的動作。例如當搜索服務(wù)“search_1”完成搜索,結(jié)果返回之后,觸發(fā)執(zhí)行繪圖服務(wù)“Plot_1”,在地圖服務(wù)“Map_1”上繪制散點圖。業(yè)務(wù)規(guī)則以XML文件的格式保存。

        〈rules〉

        〈rule〉

        〈sobj〉search_1〈/sobj〉

        〈event〉complete〈/event〉

        〈action〉Plot_1(Map_1, search_1.Data. coordinate, Scatter)〈/action〉

        〈/rule〉

        〈/rules〉

        2.3 系統(tǒng)控制引擎

        系統(tǒng)控制引擎負責(zé)按照用戶定制的參數(shù)運行系統(tǒng),包括用戶界面和業(yè)務(wù)邏輯。用戶界面數(shù)據(jù)(HTML文件)保存在用戶的元數(shù)據(jù)表中,因此,系統(tǒng)初始化的時候載入即可,而業(yè)務(wù)邏輯控制是控制模塊的核心??紤]到降低服務(wù)器負載便于和用戶的交互,控制引擎設(shè)計在瀏覽器端運行,由JavaScript程序完成??刂埔媸紫雀鶕?jù)用戶添加的服務(wù)模塊載入對應(yīng)的JavaScript庫。然后綁定對應(yīng)的DOM對象并初始化。接著根據(jù)業(yè)務(wù)規(guī)則文件按順序調(diào)用相關(guān)服務(wù)模塊,并監(jiān)聽用戶的活動,按照業(yè)務(wù)規(guī)則文件設(shè)定的條件對用戶活動作出響應(yīng)[13-16],如圖8所示。

        圖8 控制引擎結(jié)構(gòu)

        對用戶活動的監(jiān)聽是指對業(yè)務(wù)規(guī)則中指定DOM對象的監(jiān)聽。為了防止監(jiān)聽瀏覽器DOM對象的混淆,使用DOM level2事件的監(jiān)聽方法[17-18]:object.addEventListener("event",eventFunction,boolean);object即是業(yè)務(wù)規(guī)則中指定DOM對象,用getElementById(DOM_ID)獲取。DOM_ID是指定DOM對象的ID。為了防止事件冒泡,boolean設(shè)置為false。

        業(yè)務(wù)邏輯處理可以看做是一個中央流程,單線程的異步模式運行。根據(jù)制定的條件確定調(diào)用不同的服務(wù)模塊, 這些條件可以是用戶活動或者是上一次調(diào)用的服務(wù)的返回值。業(yè)務(wù)邏輯處理根據(jù)條件構(gòu)造循環(huán)、聲明變量、復(fù)制和賦予值、定義故障處理等操作。

        考慮到JavaScript必須在一個頁面運行,更換頁面后不能持續(xù)運行。所以必須保持一個主頁面運行控制引擎,其他的可變活動,放在iframe內(nèi)運行。另外,考慮到瀏覽器意外關(guān)閉。將控制引擎的執(zhí)行過程記錄到cookie本地數(shù)據(jù)中。如果出現(xiàn)意外關(guān)閉瀏覽器等情況,可以從斷點處繼續(xù)執(zhí)行。

        3 實 例

        3.1 可定制性驗證

        為了驗證開發(fā)的SAAS模式WebGIS平臺能否在運行時支持多個租戶執(zhí)行不同業(yè)務(wù)流程實例,不同流程實例之間能否隔離。在客戶端模擬2個租戶,租戶分別設(shè)置配置方案,然后將這些配置方案存為不同的用戶配置文件,實驗環(huán)境配置如表1所示。

        表1 實驗環(huán)境配置

        其中, 租戶A需要一個園區(qū)規(guī)劃的WebGIS平臺,將園區(qū)三維地圖瓦片上傳到服務(wù)器端,調(diào)用地圖瓦片,使用折線工具和標注工具繪制規(guī)劃圖,租戶A的配置文件如表2所示,運行結(jié)果如圖9所示。

        圖9 園區(qū)規(guī)劃

        租戶B需要戶外運動管理的WebGIS平臺。由于人員眾多,每次活動將參與人員分成幾組,每組有個編號,由一個組長管理。每個組長的手機在系統(tǒng)注冊并登錄,這樣系統(tǒng)可以隨時獲得組長的GPS位置。當租戶B需要查找各個小組的當前位置并查看情況時。在搜索框內(nèi)輸入地理坐標的范圍,就可以搜索范圍內(nèi)所有小組,并在地圖上用標注顯示。單擊某個標注,調(diào)用語音視頻通信服務(wù),可以和組長視頻通信,查看當前狀況。租戶B的配置文件如表3所示,運行結(jié)果如圖10所示。

        表2 租戶A的配置文件

        表3 租戶B的配置文件

        圖10 戶外管理

        實驗結(jié)果表明,開發(fā)的SAAS模式WebGIS平臺能夠根據(jù)租戶配置文件派生出不同的流程實例,而且各個流程實例的執(zhí)行是相互隔離的、互不影響。

        3.2 系統(tǒng)性能評估

        為了進一步評估SAAS模式WebGIS平臺的服務(wù)性能,將傳統(tǒng)SAAS模式和本文提出的模式做一個對比。

        傳統(tǒng)模式下,所有服務(wù)實例都是運行在服務(wù)器端(見圖11),本文提出的模式下,只有通用服務(wù)S0(初始化和數(shù)據(jù)訪問)實例在服務(wù)器端運行,其他差異化服務(wù)實例在客戶端運行,見圖12。

        圖11 傳統(tǒng)SAAS模式

        圖12 負載均衡SAAS模式

        下面討論兩種模式下各個實例的響應(yīng)時間的對比。

        定義1服務(wù)器有P個,第j個服務(wù)器表示為Vj,它的計算機能力表示為Fvjj∈P。

        定義2客戶端有Q個,第i個客戶端表示為ci它的計算機能力表示為Ecii∈Q。

        為了簡化計算,假設(shè)所有實例內(nèi)的服務(wù)都是順序執(zhí)行。實例αb的服務(wù)集的工作量為

        (1) 傳統(tǒng)SAAS模式下,所有服務(wù)部署在服務(wù)器端。單位時間內(nèi)到達的服務(wù)請求工作量

        (3)

        服務(wù)器平均處理速度=PF/G。

        假設(shè)在未超負荷運行的情況下,根據(jù)排隊論的Erlang C結(jié)論:

        其中,Ec是Erlang C公式,表達式

        (4)

        所以,對于客戶實例i總體的服務(wù)響應(yīng)時間

        (5)

        1≤mi≤ni≤k

        (2) 本文提出的SAAS模式,初始化服務(wù)S0部署在服務(wù)器端,其他服務(wù)部署在客戶端。

        單位時間內(nèi)到達服務(wù)器的服務(wù)請求工作量

        (6)

        根據(jù)式(5),服務(wù)器端處理時間:

        所以總體的響應(yīng)時間

        (1≤mi≤ni≤k;i∈Q)

        (7)

        使用Matlab 2014b進行模擬評估,為了簡化計算,假設(shè)服務(wù)器數(shù)量P=2個,每個服務(wù)器的計算能力Fvj=100(工作量/s),每個客戶端的計算能力Eci=20(工作量/s),每個實例包含的服務(wù)數(shù)量K=5個,每個服務(wù)Sk的工作量都=1,所有客戶端i請求速率R=1(次/s)。

        表4 兩種SAAS模式的響應(yīng)時間

        圖13 兩種SAAS模式的響應(yīng)時間對比

        由圖13可知,當客戶端較少時,傳統(tǒng)的SAAS模式響應(yīng)時間較快,隨著用戶端數(shù)量的增加,傳統(tǒng)SAAS模式的響應(yīng)時間會迅速增加,遠遠高于本文提出的SAAS模式響應(yīng)時間。而本文提出的SAAS模式的響應(yīng)時間非常平穩(wěn),基本不會隨客戶端數(shù)量發(fā)生變化。

        4 結(jié) 語

        采用面向服務(wù)架構(gòu),將用戶常用功能分解并模塊化,用戶可以自由配置系統(tǒng),將負載合理分配到服務(wù)器端和客戶端執(zhí)行,用戶系統(tǒng)實例運行由流程控制引擎來控制。所以SAAS模式WebGIS系統(tǒng)的關(guān)鍵技術(shù)包括:SOA和負載均衡、系統(tǒng)可配置性、流程控制引擎、易用性。通過兩個實例的建立,驗證了系統(tǒng)關(guān)鍵技術(shù)的解決方案是有效的。

        另外,由于WebGIS系統(tǒng)的需求繁多,系統(tǒng)開發(fā)人員不可能開發(fā)滿足所有應(yīng)用的服務(wù)模塊,考慮以后提供系統(tǒng)接口,用戶自己開發(fā)服務(wù)模塊,并分享給其他用戶使用。

        猜你喜歡
        租戶服務(wù)器端瀏覽器
        反瀏覽器指紋追蹤
        電子制作(2019年10期)2019-06-17 11:45:14
        淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
        成功(2018年10期)2018-03-26 02:56:14
        基于MVC模式的多租戶portlet應(yīng)用研究*
        環(huán)球瀏覽器
        再見,那些年我們嘲笑過的IE瀏覽器
        在Windows中安裝OpenVPN
        租戶是大爺
        特別文摘(2014年17期)2014-09-18 01:31:21
        企業(yè)多租戶云存儲平臺的設(shè)計與實現(xiàn)
        SaaS模式下多租戶數(shù)據(jù)比較存儲模式研究
        網(wǎng)頁防篡改中分布式文件同步復(fù)制系統(tǒng)
        天天躁日日躁aaaaxxxx| a√无码在线观看| 精品女同一区二区三区不卡| 国产免费网站在线观看不卡| 亚洲tv精品一区二区三区| 精品久久久无码人妻中文字幕豆芽 | 欧美性猛交xxxx富婆| 日韩一线无码av毛片免费| 99热高清亚洲无码| 精品国产色哟av一区二区三区| 午夜视频在线观看视频在线播放 | 日韩精品无码中文字幕电影| 欧美日本日韩aⅴ在线视频| 国产精品麻豆A在线播放| 国产一区二区三区精品乱码不卡| 一本久久a久久免费综合| 人人爽久久涩噜噜噜丁香| 欧美午夜一区二区福利视频| 少妇av免费在线播放| 亚洲av专区一区二区| 99久久无色码中文字幕人妻蜜柚| 黄瓜视频在线观看| 2021av在线| 中出内射颜射骚妇| 欧美性xxx久久| 人妻熟女中文字幕av| 国产精选自拍视频网站| 极品少妇一区二区三区四区| 日韩AV有码无码一区二区三区 | 久久精品国产亚洲av热东京热| 偷拍偷窥女厕一区二区视频| 国产成人亚洲精品| 久久精品—区二区三区无码伊人色| 黄网站a毛片免费观看久久| 国产精品高清视亚洲乱码| 人妻少妇偷人精品无码| 丰满爆乳无码一区二区三区| 亚洲av激情久久精品人| 麻豆国产精品一区二区三区| 女人被爽到高潮视频免费国产| 欧美成人看片黄a免费看|