精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

站在架構師的角度上如何設計一個高度可擴展的分布式IM即時通訊系統

開發 架構
在進行技術選型與總體架構設計之前,需要明確一個事項,就是系統無論采用哪種方案,采用哪種架構設計都需要明確這種方案的業務目標、技術目標和架構目標,并在研發過程中不斷評估系統的總體性能表現,發現系統瓶頸并不斷進行優化。

一、前言

為了能夠讓小伙伴們更好的理解分布式IM即時通訊系統的設計,我們站在架構師的角度,在充分了解系統需求,業務流程和技術流程后,從全局視角為系統設定方案目標,對技術方案進行選型,對系統進行總體架構設計和分層架構設計,并梳理清楚發送消息的交互鏈路、單聊和群聊的交互鏈路。以方便各位小伙伴將分布式IM即時通訊系統寫到自己的簡歷中,增強自己的競爭力。

二、方案目標

在進行技術選型與總體架構設計之前,需要明確一個事項,就是系統無論采用哪種方案,采用哪種架構設計都需要明確這種方案的業務目標、技術目標和架構目標,并在研發過程中不斷評估系統的總體性能表現,發現系統瓶頸并不斷進行優化。

總體上,我們搭建和開發的分布式IM即時通訊系統,需要滿足如下方案目標。

  • 業務目標:滿足需求設計篇章中的各類需求場景。
  • 技術目標:支持無限擴容,百萬用戶同時在線聊天。
  • 架構目標:高并發、高性能、高可用、可監控、可預警、可伸縮,支持無限擴展。

三、技術選型

在技術選型上,除了采用SpringBoot等基礎框架外,也會采用容器化方案。同時,考慮到為了盡量降低技術門檻,在整個分布式IM即時通訊系統的技術選型中,主要采用市面上比較流行的技術框架和方案,具體選型如下所示。

  • 開發框架:SpringBoot、SpringCloud、SpringCloud Alibaba、Dubbo。
  • 緩存:Redis分布式緩存+Guava本地緩存。
  • 數據庫:MySQL、TiDB、HBase。
  • 流量網關:OpenResty+Lua。
  • 業務網關:SpringCloud Gateway + Sentinel。
  • 持久層框架:MyBatis、Mybatis-Plus。
  • 服務配置、服務注冊與發現:Nacos。
  • 消息中間件:RocketMQ。
  • 網絡通信:Netty。
  • 文件存儲:Minio。
  • 日志可視化治理:ELK。
  • 容器化管理:Swarm、Portainer。
  • 監控:Prometheus、Grafana。
  • 前端:Vue。
  • 單元測試:Junit。
  • 基準測試:JMH。
  • 壓力測試:JMeter。

四、系統初步架構設計

對于IM即時通訊系統來說,涵蓋了即時通訊后端服務、大后端平臺、SDK接入服務、OpenAI接入服務、大前端UI,我相信不少小伙伴多多少少能夠畫出IM即時通訊系統的架構圖,大致如圖1-1所示。

圖片圖片

其實,這種這種架構設計也比較常見,在這種架構設計中,Kong/Openresty/Nginx只做負載均衡和反向代理,研發人員更多的是關注業務層和基礎層的開發,流量比較小時,這種架構設計一般不會有什么問題。但是一旦流量比較大,用戶調用后端平臺的接口發送消息時,即時通訊SDK同步調用即時通訊服務的接口就會出現性能問題。

因為每個終端同時只能與一個IM即時通訊服務實例建立連接,如果大量的用戶終端恰好都與一個IM即時通訊服務建立連接,那即時通訊SDK頻繁同步調用同一個IM即時通訊服務的接口就會出現性能瓶頸。此時,出現性能瓶頸時,不僅僅會影響到IM即時通訊服務,也會對后端平臺接收請求的業務造成一定的影響。

五、系統架構設計優化

既然圖1-1所示的架構設計存在性能瓶頸,那我們如何進行優化呢?為此我們在如1-1的基礎上進行了優化,優化后的架構如圖1-2所示。

圖片圖片

