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

    基于微服務(wù)架構(gòu)的眾包圖像數(shù)據(jù)集標(biāo)注系統(tǒng)①

    2021-05-21 07:22:16袁曉晨張衛(wèi)山高紹姝趙永俊安云云
    計算機系統(tǒng)應(yīng)用 2021年5期
    關(guān)鍵詞:標(biāo)定部署架構(gòu)

    袁曉晨,張衛(wèi)山,高紹姝,時 斌,趙永俊,王 冶,安云云

    1(中國石油大學(xué)(華東)計算機科學(xué)與技術(shù)學(xué)院,青島 266580)

    2(青島海爾空調(diào)電子有限公司 電控模塊開發(fā)部,青島 266101)

    3(解放軍9144 部隊,青島 266102)

    4(國網(wǎng)山東省電力公司 青島市黃島區(qū)供電公司,青島 266500)

    計算機視覺圖像識別是人工智能的重要應(yīng)用,廣泛應(yīng)用在工業(yè)、醫(yī)學(xué)、軍事、教育、商業(yè)、體育、安防檢測等行業(yè)與領(lǐng)域中.機器學(xué)習(xí),尤其是深度學(xué)習(xí)展現(xiàn)出了針對圖像識別領(lǐng)域優(yōu)秀的識別性能.而機器學(xué)習(xí)本身需要建立在大量的帶有指導(dǎo)意義的既有數(shù)據(jù)集基礎(chǔ)之上.在進行深度學(xué)習(xí)模型訓(xùn)練流程中,往往需要針對海量圖片進行人工數(shù)據(jù)標(biāo)注,繁重的圖像標(biāo)注任務(wù)增添了大量時間成本.

    傳統(tǒng)的圖像標(biāo)注工具,如表1所示,大多以單機運行的傳統(tǒng)單體式系統(tǒng)架構(gòu)為主,運行在單機之上,同一時間同一系統(tǒng)運行實例上只允許一個用戶對本地資源進行圖像標(biāo)定.當(dāng)使用傳統(tǒng)圖像標(biāo)注工具進行協(xié)作標(biāo)定時,需要用戶手動進行圖像集的分組并拷貝至協(xié)作組員的工作站.協(xié)作組員各自完成任務(wù)后仍需要用戶自行合并制作數(shù)據(jù)集.由于缺少集中化的圖像與工作流,導(dǎo)致傳統(tǒng)單機標(biāo)注工具在協(xié)作場景下存在大量的文件與數(shù)據(jù)傳輸,在海量圖像文件的壓縮、打包與傳輸過程中產(chǎn)生了大量的時間與人工成本.

    表1 傳統(tǒng)圖像標(biāo)注工具對比

    為了解決機器學(xué)習(xí)圖像識別訓(xùn)練的各種前置準備工作費時費力的問題,本文提出并設(shè)計實現(xiàn)了一種基于Spring Cloud、面向機器學(xué)習(xí)模型訓(xùn)練的協(xié)作式圖像數(shù)據(jù)管理與標(biāo)注平臺,通過眾包任務(wù)的方式,優(yōu)化圖像標(biāo)注流程,設(shè)計實現(xiàn)了面向海量圖像的存儲、標(biāo)定集管理、圖像標(biāo)定任務(wù)管理等功能模塊.系統(tǒng)采用微服務(wù)架構(gòu),將系統(tǒng)各個部分進行解耦[1],實現(xiàn)服務(wù)注冊與發(fā)現(xiàn)、負載均衡、容錯處理,提升了系統(tǒng)的高可用性、可維護性與可擴展性.基于GitLab-CICD 實現(xiàn)了微服務(wù)的增量更新、持續(xù)部署與灰度更新.通過將海量圖像標(biāo)定數(shù)據(jù)進行分組劃分,簡化數(shù)據(jù)標(biāo)注過程中的操作,降低了數(shù)據(jù)標(biāo)注人員的時間成本,提升了數(shù)據(jù)標(biāo)注工作效率.

    1 概述

    1.1 眾包任務(wù)模式

    眾包任務(wù)模式指的是將本應(yīng)當(dāng)由單一機構(gòu)或個人執(zhí)行的工作內(nèi)容在公開或非公開網(wǎng)絡(luò)上以公開的方式外包給特定或非特定用戶[2].通過采用眾包任務(wù)的模式,將龐大的圖像標(biāo)注任務(wù)切分為小的任務(wù),能夠有效提升標(biāo)定的速度與質(zhì)量,從而加速深度學(xué)習(xí)模型訓(xùn)練流程.

    1.2 微服務(wù)架構(gòu)

    微服務(wù)[3]是一系列功能簡單、互相之間采用輕量級通信協(xié)議協(xié)同工作的功能區(qū)塊.每個小的功能區(qū)塊具有高內(nèi)聚、低耦合的特點,能夠獨立自主地運行.

    微服務(wù)架構(gòu)是一種架構(gòu)模式,它是SOA 架構(gòu)(Service Of Application)的進一步發(fā)揚,通過將龐大的系統(tǒng)根據(jù)業(yè)務(wù)邊界細粒度地拆分為小的服務(wù)模塊.每個小的服務(wù)模塊具有高內(nèi)聚、低耦合的特點,均能夠獨立地運行.每個模塊可以由不同的團隊進行開發(fā)[4].

    微服務(wù)架構(gòu)擁有著許多傳統(tǒng)單體式應(yīng)用所不具備的優(yōu)勢[5]:

    ① 復(fù)雜度可控:通過將復(fù)雜的系統(tǒng)細粒度地拆分為小體積、業(yè)務(wù)簡單的模塊,降低了每個模塊的開發(fā)難度與復(fù)雜度.各個模塊間互相解耦[6],當(dāng)需求變更時,只需要修改對應(yīng)的模塊即可實現(xiàn)系統(tǒng)整體功能上的變更,無需考慮其他模塊可能因為接口實現(xiàn)的變更而無法正常工作的問題.

    ② 團隊協(xié)作效率高:當(dāng)確定系統(tǒng)各個微服務(wù)接口定義后即可分組并行開發(fā)不同的微服務(wù)模塊,從而提升了整體開發(fā)效率.同時不同微服務(wù)模塊無需集成為一個整體,只需要能夠互相調(diào)用即可保證系統(tǒng)的正常運行,避免了單體式應(yīng)用集成過程中出現(xiàn)的組件源碼不兼容,降低了集成成本.

    ③ 獨立部署:每個小模塊都能夠獨立地運行,不會因為其他服務(wù)故障而受到影響.通過微服務(wù)調(diào)度系統(tǒng)的支持,能夠?qū)崿F(xiàn)快速部署在單機或集群上,從而充分利用計算性能.

    ④ 維護難度低:配合持續(xù)集成與持續(xù)部署(CI/CD),即可實現(xiàn)灰度發(fā)布與服務(wù)熱更新,無需系統(tǒng)全部停機或重啟即可完成功能更新.

    ⑤ 多種技術(shù)允許共存:微服務(wù)獨立部署使得微服務(wù)間只需要約定技術(shù)、語言無關(guān)的RPC 協(xié)議即可實現(xiàn)不同技術(shù)、語言實現(xiàn)的微服務(wù)共存并配合工作[7].

    ⑥ 系統(tǒng)穩(wěn)定性高:微服務(wù)架構(gòu)的系統(tǒng)擁有熔斷機制,當(dāng)系統(tǒng)部分組件失效時能夠及時阻止故障船體,從而避免系統(tǒng)發(fā)生雪崩式功能失效,提升了系統(tǒng)的穩(wěn)定性.

    1.3 對象存儲系統(tǒng)

    基于對象的云存儲即對象存儲(object storage)是近幾年逐漸流行的一個新興且切實可行的大規(guī)模存儲方案[8],使用較為簡便的方法實現(xiàn)數(shù)據(jù)存儲,即充分利用已有的存儲組件、網(wǎng)絡(luò)技術(shù)和處理技術(shù),使系統(tǒng)擁有較好的可擴展性以及高吞吐量[9].對象存儲思想的核心為對象,每個對象都有唯一的標(biāo)識[10].對象存儲將文件劃分為一個個對象,為用戶提供了統(tǒng)一的存儲空間,從而能更好的對文件進行訪問控制和存儲管理[11].這些對象被分布在整個集群之中,為保障數(shù)據(jù)安全、防止數(shù)據(jù)丟失將每一個對象多重備份復(fù)制到多個設(shè)備上.對象存儲系統(tǒng)將數(shù)據(jù)塊列表映射為對象列表,將各類數(shù)據(jù)塊簡化成為一個個對象來進行管理[12],極大改善了系統(tǒng)的可伸縮性,可以輕易實現(xiàn)海量數(shù)據(jù)的管理.

    2 系統(tǒng)設(shè)計

    2.1 需求分析

    傳統(tǒng)的數(shù)據(jù)集標(biāo)注往往在單終端中進行,大量的圖像需要由一個部門或者個人完成.使用傳統(tǒng)的標(biāo)注工具進行多人協(xié)作式圖像標(biāo)注時,在圖像整理上浪費了大量時間.協(xié)作前需要人工將大量圖像打包分組,協(xié)作后需要將圖像與標(biāo)定數(shù)據(jù)回收合并為同一個數(shù)據(jù)集合.常見的文件系統(tǒng)針對海量小文件的處理性能往往不及少量大文件,導(dǎo)致人工打包也是一項耗時的工作.針對以上痛點,圖像標(biāo)注系統(tǒng)主要有以下需求:

    ① 圖像數(shù)據(jù)托管:為避免文件系統(tǒng)直接頻繁操作大量小文件,從而節(jié)省任務(wù)分配數(shù)據(jù)打包的時間,圖像數(shù)據(jù)應(yīng)當(dāng)由專門的機制進行托管,必要時以圖像為基本單位提供圖像及其元數(shù)據(jù)檢索服務(wù).

    ② 任務(wù)劃分與管理:為實現(xiàn)眾包模式的圖像標(biāo)注,需要將包含大量圖像的任務(wù)拆分為小任務(wù),交由不同的個人進行標(biāo)注.

    ③ 支持多種標(biāo)注模式:系統(tǒng)應(yīng)當(dāng)支持機器視覺訓(xùn)練常用的關(guān)鍵點、矩形、多邊形標(biāo)注模式.

    ④ 支持多種導(dǎo)出格式:針對主流深度學(xué)習(xí)源碼所接受的格式,系統(tǒng)應(yīng)當(dāng)具備良好的擴展性以支持更多的深度學(xué)習(xí)框架.

    ⑤ 數(shù)據(jù)統(tǒng)計:任務(wù)發(fā)起者應(yīng)當(dāng)能夠看到子任務(wù)的標(biāo)注進度、標(biāo)簽數(shù)量等統(tǒng)計信息,從而有針對性地決定是否需要增加或者調(diào)整圖像組成.

    ⑥ 支撐模塊需求:除此之外,系統(tǒng)應(yīng)當(dāng)具有基本的用戶與權(quán)限控制功能.

    2.2 微服務(wù)劃分與系統(tǒng)架構(gòu)設(shè)計

    ① 系統(tǒng)微服務(wù)劃分

    根據(jù)系統(tǒng)需求分析結(jié)果,將系統(tǒng)劃分為4 個功能性微服務(wù)和3 個架構(gòu)支撐服務(wù):圖像對象存儲服務(wù)、圖像集合管理服務(wù)、標(biāo)定集合管理服務(wù)、數(shù)據(jù)輸入輸出服務(wù)、用戶及授權(quán)管理和服務(wù)網(wǎng)關(guān).

    圖像對象存儲服務(wù)用于面向海量圖片的對象存儲,將圖片統(tǒng)一以相同規(guī)則生成的不重復(fù)定位符作為索引,避免圖片重復(fù)存儲與圖片文件名重復(fù)沖突的問題.

    圖像集合管理服務(wù)用于將離散的圖片在邏輯上組成一個集合,作為系統(tǒng)中圖片操作的基本單位.

    標(biāo)定集合管理服務(wù)用于管理和存儲圖像集對應(yīng)的標(biāo)定數(shù)據(jù),同時提供標(biāo)定任務(wù)的劃分與分配.

    數(shù)據(jù)導(dǎo)入導(dǎo)出服務(wù)主要用于圖像、標(biāo)簽數(shù)據(jù)的解包導(dǎo)入與打包導(dǎo)出.提供常見的壓縮與視頻格式的解析與常見數(shù)據(jù)集格式的導(dǎo)出等功能.

    ② 系統(tǒng)架構(gòu)設(shè)計

    系統(tǒng)整體采用分層式結(jié)構(gòu),如圖1所示.為了開發(fā)過程中能夠更明確的分工,其中服務(wù)層按照微服務(wù)的思想進行拆分.各層主要包含內(nèi)容如下:

    持久化層:為了方便使用微服務(wù)編排框架進行部署,所有有狀態(tài)的服務(wù)均從整體架構(gòu)中分離整合在持久化層中.其中包括用于對象數(shù)據(jù)存儲的NoSQL 數(shù)據(jù)庫;用于關(guān)系型信息數(shù)據(jù)存儲的SQL 數(shù)據(jù)庫;用于全局數(shù)據(jù)緩存的內(nèi)存NoSQL 數(shù)據(jù)庫;用于全局消息同步的消息隊列中間件.

    微服務(wù)層:包含了業(yè)務(wù)邏輯微服務(wù)群和架構(gòu)支撐服務(wù)群兩部分.架構(gòu)支撐服務(wù)群中包含了微服務(wù)架構(gòu)必需的注冊發(fā)現(xiàn)中心、日志監(jiān)控、配置中心等基礎(chǔ)微服務(wù).業(yè)務(wù)邏輯微服務(wù)群提供了實現(xiàn)業(yè)務(wù)邏輯的相關(guān)微服務(wù),包括圖像對象存儲微服務(wù)、圖像集管理微服務(wù)、標(biāo)定管理微服務(wù)和數(shù)據(jù)導(dǎo)入導(dǎo)出微服務(wù).

    網(wǎng)關(guān)層:網(wǎng)關(guān)層包含了由Spring Gateway 實現(xiàn)的API 網(wǎng)關(guān)微服務(wù)、前端站點微服務(wù)和Nginx 總代理微服務(wù),提供了系統(tǒng)接入入口.

    CI/CD 支撐部分:系統(tǒng)源代碼采用了Gitlab 私服進行托管,Gitlab 也提供了對持續(xù)集成的支持,故直接采用Gitlab-CICD 實現(xiàn)系統(tǒng)開發(fā)過程中的持續(xù)集成與部署.

    系統(tǒng)采用現(xiàn)有完整的微服務(wù)方案,使用服務(wù)發(fā)現(xiàn)實現(xiàn)松散的服務(wù)間耦合,采用聲明式RPC 客戶端實現(xiàn)微服務(wù)間的互相調(diào)用,使用統(tǒng)一網(wǎng)關(guān)代理微服務(wù)作為系統(tǒng)入口,添加負載均衡機制以擴展系統(tǒng)負載容量,使用OAuth2 開放認證協(xié)議作為認證機制.

    圖1 圖像標(biāo)注系統(tǒng)架構(gòu)

    3 持續(xù)集成、持續(xù)部署與微服務(wù)架構(gòu)實現(xiàn)

    3.1 微服務(wù)注冊與發(fā)現(xiàn)

    在微服務(wù)架構(gòu)的系統(tǒng)中,為了實現(xiàn)微服務(wù)間既有松散的耦合度,又能夠互相訪問,微服務(wù)注冊與發(fā)現(xiàn)機制是一種常用方法[13].通過由微服務(wù)自行將自身的信息主動注冊至注冊中心的方式,使得其他微服務(wù)可以通過查詢注冊中心注冊記錄的方式間接地發(fā)現(xiàn)其存在并獲得訪問相關(guān)參數(shù).注冊中心是注冊與發(fā)現(xiàn)中最重要的一部分,在Spring Cloud 微服務(wù)套件中,提供了注冊中心的一種原生實現(xiàn)和兩種接入實現(xiàn):

    ① Eureka Server:由Netflix 開發(fā)的基于原生Java的開源注冊中心實現(xiàn),Spring Cloud 套件給出了基于Spring Boot 快速構(gòu)建注冊中心的方案.

    ② Spring Cloud Consul:Consul是由HashiCorp 公司開發(fā)的一種服務(wù)網(wǎng)格解決方案,提供具有服務(wù)發(fā)現(xiàn),配置和分段功能的全功能控制平面[14].通過添加org.springframework.cloud.spring-cloud-starter-consul-all 依賴,同樣可以實現(xiàn)類似的注冊發(fā)現(xiàn)功能.

    Spring Cloud Zookeeper:Apache ZooKeeper是一項集中式服務(wù),用于維護配置信息,命名,提供分布式同步和提供組服務(wù)[15].基于Spring Cloud的微服務(wù)可以通過添加org.springframework.cloud.spring-cloudstarter-zookeeper-all 依賴實現(xiàn)基于ZooKeeper的注冊發(fā)現(xiàn).

    由于后兩種注冊發(fā)現(xiàn)的方案需要單獨部署第三方的應(yīng)用實例來支撐微服務(wù)注冊與發(fā)現(xiàn)的功能,故選擇可自行構(gòu)建的Eureka Server 方案.

    Eureka的注冊與發(fā)現(xiàn)方案整體流程如圖2所示,主要分為兩部分.

    圖2 基于Eureka的注冊發(fā)現(xiàn)實現(xiàn)流程

    第一部分為Eureka 注冊中心.Spring 提供了一套項目生成工具Spring Initializer[16],允許開發(fā)人員直接通過可視化配置直接生成Spring Boot 項目,這里借用Spring Initializer 可以直接生成Eureka Server的項目.

    如圖3所示,在Spring Initializer 中輸入項目信息并選中Eureka Server 依賴,點擊Generate 即可得到初始項目模板.在Spring Boot 啟動類上添加@EnableEurekaServer參數(shù)即可開啟項目依賴中的Eureka Server.

    圖3 使用Spring Initializer 生成Eureka Server 實例

    第二部分即業(yè)務(wù)微服務(wù)中的Discovery Client.在需要通過服務(wù)發(fā)現(xiàn)感知其他服務(wù)實例的微服務(wù)中,增加org.springframework.cloud.spring-cloud-starter-netflixeureka-client 依賴,并在項目引導(dǎo)類上添加@Enable-DiscoveryClient 注解,即可為Feign 客戶端添加服務(wù)發(fā)現(xiàn)的功能.

    完成其他業(yè)務(wù)微服務(wù)開發(fā)后,同時啟動各個微服務(wù),可通過登錄Eureka 監(jiān)控頁面看到各個微服務(wù)的注冊情況,如圖4所示.

    圖4 通過Eureka Server 查看服務(wù)發(fā)現(xiàn)注冊狀態(tài)

    3.2 微服務(wù)接口網(wǎng)關(guān)與負載均衡

    相較于傳統(tǒng)的單體式應(yīng)用,微服務(wù)架構(gòu)的應(yīng)用更接近于單體式應(yīng)用站群.微服務(wù)架構(gòu)應(yīng)用為了實現(xiàn)從外部表現(xiàn)為與單體式應(yīng)用類似的形式,需要一個微服務(wù)作為接口網(wǎng)關(guān),同時需要提供負載均衡的特性.

    對于API 網(wǎng)關(guān),Spring Cloud 提供了兩套方案:

    ① Zuul:Zuul 來源于Netflix 開源的微服務(wù)架構(gòu)套件.Zuul 底層采用了Tomcat Embeded 版本作為HTTP支撐層.

    ② Spring Cloud Gateway:Spring Cloud Gateway是由Spring 項目組基于其自研Web 框架WebFlux 實現(xiàn)的API 網(wǎng)關(guān).Spring Cloud Gateway是Spring Cloud去Netflix 進程中非常重要的一個項目,旨在替代Zuul成為未來的Spring Cloud 框架下的API 網(wǎng)關(guān)組件.

    WebFlux 底層為直接使用Netty 等高性能非阻塞服務(wù)器,相較于采用Servlet 架構(gòu)的Tomcat(Embeded)性能上略勝一籌[17].考慮到未來Spring 項目組開發(fā)的方向與性能預(yù)期,采用Spring Cloud Gateway 作為系統(tǒng)API 網(wǎng)關(guān).

    Spring Cloud Gateway 同樣可以使用Spring Initializer進行項目初始化,初始化完成后可以通過在application.yml 中的spring.cloud.gateway.route 字段中配置接口路徑與微服務(wù)的映射.

    代碼1.Spring Cloud Gateway 路由配置spring:application:name:application-gateway cloud:gateway:routes:# 用戶服務(wù)-id:user-service uri:lb://user-service predicates:->Path=/oauth/**,/user/**,/role/**# 其他服務(wù)#…

    對于負載均衡,Spring Cloud 框架提供了Ribbon組件.Ribbon是一款客戶端側(cè)負載均衡器,它可以自動從Discovery Client 中獲取微服務(wù)實力列表,應(yīng)用常見的負載均衡算法實現(xiàn)在同一服務(wù)的多個冗余實例上的負載均衡[18].通過添加org.springframework.cloud.spring-cloud-starter-netflix-ribbon 依賴即可在服務(wù)調(diào)用側(cè)引入負載均衡組件.

    3.3 微服務(wù)熔斷機制

    微服務(wù)之間往往避免不了互相調(diào)用對方的服務(wù).當(dāng)進行同步接口調(diào)用時,被調(diào)用方宕機、接口調(diào)用超時往往會引起調(diào)用方的異常.為了避免因微服務(wù)之間的依賴關(guān)系而出現(xiàn)大面積故障,調(diào)用方服務(wù)應(yīng)當(dāng)感知被調(diào)用方的異常并作出防御性動作,防止故障繼續(xù)的蔓延.

    在Spring Cloud 框架中,提供了Hystrix 組件.Hystrix 能夠在被調(diào)用微服務(wù)出現(xiàn)異常時及時熔斷,觸發(fā)調(diào)用方的異常處理流程,防止調(diào)用方產(chǎn)生異常.Hystrix組件可以通過在微服務(wù)中添加org.springframework.cloud.spring-cloud-starter-netflix-hystrix 依賴來添加至微服務(wù)中.在微服務(wù)啟動類上添加@EnableHystrix 注解即可啟用熔斷器.

    3.4 基于SSDB的圖像對象存儲系統(tǒng)

    在深度學(xué)習(xí)圖像識別模型訓(xùn)練過程中往往需要準備大量圖像,而實現(xiàn)存儲并快速索引圖像數(shù)據(jù)就是標(biāo)注系統(tǒng)性能提升的關(guān)鍵點.

    SSDB是一個高性能的支持豐富數(shù)據(jù)結(jié)構(gòu)的NoSQL數(shù)據(jù)庫,其底層實現(xiàn)為Google的高性能鍵值對數(shù)據(jù)庫LevelDB.

    首先是一個高性能SSDB 集群,SSDB 采用的是與Redis 相同的網(wǎng)絡(luò)通信實現(xiàn),故可以采用Redis 集群常用的TwemProxy 代理實現(xiàn)如圖5所示的對象存儲架構(gòu).

    圖5 SSDB 集群架構(gòu)

    圖5上部分是圖像對象存儲微服務(wù).圖像存儲微服務(wù)使用圖像原始數(shù)據(jù)經(jīng)哈希運算得到的索引號作為圖像在對象系統(tǒng)中的唯一索引.每一張圖像采用一個哈希表進行存儲,在哈希表中額外增加有關(guān)圖像內(nèi)容相關(guān)的元信息,對于重復(fù)上傳的內(nèi)容采取增加元信息中記錄的索引數(shù)量而不重復(fù)存儲.

    3.5 基于Gitlab-CICD的持續(xù)集成與部署

    在傳統(tǒng)的單體式應(yīng)用中,只需要編譯一次即可得到可運行的產(chǎn)物,而在微服務(wù)架構(gòu)應(yīng)用中,因為劃分為了多個實例,這種類似于“站群”的系統(tǒng)往往需要編譯多個“單體式應(yīng)用”并封裝為Docker 鏡像進行部署.為了減少編譯部署階段的工作量,使用Gitlab-CICD 實現(xiàn)全自動化的編譯、測試與部署.

    首先是準備一個Gitlab 實例,可以使用Gitlab 官方站點或者建立開源的Gitlab-CE 實例,本文不再贅述有關(guān)Gitlab 實例搭建的內(nèi)容.

    系統(tǒng)采用了Docker Swarm 作為微服務(wù)編排框架,使用Harbor 作為Docker Swarm 集群的私有鏡像源.

    Gitlab-CICD 中另一個重要組成部分便是Gitlab-Runner.Gitlab-Runner是實際執(zhí)行持續(xù)集成任務(wù)的主體.Gitlab-Runner 支持多種部署方式,本項目選擇了基于裸機系統(tǒng)的編譯環(huán)境,方便做一些特殊的環(huán)境配置.

    Gitlab-CICD 執(zhí)行流程如圖6所示,主要環(huán)節(jié)包括:

    ① 代碼提交:在各個微服務(wù)中建立Git 倉庫,并將倉庫托管至Gitlab.當(dāng)微服務(wù)代碼得到更新并推送提交至Gitlab 時,Gitlab 會自動檢查倉庫目標(biāo)分支中的.gitlab-ci.yml 文件中的配置,并在流水線(pipeline)中添加持續(xù)集成的任務(wù).

    ② CICD 任務(wù)的執(zhí)行:Gitlab-Runner 定時向Gitlab的流水線隊列請求任務(wù),當(dāng)Gitlab-Runner 得到任務(wù)后在其宿主機上執(zhí)行配置文件中定義的腳本.腳本中定義的動作完成微服務(wù)的編譯、測試、鏡像打包與提交、灰度更新.

    圖6 Gitlab-CICD 執(zhí)行流程

    以圖像管理服務(wù)為例,編寫了如代碼2 所示的gitlab-CICD.yml 配置文件.

    代碼2.Gitlab 持續(xù)集成與持續(xù)部署配置stages:-測試-構(gòu)建-部署測試:stage:測試only:-master tags:-dlp script:-mvn test構(gòu)建:

    stage:構(gòu)建only:-master tags:-dlp script:-mvn package-Dmaven.test.skip=true-docker build-t ${DOCKER_REGISTRY}/dlp/${SERVICE_NAME}:latest.-docker push ${DOCKER_REGISTRY}/dlp/${SERVICE_NAME}:latest部署:stage:部署only:-master tags:-dlp script:-docker-H ${DOCKER_SWARM} service update--image ${DOCKER_REGISTRY}/dlp/${SERVICE_NAME}:latest${DOCKER_SWARM_ STACK_NAME}_${SERVICE_NAME}

    如代碼2 所示,CICD 一次任務(wù)將分為3 個階段:構(gòu)建、測試與部署.其中測試階段由Maven 進行編譯并執(zhí)行系統(tǒng)中的單元測試;構(gòu)建階段直接使用Maven進行服務(wù)器端編譯,隨后使用Gitlab-Runner 宿主機上的docker 構(gòu)建鏡像并推送至Harbor;部署階段通過暴露Docker Swarm 中的Manager 節(jié)點上dockerd的2375端口,實現(xiàn)從Gitlab-Runner 宿主機直接控制集群并觸發(fā)微服務(wù)鏡像更新.運行效果如圖7所示.

    通過在各個微服務(wù)實例中分別修改相同邏輯后分別以手動部署與持續(xù)集成在多節(jié)點集群上部署并統(tǒng)計用時,得到邏輯更新至生產(chǎn)環(huán)境的耗時如表2所示.

    圖7 Gitlab-CICD 執(zhí)行效果

    表2 手動部署與CICD 部署效率對比

    由表2可知,CICD 有效減少了系統(tǒng)集成過程中的集成與部署時間成本,提升了系統(tǒng)邏輯變更同步至生產(chǎn)環(huán)境的效率.

    4 系統(tǒng)測試

    4.1 系統(tǒng)后端接口測試

    項目采用了微服務(wù)系統(tǒng)常見的前后端分離結(jié)構(gòu),前端在接口確定后采用樁服務(wù)器(mock-server)與后端并行開發(fā).后端系統(tǒng)測試過程中使用了postman 進行接口的測試,如圖8所示.

    Postman[19]是一個用于API 接口開發(fā)的協(xié)作平臺.它提供了一套API 接口開發(fā)工具,包括API 客戶端、文檔生成、自動化測試、API 接口監(jiān)控、API 設(shè)計與樁服務(wù)器與接口文檔協(xié)作.

    Postman 內(nèi)嵌了OAuth2的認證模型,通過配置即可實現(xiàn)一系列共用同認證服務(wù)的API 同時獲得登錄認證的功能.

    圖8 使用postman 對后端接口進行測試

    4.2 系統(tǒng)功能測試

    以深度學(xué)習(xí)圖像數(shù)據(jù)制備流程為例,對系統(tǒng)中圖像導(dǎo)入、任務(wù)分配與標(biāo)定、數(shù)據(jù)導(dǎo)出流程進行功能測試.

    首先是圖像導(dǎo)入.圖像標(biāo)注系統(tǒng)支持圖像、視頻、PDF、OpenDocument 等格式混合打包上傳,上傳界面如圖9所示.上傳完成數(shù)據(jù)傳輸后轉(zhuǎn)入異步解壓處理流程,異步解壓完成后前端顯示實際圖像集大小.

    在圖像集中創(chuàng)建出標(biāo)定集后即可向系統(tǒng)中其他用戶分配標(biāo)定任務(wù)進行圖像標(biāo)定的團隊協(xié)作.分配任務(wù)過程如圖10 所示.

    切換至任務(wù)執(zhí)行用戶,可以在“我的任務(wù)”頁面中看到由任務(wù)發(fā)起用戶分配的任務(wù),點擊“開始”按順序?qū)D像進行標(biāo)定.進入標(biāo)定流程后,如圖11 所示,通過在圖像上拖拽創(chuàng)建圖像區(qū)域,完成對圖像內(nèi)容的標(biāo)記.

    圖9 創(chuàng)建圖像集

    圖10 分配標(biāo)定任務(wù)

    標(biāo)注過程中發(fā)起任務(wù)的用戶能夠看到各個任務(wù)執(zhí)行用戶的標(biāo)定進度與當(dāng)前已標(biāo)定圖像的標(biāo)簽統(tǒng)計信息.當(dāng)圖像集標(biāo)定完成后,任務(wù)發(fā)起者可以對圖像進行最終修正并導(dǎo)出圖像集合與標(biāo)定集合開展深度學(xué)習(xí)模型訓(xùn)練.以導(dǎo)出的VOC XML 格式為例,最終導(dǎo)出的標(biāo)簽集如圖12 所示.

    圖11 圖像標(biāo)注過程

    圖12 標(biāo)簽集合導(dǎo)出

    4.3 系統(tǒng)性能測試

    本文采用開源Apache Benchmark 對系統(tǒng)中圖像對象存儲系統(tǒng)進行多并發(fā)場景下的性能測試,測試環(huán)境如表3所示.

    如表4所示為模擬多用戶進行每個終端進行10次訪問(總計訪問次數(shù)=并發(fā)數(shù)量×10)的資源響應(yīng)速度的測試的測試結(jié)果.

    由表4可知,采用微服務(wù)架構(gòu)有效提升了系統(tǒng)容量,允許更多的用戶參與到眾包圖像標(biāo)定工作中.

    表3 性能測試節(jié)點環(huán)境配置

    表4 圖像存儲服務(wù)性能測試結(jié)果(單位:ms)

    5 結(jié)束語

    本文設(shè)計實現(xiàn)了面向深度學(xué)習(xí)的圖像標(biāo)注系統(tǒng),與傳統(tǒng)的本地標(biāo)注工具不同,本系統(tǒng)引入了眾包協(xié)作的思想與多種圖像格式存儲支持,將繁重的數(shù)據(jù)標(biāo)注任務(wù)進行合作完成,并提供了多種導(dǎo)出格式,避免了傳統(tǒng)工具協(xié)作標(biāo)注工作流中大量圖像數(shù)據(jù)的分包與標(biāo)簽數(shù)據(jù)合并操作,簡化了協(xié)作標(biāo)定流程,有效提升了數(shù)據(jù)準備階段的工作效率.同時,系統(tǒng)架構(gòu)層面采用了微服務(wù)架構(gòu),開發(fā)階段引入基于Gitlab-CICD的持續(xù)集成與持續(xù)部署,加速了系統(tǒng)開發(fā)到部署的更新迭代.

    猜你喜歡
    標(biāo)定部署架構(gòu)
    基于FPGA的RNN硬件加速架構(gòu)
    一種基于Kubernetes的Web應(yīng)用部署與配置系統(tǒng)
    晉城:安排部署 統(tǒng)防統(tǒng)治
    功能架構(gòu)在電子電氣架構(gòu)開發(fā)中的應(yīng)用和實踐
    汽車工程(2021年12期)2021-03-08 02:34:30
    部署
    使用朗仁H6 Pro標(biāo)定北汽紳寶轉(zhuǎn)向角傳感器
    LSN DCI EVPN VxLAN組網(wǎng)架構(gòu)研究及實現(xiàn)
    基于勻速率26位置法的iIMU-FSAS光纖陀螺儀標(biāo)定
    船載高精度星敏感器安裝角的標(biāo)定
    部署“薩德”意欲何為?
    太空探索(2016年9期)2016-07-12 10:00:02
    有码 亚洲区| 亚洲一级一片aⅴ在线观看| 22中文网久久字幕| 成人免费观看视频高清| 久久久欧美国产精品| 亚洲av在线观看美女高潮| 久久99热6这里只有精品| 97精品久久久久久久久久精品| 91精品伊人久久大香线蕉| 国产欧美另类精品又又久久亚洲欧美| 亚洲欧美日韩无卡精品| 身体一侧抽搐| 看免费成人av毛片| 一级毛片aaaaaa免费看小| 大又大粗又爽又黄少妇毛片口| 极品少妇高潮喷水抽搐| 中文字幕制服av| 青春草国产在线视频| 亚洲精品日本国产第一区| 亚洲综合精品二区| 一二三四中文在线观看免费高清| 丰满乱子伦码专区| 国产一区亚洲一区在线观看| www.色视频.com| 亚洲av男天堂| 国产精品久久久久久精品电影| 国产精品av视频在线免费观看| 日本午夜av视频| 国产精品福利在线免费观看| 人人妻人人澡人人爽人人夜夜| 内射极品少妇av片p| 久久亚洲国产成人精品v| 国产午夜精品一二区理论片| 亚洲丝袜综合中文字幕| 日日啪夜夜爽| av线在线观看网站| 97在线人人人人妻| 又黄又爽又刺激的免费视频.| 女的被弄到高潮叫床怎么办| 91精品国产九色| 能在线免费看毛片的网站| 久久精品国产亚洲av涩爱| 日韩中字成人| 丰满乱子伦码专区| 乱系列少妇在线播放| 久久人人爽人人爽人人片va| 成人黄色视频免费在线看| 日韩av在线免费看完整版不卡| 22中文网久久字幕| 国产女主播在线喷水免费视频网站| 亚洲av欧美aⅴ国产| 日本-黄色视频高清免费观看| 在线观看一区二区三区激情| 国产精品一区www在线观看| 一二三四中文在线观看免费高清| 国产亚洲最大av| 亚洲av免费在线观看| 国产成人91sexporn| 成人国产麻豆网| 亚洲欧美精品专区久久| 亚洲激情五月婷婷啪啪| 日韩一本色道免费dvd| 国产精品久久久久久久电影| 久久久久久久久久成人| 人妻一区二区av| 91狼人影院| 伦精品一区二区三区| www.av在线官网国产| 欧美激情国产日韩精品一区| av在线老鸭窝| 高清毛片免费看| 免费黄网站久久成人精品| 内地一区二区视频在线| 久久久a久久爽久久v久久| 男女那种视频在线观看| 欧美 日韩 精品 国产| 香蕉精品网在线| 中文字幕制服av| 国产91av在线免费观看| 亚洲av在线观看美女高潮| 一级爰片在线观看| 直男gayav资源| 亚洲av成人精品一区久久| 在线亚洲精品国产二区图片欧美 | 久久99热这里只频精品6学生| 在线观看国产h片| 免费大片18禁| 久久6这里有精品| av在线天堂中文字幕| 欧美国产精品一级二级三级 | 国产日韩欧美亚洲二区| 国产亚洲av片在线观看秒播厂| 可以在线观看毛片的网站| 80岁老熟妇乱子伦牲交| 国产伦在线观看视频一区| 内射极品少妇av片p| 日本熟妇午夜| 网址你懂的国产日韩在线| .国产精品久久| 全区人妻精品视频| 我的老师免费观看完整版| 亚洲av欧美aⅴ国产| 国产精品福利在线免费观看| 又大又黄又爽视频免费| 国产成人免费观看mmmm| xxx大片免费视频| 少妇的逼好多水| 国产高清国产精品国产三级 | 亚洲国产欧美在线一区| 国产男人的电影天堂91| 午夜激情久久久久久久| xxx大片免费视频| 狂野欧美激情性xxxx在线观看| 国产高清国产精品国产三级 | 激情 狠狠 欧美| 免费观看性生交大片5| av国产精品久久久久影院| 一区二区三区免费毛片| 一本一本综合久久| 亚洲欧美中文字幕日韩二区| 欧美xxxx性猛交bbbb| 成年av动漫网址| 国产成人a区在线观看| 91精品一卡2卡3卡4卡| 免费看光身美女| 亚洲成人av在线免费| 交换朋友夫妻互换小说| 久久久午夜欧美精品| 欧美日韩视频精品一区| 国产成人91sexporn| 国产一区亚洲一区在线观看| 日韩av免费高清视频| 丰满乱子伦码专区| 免费大片18禁| 免费观看性生交大片5| 丰满少妇做爰视频| 国产精品嫩草影院av在线观看| 少妇人妻精品综合一区二区| 久久久久久久久久久丰满| 国产 一区 欧美 日韩| 欧美一级a爱片免费观看看| 另类亚洲欧美激情| av在线亚洲专区| 伊人久久精品亚洲午夜| 欧美最新免费一区二区三区| 欧美区成人在线视频| 亚洲真实伦在线观看| 又大又黄又爽视频免费| av在线老鸭窝| 在线亚洲精品国产二区图片欧美 | 国产黄色视频一区二区在线观看| 国产人妻一区二区三区在| 亚洲欧美一区二区三区国产| 男人狂女人下面高潮的视频| 成人鲁丝片一二三区免费| 蜜桃久久精品国产亚洲av| 高清毛片免费看| 天堂网av新在线| 日韩成人伦理影院| 看十八女毛片水多多多| 国产av码专区亚洲av| 亚洲精品aⅴ在线观看| 国产黄频视频在线观看| 日韩精品有码人妻一区| 日韩三级伦理在线观看| 国产男女内射视频| 国产成人a∨麻豆精品| 久久久久网色| 一级av片app| 欧美一级a爱片免费观看看| 欧美高清成人免费视频www| 国产黄片美女视频| 成年女人看的毛片在线观看| 久久精品人妻少妇| 亚洲精品成人久久久久久| 大片电影免费在线观看免费| 少妇裸体淫交视频免费看高清| 高清欧美精品videossex| 日本黄色片子视频| 久久久a久久爽久久v久久| 日韩国内少妇激情av| 亚洲精品日韩在线中文字幕| 国产真实伦视频高清在线观看| 久久久久久久久大av| 午夜激情久久久久久久| 嫩草影院精品99| 国语对白做爰xxxⅹ性视频网站| 国产精品久久久久久精品电影小说 | 日韩一本色道免费dvd| 少妇人妻 视频| 久久ye,这里只有精品| 毛片一级片免费看久久久久| 最近2019中文字幕mv第一页| 亚洲av在线观看美女高潮| 亚洲无线观看免费| 国产成人freesex在线| 精品久久久久久久人妻蜜臀av| av专区在线播放| 熟女av电影| 国产熟女欧美一区二区| 街头女战士在线观看网站| 国产一区二区在线观看日韩| 亚洲内射少妇av| 国产成人a∨麻豆精品| 人妻少妇偷人精品九色| 亚洲国产成人一精品久久久| 久久久久久久亚洲中文字幕| 特级一级黄色大片| 纵有疾风起免费观看全集完整版| 免费播放大片免费观看视频在线观看| 欧美国产精品一级二级三级 | 国产男女超爽视频在线观看| 男女边摸边吃奶| 久久久久久久久大av| 欧美日韩视频高清一区二区三区二| 亚洲综合精品二区| 晚上一个人看的免费电影| 联通29元200g的流量卡| 看免费成人av毛片| 人妻夜夜爽99麻豆av| 少妇人妻久久综合中文| 国精品久久久久久国模美| 熟女人妻精品中文字幕| 99热这里只有精品一区| 熟女av电影| 亚洲欧美精品自产自拍| av在线观看视频网站免费| 亚洲一级一片aⅴ在线观看| av在线播放精品| 最近的中文字幕免费完整| 老师上课跳d突然被开到最大视频| 免费看光身美女| 久久99精品国语久久久| 在线观看三级黄色| 最近手机中文字幕大全| 99热这里只有精品一区| 尾随美女入室| 午夜日本视频在线| 亚州av有码| 嫩草影院入口| 人妻系列 视频| 丝袜喷水一区| 白带黄色成豆腐渣| 国产精品国产三级专区第一集| 自拍欧美九色日韩亚洲蝌蚪91 | 国产午夜精品一二区理论片| 你懂的网址亚洲精品在线观看| 最新中文字幕久久久久| 视频中文字幕在线观看| 国产 精品1| 国产亚洲av片在线观看秒播厂| 久久精品国产亚洲av涩爱| 亚洲精品亚洲一区二区| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 女人十人毛片免费观看3o分钟| 国产精品99久久99久久久不卡 | 久久精品综合一区二区三区| 亚洲精品影视一区二区三区av| 麻豆乱淫一区二区| 欧美潮喷喷水| 在线天堂最新版资源| 日本wwww免费看| 欧美激情在线99| 天堂俺去俺来也www色官网| 成人欧美大片| av在线蜜桃| 亚洲av福利一区| 国产亚洲av嫩草精品影院| 中文字幕人妻熟人妻熟丝袜美| 大香蕉久久网| 亚洲精品成人久久久久久| 一级二级三级毛片免费看| 精品人妻熟女av久视频| 欧美97在线视频| 99视频精品全部免费 在线| 少妇人妻 视频| 亚洲高清免费不卡视频| 婷婷色av中文字幕| 亚洲国产精品999| 一区二区三区精品91| 国产成人精品婷婷| 性插视频无遮挡在线免费观看| 成人二区视频| 国产成人午夜福利电影在线观看| 国产精品一区二区在线观看99| 欧美日韩精品成人综合77777| 亚洲精品久久午夜乱码| 最近2019中文字幕mv第一页| 99久久精品一区二区三区| 午夜福利网站1000一区二区三区| 色哟哟·www| 国产精品嫩草影院av在线观看| 直男gayav资源| 三级男女做爰猛烈吃奶摸视频| 国产精品久久久久久精品电影| 欧美xxxx黑人xx丫x性爽| 婷婷色av中文字幕| 国产精品99久久久久久久久| 亚洲成人精品中文字幕电影| 亚洲av电影在线观看一区二区三区 | 99热这里只有精品一区| 亚洲国产精品999| 国产极品天堂在线| 亚洲精品国产成人久久av| 亚洲精品成人av观看孕妇| 中国美白少妇内射xxxbb| 在线观看av片永久免费下载| 一级a做视频免费观看| 久久久久网色| 成人一区二区视频在线观看| 国产黄频视频在线观看| 欧美一区二区亚洲| 干丝袜人妻中文字幕| 成人高潮视频无遮挡免费网站| 日本色播在线视频| 精品少妇久久久久久888优播| 欧美3d第一页| 人人妻人人爽人人添夜夜欢视频 | 国产男女内射视频| 亚洲最大成人手机在线| 亚洲在线观看片| 1000部很黄的大片| 国产一区二区亚洲精品在线观看| 久久久久精品性色| 国产欧美日韩精品一区二区| 午夜福利高清视频| 国产精品三级大全| 熟女人妻精品中文字幕| 午夜免费男女啪啪视频观看| 精品人妻偷拍中文字幕| 激情 狠狠 欧美| 久久久久久久大尺度免费视频| 久久精品国产亚洲av涩爱| 国产一区二区在线观看日韩| 亚洲婷婷狠狠爱综合网| 久久久a久久爽久久v久久| 日韩欧美 国产精品| 男女国产视频网站| 三级国产精品片| 网址你懂的国产日韩在线| 亚洲国产av新网站| 日韩欧美精品免费久久| 久久久a久久爽久久v久久| 国产爱豆传媒在线观看| 国产一区二区亚洲精品在线观看| 日本黄色片子视频| 国产精品一区二区在线观看99| 国产精品国产三级国产av玫瑰| 成年人午夜在线观看视频| 亚洲欧美成人精品一区二区| 亚洲一区二区三区欧美精品 | 久久久精品免费免费高清| 神马国产精品三级电影在线观看| 最近中文字幕高清免费大全6| 亚洲精品中文字幕在线视频 | 一级毛片 在线播放| 一本一本综合久久| 精品视频人人做人人爽| 国产极品天堂在线| 日日摸夜夜添夜夜爱| 国产色爽女视频免费观看| 22中文网久久字幕| 偷拍熟女少妇极品色| 成人亚洲精品av一区二区| 精品国产一区二区三区久久久樱花 | 亚洲av在线观看美女高潮| 成人毛片a级毛片在线播放| 听说在线观看完整版免费高清| 狠狠精品人妻久久久久久综合| 国产高潮美女av| 天美传媒精品一区二区| av线在线观看网站| 国产午夜福利久久久久久| 狂野欧美激情性xxxx在线观看| 成人亚洲精品av一区二区| 夜夜看夜夜爽夜夜摸| 丰满乱子伦码专区| 少妇高潮的动态图| 日韩伦理黄色片| 国产老妇伦熟女老妇高清| 欧美人与善性xxx| 亚洲怡红院男人天堂| 麻豆成人午夜福利视频| 国产在线男女| 亚洲欧洲国产日韩| 丝袜脚勾引网站| 内射极品少妇av片p| 精品久久久久久电影网| 精品人妻熟女av久视频| 九草在线视频观看| 国产亚洲91精品色在线| 热re99久久精品国产66热6| 最近中文字幕2019免费版| 日韩强制内射视频| 久久精品国产亚洲av天美| 麻豆久久精品国产亚洲av| 综合色丁香网| 丝瓜视频免费看黄片| 国产黄色免费在线视频| 好男人视频免费观看在线| 欧美变态另类bdsm刘玥| 免费观看a级毛片全部| 国产亚洲av嫩草精品影院| 高清视频免费观看一区二区| av免费在线看不卡| 干丝袜人妻中文字幕| 日本黄大片高清| 亚洲av一区综合| 国产大屁股一区二区在线视频| 亚洲真实伦在线观看| 欧美日韩国产mv在线观看视频 | 精品视频人人做人人爽| 日韩伦理黄色片| 简卡轻食公司| 色综合色国产| 久久久精品94久久精品| 日本三级黄在线观看| 日日啪夜夜撸| 国产精品久久久久久av不卡| 男女无遮挡免费网站观看| eeuss影院久久| 乱系列少妇在线播放| 成人免费观看视频高清| 91久久精品国产一区二区三区| 亚洲国产精品国产精品| 国产午夜精品久久久久久一区二区三区| 最近手机中文字幕大全| 亚洲无线观看免费| 色吧在线观看| 少妇 在线观看| 成人亚洲欧美一区二区av| 国产视频首页在线观看| 中文在线观看免费www的网站| 亚洲熟女精品中文字幕| 毛片女人毛片| 精品少妇黑人巨大在线播放| 亚州av有码| 极品教师在线视频| 日韩欧美 国产精品| 在线观看国产h片| 99热这里只有精品一区| 高清午夜精品一区二区三区| 久久影院123| 欧美成人精品欧美一级黄| 亚洲在线观看片| 中文字幕久久专区| 国产欧美日韩精品一区二区| 成人亚洲精品av一区二区| 日韩视频在线欧美| 日韩中字成人| 精品人妻熟女av久视频| 三级男女做爰猛烈吃奶摸视频| 我要看日韩黄色一级片| 亚洲三级黄色毛片| 又大又黄又爽视频免费| 亚洲精品第二区| 亚洲欧美一区二区三区黑人 | 日韩免费高清中文字幕av| 国产成人freesex在线| 国产一区二区亚洲精品在线观看| 成年av动漫网址| 交换朋友夫妻互换小说| 欧美xxxx黑人xx丫x性爽| 人人妻人人爽人人添夜夜欢视频 | 在线 av 中文字幕| 少妇高潮的动态图| 国产视频首页在线观看| 久久久a久久爽久久v久久| 婷婷色综合大香蕉| 欧美xxxx性猛交bbbb| 国产精品.久久久| 国产精品精品国产色婷婷| 精品人妻一区二区三区麻豆| 街头女战士在线观看网站| 黄色视频在线播放观看不卡| 熟女电影av网| 日本爱情动作片www.在线观看| 国产伦精品一区二区三区四那| 亚洲av男天堂| 香蕉精品网在线| 国产极品天堂在线| 老司机影院成人| 成人亚洲精品一区在线观看 | 午夜福利在线在线| 色婷婷久久久亚洲欧美| 少妇高潮的动态图| 午夜亚洲福利在线播放| 少妇的逼水好多| 亚洲国产欧美在线一区| 欧美极品一区二区三区四区| 亚洲激情五月婷婷啪啪| 国产精品熟女久久久久浪| 岛国毛片在线播放| 视频中文字幕在线观看| 中文字幕久久专区| 成人国产av品久久久| 新久久久久国产一级毛片| 亚洲真实伦在线观看| 狂野欧美激情性bbbbbb| 成人毛片60女人毛片免费| 能在线免费看毛片的网站| 黄色日韩在线| av国产精品久久久久影院| 伦精品一区二区三区| 男女国产视频网站| 中文字幕av成人在线电影| 丰满少妇做爰视频| 久久久久国产网址| 欧美性感艳星| av在线亚洲专区| 国产精品爽爽va在线观看网站| 亚洲天堂国产精品一区在线| 一区二区av电影网| 亚洲精品中文字幕在线视频 | 国产av国产精品国产| 欧美人与善性xxx| 午夜亚洲福利在线播放| 另类亚洲欧美激情| 2018国产大陆天天弄谢| 国产免费又黄又爽又色| 亚洲av.av天堂| 国产乱人偷精品视频| 最新中文字幕久久久久| 午夜精品国产一区二区电影 | 色哟哟·www| 可以在线观看毛片的网站| 亚州av有码| 亚洲av成人精品一区久久| 高清日韩中文字幕在线| 观看免费一级毛片| 亚洲一级一片aⅴ在线观看| 亚洲精品一区蜜桃| 免费播放大片免费观看视频在线观看| 香蕉精品网在线| 黄片wwwwww| 成年免费大片在线观看| 一区二区三区精品91| 免费看av在线观看网站| 只有这里有精品99| 性色av一级| 91aial.com中文字幕在线观看| 一级av片app| 成人黄色视频免费在线看| 国产v大片淫在线免费观看| 街头女战士在线观看网站| 男人狂女人下面高潮的视频| 少妇人妻一区二区三区视频| 女人被狂操c到高潮| 蜜臀久久99精品久久宅男| 韩国av在线不卡| av播播在线观看一区| 麻豆精品久久久久久蜜桃| 久久99精品国语久久久| 韩国高清视频一区二区三区| 国产精品国产三级专区第一集| 麻豆乱淫一区二区| 国产精品国产三级专区第一集| 日韩一区二区三区影片| 男人舔奶头视频| 久久人人爽人人片av| 亚洲自拍偷在线| 美女视频免费永久观看网站| 日韩中字成人| 伊人久久国产一区二区| 亚洲美女视频黄频| 亚洲美女搞黄在线观看| 亚洲精品成人久久久久久| 国产爽快片一区二区三区| 精品国产三级普通话版| 日日啪夜夜爽| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 国产伦在线观看视频一区| 一区二区三区四区激情视频| 看免费成人av毛片| 午夜福利视频精品| 高清午夜精品一区二区三区| 久久久色成人| 中文字幕av成人在线电影| 青春草国产在线视频| 自拍偷自拍亚洲精品老妇| 婷婷色av中文字幕| 精华霜和精华液先用哪个| 内地一区二区视频在线| 99久久精品热视频| 在线观看人妻少妇| 国产成人精品婷婷| 国产精品国产av在线观看| 欧美一区二区亚洲| 久久久久国产网址| 一区二区三区免费毛片| 精品熟女少妇av免费看| 国产人妻一区二区三区在| 亚洲av中文av极速乱| 成人二区视频| 免费播放大片免费观看视频在线观看| 伊人久久国产一区二区| 国产成年人精品一区二区| 波多野结衣巨乳人妻| 一级毛片久久久久久久久女| 日本熟妇午夜| 精品久久久久久久末码| 国内精品美女久久久久久| 国产中年淑女户外野战色| 亚洲欧美日韩无卡精品| 日本黄色片子视频| 婷婷色综合大香蕉| 极品少妇高潮喷水抽搐| 国产欧美另类精品又又久久亚洲欧美| 秋霞伦理黄片| 视频中文字幕在线观看| av天堂中文字幕网| 热99国产精品久久久久久7| 亚洲av国产av综合av卡| 亚洲精品中文字幕在线视频 | 午夜爱爱视频在线播放|