對比圖1-1和圖1-2可以看出,在屏蔽掉技術實現細節的前提下,我們將對業務的校驗和流量管控進行前置化,放大Kong/OpenResty/Nginx的職責,使得這些軟件不僅具備反向代理和負載均衡的功能,還能實現限流、黑白名單、流量管控、業務校驗等功能。

也就是說,在這種架構模式下,我們充分發揮了整個分布式IM即時通訊系統的入口職責,充分利用Kong/OpenResty/Nginx的高并發、高吞吐量的能力,盡量將大部分無效請求擋在整個系統之外。例如,用戶在沒登錄系統的前提下,就嘗試調用發送消息、添加好友、添加群組等等接口。這樣會大大減輕后臺平臺的業務壓力。

除了在Kong/OpenResty/Nginx中實現限流、黑白名單、流量管控、業務校驗等功能外,我們還引入了業務網關集群,實現限流、降級、熔斷、流控、校驗、鑒權等功能,進一步保證下游系統的穩定性和安全。

為了解決大量用戶終端恰好連接到同一個IM即時通訊服務實例,IM即時通訊SDK頻繁調用同一個IM即時通訊服務實例的接口造成的性能問題。我們在IM即時通訊服務SDK與IM即時通訊服務之間引入了RocketMQ集群。

IM即時通訊服務集群中的每一個IM即時通訊服務實例在集群中都有一個唯一的ID,并且每個IM即時通訊服務實例在啟動后,只會監聽RocketMQ中與自身ID相關的Topic。這樣每個IM即時通訊服務只會收到與自身ID相關的Topic中的消息,不會接收所有的消息。

當用戶登錄系統后,就會與IM即時通訊服務建立長連接,并且會以用戶ID和終端為Key,以IM即時通訊服務的ID為value,將其存儲到分布式緩存中。同時,會以用戶ID和終端為Key,以用戶終端與IM即時通訊服務建立的長連接為value,將其存儲到IM即時通訊服務本地內存中。

當用戶調用后端平臺的接口發消息時,會帶上目標用戶的ID,并且在IM即時通訊SDK中會指定用戶登錄的終端設備,最終會通過IM即時通訊SDK向RocketMQ發送消息。

此時IM即時通訊SDK會根據目標用戶ID和終端從分布式緩存中獲取目標用戶連接的IM即時通訊服務的ID,并向此ID相關的Topic發送消息。此時與目標用戶建立長連接的IM即時通訊服務就會接收到RocketMQ中的消息,隨后根據用戶ID和終端從本地緩存中獲取到與用戶終端建立的長連接,并基于此長連接向用戶推送消息。

另外,在實際實現中,為了避免大量用戶同時只連接IM即時通訊服務集群中的某一個服務實例,會對用戶連接的IP、瀏覽器指紋、手機設備等做Hash和取模運算,使其盡量均勻分布到集群中的每一個服務實例上。

那么問題來了:這種架構設計還有進一步優化的空間嗎?

六、容器化架構設計

為進一步增強分布式IM即時通訊系統的性能、可用性和彈性伸縮能力,我們可以對分布式IM即時通訊系統進行容器化架構設計,如圖1-3所示。

圖片圖片

可以看到,我們對分布式IM即時通訊系統的架構設計進行了進一步優化,采用了容器化架構設計。在原有架構的基礎上,我們進行了如下改進和優化。

(1)基礎支撐服務

基礎支撐服務會由各種基礎中間件、數據存儲服務、以及監控服務實現,包含:MySQL數據庫、TiDB數據庫、HBase、Redis緩存、RocketMQ消息隊列、Prometheus監控和Portainer容器管理等基礎中間件實現,基礎支撐服務會對整個分布式IM即時通訊系統提供最基礎的數據、傳輸、監控和容器管理等服務。

(2)容器化

在容器化層面,會通過Docker、Swarm和Portainer實現,其中,會基于Swarm和Portainer對容器化進行管理。

(3)其他基礎性功能實現

除了上述分層架構外,對于建設分布式IM即時通訊系統來說,還要考慮異常監控、服務注冊與發現、可視化、服務降級與兜底數據、服務限流、服務容災、容量規劃與擴縮容和全鏈路壓測等。

七、DDD分層業務架構設計

在分布式IM即時通訊系統中,不管是大后端平臺,還是IM即時通訊服務,我們都會對業務層的代碼采用分層業務架構,這里,可以借鑒DDD的分層架構思想,將代碼總體上分成展示層、應用層、領域層和基礎設施層四個層次,但是,考慮到分布式IM即時通訊系統的特殊性,又不會嚴格按照DDD的原則來設計代碼分層,具體按照如圖1-4所示。

圖片圖片

可以看到,分布式IM即時通訊系統會借鑒DDD的設計思想,但是不會完全按照DDD的方式進行設計。

(1)展示層

展示層,也叫做用戶UI層,是DDD設計的最上層,對外提供API接口,接收客戶端請求,解析參數,返回結果數據,并對異常進行處理。

(2)應用層

應用層,也叫做Application層,應用層主要處理容易變化的業務場景,可對相關的事件、調度和其他聚合操作進行相關的處理。

(3)領域層

領域層,也叫做Domain層,領域層可以說是DDD設計的精髓所在,它是將業務系統中相對不變的部分抽象出來封裝成領域模型。

在分布式IM即時通訊系統的設計中,領域層基本不會依賴其他層,也不會依賴基礎設施層,這里是與DDD設計存在區別的地方。

(4)基礎設施層

基礎設施層,也叫做Infrastructure層,基礎設施層會對其他各層提供通用的基礎能力,在分布式IM即時通訊系統中,就包括了緩存、通用工具類、消息、系統的持久化機制等。

八、發送消息交互鏈路

在分布式IM即時通訊系統中,我們忽略掉其他一些細節信息,重點關注下發送消息的交互鏈路邏輯。不管是單聊還是群聊,最終都需要通過IM即時通訊服務將消息推送給用戶的終端。此時發送消息的流程如圖1-5所示。

圖片圖片

可以看到,用戶在分布式IM即時通訊系統發送消息時,不管是單聊還是群聊,最終的消息都會推送到用戶登錄的終端設備上。假設此時用戶A給用戶B發送消息,或者用戶A和用戶B在同一個群組,用戶A向群組發送消息,用戶B接收消息的主要流程如下。

(1)用戶A調用后端平臺的接口向用戶B發送消息,并且發送的消息中會帶有用戶B的ID以及終端信息。

(2)后端平臺將消息緩存起來,并且會將消息異步寫入消息庫。

(3)后端平臺從Redis中獲取用戶B連接的IM即時通訊服務的ID。

(4)后端平臺獲取到用戶B連接的IM即時通訊服務的ID后,會向RocketMQ中用戶B連接的IM即時通訊服務ID對應的Topic發送消息。

(5)IM即時通訊服務會監聽自身服務ID對應的RocketMQ中Topic的消息,此時,用戶B連接的IM即時通訊服務會接收到消息。

(6)IM即時通訊服務接收到消息后,會根據用戶B的ID以及終端信息從緩存中獲取用戶B與IM即時通訊服務建立的連接,并且通過這個連接向用戶B推送消息。

要實現如上發送消息的流程,前提是要滿足如下條件。

(1)后端平臺滿足分布式條件,可隨時橫向擴展。

(2)IM即時通訊服務滿足分布式條件,可隨時橫向擴展。

(3)每個啟動的IM即時通訊服務實例在集群中都有一個唯一的ID。

(4)每個IM即時通訊服務,都只監聽自身ID對應的RocketMQ中Topic的消息。

(4)用戶登錄分布式IM即時通訊系統后,會與IM即時通訊服務建立長連接,并且會根據用戶ID和所在的終端緩存長連接,同時會根據用戶ID和所在的終端將連接的IM即時通訊服務的ID緩存到Redis。

(6)用戶發送消息時,會根據目標用戶的ID和終端從Redis中獲取IM即時通訊服務的ID,進而向當前IM即時通訊服務的ID對應的RocketMQ的Topic發送消息。

(7)對應的IM即時通訊服務監聽并接收到RocketMQ消息后,會根據目標用戶的ID和終端從緩存中獲取到用戶的連接信息,向目標用戶推送消息。

九、單聊交互鏈路

單聊就是在分布式IM即時通訊系統中,一個用戶直接與另外一個用戶聊天,也就是一對一的聊天。在這種場景下,很有可能單聊的兩個用戶中,出現用戶不在線的情況。

例如,用戶A給用戶B發送消息時,用戶B可能不在線。此時,我們就需要將用戶A向用戶B發送的消息存儲起來。其實,在我們實現的分布式IM即時通訊系統中,無論把用戶B是否在線,都會存儲消息記錄。當用戶B登錄系統后,將消息同步給用戶B,如圖1-6所示。

圖片圖片

點擊展開看大圖

可以看到,用戶A向用戶B發送消息時,如果用戶B在線,就可以按照發送消息的交互鏈路向用戶B發送消息了。如果用戶B不在線,此時就無法向用戶B正常推送消息。當用戶B登錄分布式IM即時通訊系統后,就會調用后端平臺的接口拉取所有未讀消息,并通過用戶B在線流程向用戶B推送消息。

十、群聊交互鏈路

群聊就是在分布式IM即時通訊系統中,多個用戶在同一個群組中進行聊天,此時在發送消息時,我們可以通過群組ID找出群內所有在線的用戶,將消息即時發送給在線的用戶。那些未在線的用戶就按照單聊未在線的用戶進行處理,如圖1-7所示。

圖片圖片

可以看到,群聊的交互鏈路流程如下所示。

(1)用戶調用后端平臺的接口向群組發送消息。

(2)后端平臺將消息緩存并異步寫入消息庫。

(3)由于是向群組發送消息,群里有多個用戶,此時就會從Redis中獲取所有用戶連接的IM即時通訊服務ID列表。

(4)對用戶按照服務ID分組,將相同服務ID下的用戶分在同一個邏輯分組里,方便后續推送消息,并且會記錄未在線的用戶列表。

(5)循環向每個服務ID對應的RocketMQ中的Topic發送消息。

(6)廣播處理未在線用戶的未讀消息ID。

(7)IM即時通訊服務會監聽自身服務ID對應的Topic,會隨時接收推送到自身服務的消息。

(8)當IM即時通訊服務接收到消息后,此時用戶掉線,或者用戶不在線,向用戶推送消息就會失敗,或者未查詢到用戶與IM即時通訊服務建立的連接,就不會向用戶推送消息。

(9)當用戶登錄分布式IM即時通訊系統后,會從后端平臺拉取歷史(離線)消息,并通過用戶在線的流程,向用戶推送消息。

責任編輯:武曉燕 來源: 冰河技術
相關推薦

2019-03-21 09:45:20

IM即時通訊CIM

2021-08-14 09:23:03

即時通訊IM互聯網

2025-04-23 09:21:10

2023-12-08 08:01:29

分布式IM即時通訊系統架構設計

2021-10-20 05:55:22

即時通訊IM網絡

2020-09-30 18:00:48

JavaSpring BootIM

2024-01-22 08:01:17

IM即時通訊系統

2025-01-06 08:00:54

2011-06-30 10:50:24

即時通訊

2023-12-21 09:10:13

2024-11-20 13:18:21

2011-10-20 22:25:49

網易即時通

2021-05-13 20:20:40

Java架構代碼

2013-03-22 15:55:22

Web架構架構

2012-03-23 21:18:34

imo即時通訊

2016-09-30 10:13:07

分布式爬蟲系統

2016-09-28 09:48:40

網易云信IM云服務

2015-07-30 15:54:20

容聯云通訊IM

2018-09-06 22:49:31

分布式架構服務器

2025-01-22 08:00:00

架構秒殺系統Java
點贊
收藏

51CTO技術棧公眾號

精品国偷自产在线视频| 高跟丝袜一区二区三区| 亚洲va久久久噜噜噜| 青青操视频在线播放| 国产精品毛片av| 日本久久电影网| 国产卡一卡二在线| 婷婷丁香一区二区三区| 久久er精品视频| 韩国19禁主播vip福利视频| 亚欧洲乱码视频| 国产精品免费精品自在线观看| 亚洲制服丝袜在线| 亚洲精品成人久久久998| 好吊色一区二区三区| 秋霞国产午夜精品免费视频| 久久久久久久国产| 久久国产波多野结衣| 亚洲精品一二三**| 欧美日韩精品一区二区三区四区 | 国产高清在线a视频大全 | avtt天堂在线| 精品国产91乱码一区二区三区四区| 日韩一区二区三区电影在线观看 | 国产精品一二三区| 国产精品女主播视频| 青青草av在线播放| 欧美另类亚洲| 久久精品国产免费观看| 欧洲女同同性吃奶| 精品无人区一区二区| 日韩一区二区三区视频| 中文字幕22页| 韩日一区二区| 日本久久一区二区| 99久久久无码国产精品6| 高清电影在线观看免费| 亚洲欧美日韩一区二区 | 黄色在线免费看| 国产精品欧美一区喷水| 日韩av高清在线播放| 水莓100国产免费av在线播放| 国产东北露脸精品视频| 成人激情视频在线播放| www.av88| 日本最新不卡在线| 国产精品久久久久久久久久99| 亚洲影院在线播放| 久久国产一二区| 欧美中文字幕精品| 亚洲国产成人无码av在线| 亚洲经典在线看| 91精品国产99久久久久久| 久草中文在线视频| 日韩视频一区| 91精品国产网站| 中文字幕日韩一级| 香蕉久久夜色精品| 日本一区二区三区在线播放| 天堂中文字幕在线观看| 久久国产日本精品| 国产精品高潮视频| 亚洲天堂中文字幕在线| 麻豆久久一区二区| 91在线免费看网站| 性中国古装videossex| 国产精品一级片在线观看| 亚洲精品女av网站| 亚洲国产精品suv| 91在线播放网址| 欧美日韩日本网| av播放在线观看| 国产精品高潮久久久久无| youjizz.com亚洲| 久久综合网导航| 夜夜嗨av一区二区三区网页| 青草青青在线视频| 日本成人伦理电影| 91精品国产综合久久福利软件| 性xxxxxxxxx| 制服丝袜日韩| 久久在线观看视频| 国产精品黄色大片| 久久精品国产99久久6| 国产精品久久久久av福利动漫| 午夜18视频在线观看| 中文字幕精品一区| 成年女人18级毛片毛片免费| 在线观看福利电影| 欧美精品久久久久久久多人混战| 九九九久久久久久久| 亚洲精品中文字幕99999| 色偷偷av亚洲男人的天堂| 黄色一级视频免费观看| 国产欧美不卡| 成人精品一区二区三区电影免费| 理论片中文字幕| 亚洲国产精品成人综合色在线婷婷| 水蜜桃在线免费观看| 中文字幕在线视频网站| 91精品国产综合久久久蜜臀图片 | 香蕉久久精品| 久久精品成人一区二区三区| 制服.丝袜.亚洲.中文.综合懂色| 精久久久久久久久久久| 国产丝袜不卡| 国产精品剧情| 一本大道久久a久久综合婷婷| √天堂资源在线| 精品理论电影| 午夜精品久久久久久99热软件| 中文在线免费看视频| 成人福利视频网站| 日韩人妻精品一区二区三区| 国产日韩电影| 亚洲成人久久久| av在线免费播放网址| 免费久久99精品国产自在现线| 91久久精品国产91久久性色| 国模吧精品人体gogo| 一区二区高清在线| 日本中文字幕观看| 国产成人三级| 91精品国产91久久久久福利| www.av黄色| 亚洲欧美综合网| 国产精品69页| 亚洲精品中文字幕99999| 久久99青青精品免费观看| 在线免费看毛片| 久久久国产精品麻豆 | 日本vs亚洲vs韩国一区三区| 久草精品电影| 爱啪啪综合导航| 欧美mv和日韩mv的网站| 国产稀缺精品盗摄盗拍| 久久精品二区亚洲w码| 亚洲精品久久久久久一区二区| 偷拍自拍在线看| 精品在线小视频| 亚洲综合一二三| 成人激情校园春色| 久久久久久免费看| 精品国产一区二区三区成人影院| 欧美高清在线观看| 国产91麻豆视频| 亚洲国产美国国产综合一区二区| 无码人妻一区二区三区在线| 伊人激情综合| 狠狠色综合色区| 亚洲精品一区| 亚洲午夜小视频| 国产九色91回来了| 国产精品久久久久国产精品日日| 四季av一区二区三区| 99久久精品网| 999热视频在线观看| 久久久123| 日韩av在线资源| 亚洲国产成人精品女人久久| 国产午夜亚洲精品理论片色戒| www.精品在线| 亚洲欧洲中文字幕| 国产精品一区二区三区观看 | 国产日韩欧美中文在线播放| 精品176二区| 欧美成人r级一区二区三区| 国产一级视频在线播放| 99久久免费国产| 91蝌蚪视频在线观看| 天天久久综合| 国产一区二区不卡视频| 欧美aaa视频| 久久久国产在线视频| 亚洲精品一区二区三区蜜桃| 舔着乳尖日韩一区| 亚洲天堂岛国片| 国产乱淫av一区二区三区| 成人精品视频在线播放| 伊人春色之综合网| 91欧美精品午夜性色福利在线 | 欧美在线免费| 久久国产手机看片| 曰本一区二区| 911国产网站尤物在线观看| 啊v在线视频| 日韩精品中午字幕| 国产精品suv一区| 1000部国产精品成人观看| 欧美性生交xxxxx| 日韩二区三区四区| 今天免费高清在线观看国语| 青青草久久爱| 91久久国产精品91久久性色| 免费h在线看| 精品国产一区二区三区四区在线观看| 国模私拍视频在线| 91超碰这里只有精品国产| 男人的天堂一区| 亚洲人成网站精品片在线观看| 中文字幕狠狠干| 国产精品99精品久久免费| 50路60路老熟妇啪啪| 欧美国产91| 神马影院午夜我不卡| 久久香蕉网站| 91黄色精品| 美女久久久久久| 热久久视久久精品18亚洲精品| av免费在线观看网址| 一区二区亚洲欧洲国产日韩| 俄罗斯嫩小性bbwbbw| 制服丝袜亚洲播放| 欧美成人一区二区视频| 亚洲v中文字幕| 极品盗摄国产盗摄合集| 国产精品亲子伦对白| 91国模少妇一区二区三区| 成人午夜在线免费| 在线观看中文av| 久久精品国产精品亚洲精品| 国产裸体舞一区二区三区| 在线视频观看日韩| 毛片av在线播放| 国产精品99视频| 亚洲人一区二区| 国内亚洲精品| 欧美日韩在线观看一区二区三区 | 国产精品一区二区在线观看不卡| 日韩爱爱小视频| 日韩av一级片| 美女喷白浆视频| 日韩精品一区第一页| 国产欧美在线一区| 六月天综合网| 99精品免费在线观看| 亚洲视频播放| 精品中文字幕av| 欧美亚洲三级| 爱福利视频一区二区| 久久国产成人| 日本www.色| 日本欧美一区二区在线观看| 日日碰狠狠躁久久躁婷婷| 亚洲欧美日韩国产| aaa毛片在线观看| 久热精品在线| 亚欧美在线观看| 看国产成人h片视频| 日韩av.com| 国产成人精品免费一区二区| 激情小说欧美色图| eeuss国产一区二区三区| 久久一区二区电影| 国产日韩欧美精品一区| av资源在线免费观看| 国产精品久久久久久久久免费丝袜| 黄色片网站在线播放| 中文字幕一区二区三| 91视频青青草| 亚洲一区电影777| 99热国产在线观看| 在线欧美小视频| 制服丝袜在线一区| 91精品一区二区三区在线观看| 精品国产无码一区二区| 亚洲а∨天堂久久精品9966| 五月婷婷丁香六月| 在线观看日韩www视频免费| 黄色免费网站在线| 97av在线视频免费播放| 另类激情视频| 91情侣偷在线精品国产| 国产精品玖玖玖在线资源| 欧美尤物一区| 影音先锋日韩精品| 日本国产在线播放| 久久精品国产精品亚洲精品| 国产成人av片| 国产亚洲午夜高清国产拍精品| 欧美精品久久久久久久久46p| 亚洲一区二区在线播放相泽| 免费黄色片视频| 日韩久久免费av| av在线免费一区| 欧美国产日韩一区二区| 免费成人直播| 91免费观看| 日本一二区不卡| 国产精品久久..4399| 理论电影国产精品| 7788色淫网站小说| 日韩理论在线观看| 黄色一级片免费在线观看| 91精品国产一区二区三区香蕉| 日漫免费在线观看网站| 欧美成人激情视频| 精品日韩视频| 国产综合 伊人色| 天天操综合网| 99视频在线视频| av中文一区二区三区| 日本 欧美 国产| 色婷婷av一区二区| 亚洲免费视频网| 麻豆国产精品va在线观看不卡| 在线免费av资源| 成人h在线播放| 国产精品毛片久久| 人妻无码视频一区二区三区| 成人黄色av电影| 欧美日韩免费做爰视频| 欧美色精品在线视频| 亚洲 国产 欧美 日韩| 欧美成人精品h版在线观看| 成人精品三级| 欧美成人免费在线| 亚洲黄色三级| 国产乱淫av麻豆国产免费| 亚洲欧美综合在线精品| 中文资源在线播放| 亚洲香蕉伊综合在人在线视看| 嗯啊主人调教在线播放视频| 亚洲专区在线视频| 天天做天天爱天天综合网2021| 丁香婷婷激情网| 久久久久青草大香线综合精品| 日韩欧美激情视频| 亚洲成人精品视频| brazzers在线观看| 国产精品一区二区三区免费 | 亚洲国产精品毛片av不卡在线| 成人高清在线视频| 日本三级免费看| 精品电影一区二区三区| 欧美黑人猛交| 丁香婷婷久久久综合精品国产| 一区二区三区中文| 波多野结衣免费观看| 亚洲免费av观看| 精品人妻一区二区三区换脸明星| 久久精视频免费在线久久完整在线看 | 亚洲精品乱码久久久久久黑人| 国产一区二区小视频| 久久综合久久美利坚合众国| 精品一区二区三区中文字幕在线| 影音先锋欧美在线| 国产一区二区三区四区五区美女| 天天操天天操天天操天天操天天操| 91精品国产色综合久久ai换脸 | 久久精品国产亚洲夜色av网站 | 久久精品久久久久| 精品一区二区三区中文字幕视频| 天天做天天躁天天躁| www.久久精品| 4438国产精品一区二区| 亚洲欧美中文字幕在线一区| 巨胸喷奶水www久久久| 欧美 日韩 国产 在线观看| 国产精品一区二区在线观看不卡 | 依依综合在线| 视频一区二区在线观看| 麻豆精品一区二区三区| 国产精品成人69xxx免费视频| 日韩欧美久久久| 丝袜老师在线| 宅男在线精品国产免费观看| 国产福利电影一区二区三区| 日韩精品一区二区在线播放 | 波多野结衣亚洲一二三| 视频在线精品一区| 国产成人免费高清| 国产一级精品视频| 伊人久久久久久久久久久| 香蕉久久一区| 国产 日韩 亚洲 欧美| 国产日本欧洲亚洲| 99久久精品无免国产免费| 久久久久中文字幕| 日本黄色精品| 国产精品igao网网址不卡| 午夜精品福利一区二区三区av| 韩日视频在线| 国产伦精品一区二区三区免| 久久婷婷麻豆| 久草网视频在线观看| 亚洲偷熟乱区亚洲香蕉av| 日韩免费一级| 国内自拍视频网| 午夜日韩在线电影| 成人高潮成人免费观看| 99se婷婷在线视频观看| 天堂va蜜桃一区二区三区漫画版| 欧美大片xxxx| 一本色道久久88亚洲综合88| 久久精品九色| 日韩精品一区中文字幕| 亚洲一卡二卡三卡四卡五卡| 日本最黄一级片免费在线| 久久久久久艹|