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

B站直播的極速排障建設-全鏈路Trace追蹤

開發 前端
不知何時起,“用關鍵鏈路查一下”已經成了身邊同事常說的口頭禪,整套排障體系的價值,也得到了驗證。未來還有許多要做的事,我們將致力于拓展業務覆蓋面、建立業務健康度監控體系、提升上下文信息的有效性等。

一、概述

直播業務具有實時性強,復雜度高,排查鏈路長,影響面大等特征,線上問題如果不能立刻排查處理,分分秒秒都在影響用戶的觀看體驗、主播的收入。

但各端的問題可能都只是表象,例如,一個看似簡單的畫面卡頓問題,可能涉及到編碼器配置、網絡帶寬分配、服務器負載等多個方面,各個團隊經常在等待合作方的反饋,一整套流程下來,一個線上問題的定位可能要消耗掉數小時的人力。

我們迫切的需要一套高效的跨端實時排障系統!

為此我們采取了以下措施:

  1. 關鍵業務監控:聯合各協作方,對關鍵業務的接口、廣播和核心處理邏輯實施了實時埋點監控,并附加了相關場景信息,確保了問題定位的準確性和全面性。
  2. 統一追蹤系統:為了實現單個業務鏈路所有埋點的跨端聯絡,我們設計了統一的trace_id字段,并在數據層進行串聯,通過看板直觀展示,極大地提升了問題追蹤和定位的效率。

這些措施帶來了顯著的成效:

  • 跨部門協作效率提升:通過實時數據共享和統一追蹤系統,直播移動端、PC端、Web端、服務端以及流媒體等各個團隊協作效率大幅提升。在開播、視頻連線等9個核心業務的故障排查中,排障率達到了91%,異常定位的平均時間從2小時縮短至僅需5分鐘。兄弟部門也采納了我們的方案,有效減輕了工作壓力。
  • 系統穩定性增強:這些措施還幫助我們優化了開播異常斷流、連麥發布訂閱失敗等多項關鍵業務問題,確保了系統的高效運行,減少了因技術問題導致的用戶流失。
  • 用戶體驗改善:我們的快速響應和問題解決能力極大地提升了主播和用戶的直播體驗。用戶和主播的正面反饋絡繹不絕,間接提高了主播收入穩定性,增強了平臺的吸引力。

二、技術方案詳解

1. 方案設計

圖片圖片

如上圖所示,整體全鏈路排障建設可以分為數據采集、數據處理&存儲、可視化工具建設3大塊。

在開始介紹實現方案之前,需要簡單介紹一下OpenTracing,它是業內實現分布式鏈路追蹤系統通常會采用的方案,我們在后續的埋點和上報組件設計也對它進行了一些參考。OpenTracing定義了追蹤數據所需要的操作和數據結構,幫助開發人員實現分布式追蹤的能力。OpenTracing里面有兩個比較核心的概念,簡單說明一下:

Trace:Trace代表一條追蹤路徑,它由多個Span組成,存在一個唯一ID

Span:Span代表追蹤路徑中的一個時間跨度,包括操作名稱、開始時間、結束時間等信息,由SpanID作為標識。由多個 Span 可以形成一條追蹤路徑。Span還定義了父子、跟隨兩種關系。在Span上下文中,記錄和維護了Trace的ID和當前Span的ID。

下圖是OpenTracing的模型圖,它描述了由多個Span組成一條追蹤路徑:

圖片圖片

OpenTracing在服務端得到了廣泛的使用,但是面臨客戶端業務現狀和問題,我們調整了最終方案的實現方式

  • 直播場景用戶行為一般都是即時操作,時間片段的設計并太不合適
  • OpenTracing是跨編程語言的標準,一些API的設計比較抽象,在業務中使用不友好

考慮到這些,我們借鑒了OpenTracing中核心的概念:trace_id和事件上下文,并簡化了OpenTracing中Span的概念,嘗試復用端上已有的埋點,擴展字段來實現全鏈路Trace的能力。下面我們開始介紹。

首先要確認的是必須上報的埋點字段。為了減輕理解和上報的成本,在設計上我們希望盡可能簡單。實際上,這些字段的設計也是為了解決幾個關鍵的問題:

1.1 如何將各端的埋點關聯起來?

trace_id:一個復雜的事件鏈路往往并不是單端閉環的。拿邀請上麥舉例,它涉及到主播客戶端A -> 業務服務 -> 廣播服務 -> 觀眾客戶端B -> RTC。我們希望將這一次事件鏈路中相關的日志都能聚合起來呈現,而不是各端查各端的。為了解決這個問題,我們生成一個全鏈路都會透傳的唯一ID,在每個端的上報中都會攜帶這個ID,然后通過這個ID,把這次事件關聯的上報檢索出來,一起展示。

1.2 如何解決日志中缺失的上下文?

extends:我們在上報中增加了擴展數據,用于攜帶上下文以及自己關心的信息,同時在可視化工具中展示出來。

1.3 如何快速的找到異常的環節?

level:我們給每一個上報定義了3種狀態,正常、警告和異常。在可視化工具中,針對警告和異常狀態的上報,用黃色和紅色展示出來,這樣可以第一時間定位到出現問題的地方,找到負責的端和同學。

1.4 如何衡量這次的事件是否正常?

type:我們給每一個上報節點定義了3種類型,起始、過程和結束。一次事件執行中,會有一個起始節點,一個結束節點和多個過程節點。如果這次事件執行鏈路里面,有結束節點,并且所有節點的狀態都是正常的,那我們就認為這次事件執行是正常,否則就是異常的

到這里,最主要的埋點字段就介紹完了,接下來就只需要各端在關鍵路徑上添加上報即可。

在上線驗證階段,移動端先通過透傳trace_id的方式快速上線并打通了整條鏈路,驗證了可行性。但是這種方式弊端很大,代碼入侵嚴重而且健壯性差,對于業務同學來說這是非常勸退的,所以我們針對上報組件做了一些設計,目的是降低接入和維護成本,減少代碼入侵。

2. 上報組件設計

上報組件隨項目發展共迭代了三個版本,每一版都比上一版更加易用和完善。下面介紹我們的迭代過程,共分為“快速驗證可行性”、“大幅提升易用性” 和 “繼續增強魯棒性”。

2.1 快速驗證可行性

在項目初期,為了快速驗證鏈路可行性,上報組件未做過多設計,僅實現了最基礎的功能:

將上述的基礎字段(trace_id, level, type等)、業務方自定義參數以及公共參數(房間信息、網絡、推流、設備、外設情況、線程id等)進行上報。

在最初版中,我們將所有的非公共參數都寫到了函數入參中,并在業務層透傳了trace_id。如圖所示:

圖片圖片

2.2 大幅提升易用性

2.2.1 快速方案遇到的問題

基礎功能上線后,驗證了我們通過trace_id串聯起多個埋點的想法是可行的。隨著越來越多的業務接入,顯而易見的兩個問題便浮上水面:

  1. 上報代碼過于繁雜:由于需要8個參數,需要多行代碼才能完成一次上報,在業務代碼中插入這一塊又一塊的和業務無關的代碼,會嚴重降低可讀性和可維護性;
  2. 業務入侵性大:在低耦合的代碼架構下,一個功能點的實現經常橫跨1~3個模塊、縱深5~10層方法調用,想要做到精確的全鏈路追蹤,勢必要將trace_id透傳,這樣就需要在每個方法的入參都增加一個trace_id的參數,不僅寫起來麻煩,還對業務的入侵性巨大;

這里舉兩個實際的代碼例子:

圖片圖片

圖片圖片

接下來我們就這兩個問題對埋點組件進行優化:

2.2.2 解決埋點代碼冗長

需要在業務層和上報層中間插入一個埋點聚合層,負責組裝參數,并針對每一個節點向外提供一個簡明的方法,在業務層就只需要一行簡短的代碼就可以完成上報了。

在埋點聚合層中,我們也做了一些簡單的設計,旨在減少業務方的代碼量:

  1. 盡力減少上報方法傳參的數量,將需要的參數都封裝進一個事件模型類中,并針對起始節點提供便利構造方法。且將入參node_type、trace_id、level、extends字段加上默認值,這樣對于大部分的節點,就不再需要攜帶所有的參數了。
  2. 針對每個業務類型都額外做了一層封裝,這樣就不用每次都填寫event_type字段了,進一步的減少了代碼量。至此,對于普通節點,甚至只需要指定key和log兩個字段就可以完成上報了。

下面是解決第一個問題(埋點代碼冗長)的簡單圖示:

圖片

2.2.3 解決業務入侵性

業內流行使用插樁的方式來進行非入侵式的埋點,但切面的形式很難獲取業務上下文,無法解決方法A調用方法B的trace_id透傳問題,因此并不適用于這個場景。

對于trace_id透傳的問題,解決方案是把trace_id緩存一下。但是需要解決以下場景的問題:

  1. 多線程并發:并行啟動了多次同一個事件,且他們的完成時間也不固定,如同時上傳了多張大小不一的封面。
  2. 事件中斷:前一次事件因為某些原因中斷了,永遠的停留在了某個節點。

為此,我們首先引入狀態機的概念,將所有節點使用有向圖進行表示,這樣我們便能清晰的感知到事件的發生到結束,以及某個節點后續可以流轉至哪些節點、是否發生錯誤中斷。

圖片圖片

下面舉一個具體的例子,上麥流程圖和其對應的有向圖:

圖片圖片

圖中使用了虛實線來區分跨端或者跨線程的動作,其必要性可參見下文第(2)點。

(1)自動化尋找trace_id

當一個起始節點準備上報時:

  1. 為其創建一個上報實例
  2. 在實例中記錄trace_id、當前的節點,以及它之后可能會流轉到的節點
  3. 將這個實例扔到池子中

當一個非起始節點準備上報時:

  1. 組件會根據有向圖去池子中查找需要流轉到的節點
  2. 使用實例的trace_id進行上報
  3. 更新實例的時間戳
  4. 將實例流轉到下一個節點,若無后續節點,則移除實例

(2)解決多線程問題

這個方案似乎很完美,但從B到E是一個網絡接口請求,如果先后很快地發出了兩次請求,很可能會出現下面的情況:

圖片圖片

如果遵照上述的方案,B和E之間就會被錯誤的關聯起來。為了規避這個問題,trace_id會在跨線程時從埋點組件中外拋,需要業務方短暫記錄,并傳遞到下一個節點。當然,針對常用的網絡請求,我們也做了易用的封裝,詳見2.3.1。

于是之前上麥的有向圖會變為:

圖片圖片

在多線程問題解決之后,當一個含有trace_id的節點進入上報組件時,即會為其創建一個上報實例,按上文記錄字段后放到池子里。

至于無trace_id的上報則完全相同,唯一的區別就是在查找節點時,加上線程id的校驗,這樣可以防止同一事件在不同的線程中同時啟動。

在trace_id已經被自動化后,整體的上報流程圖如下:

圖片圖片

2.2.4 提升易用性后的代碼架構

圖片圖片

2.3 繼續增強魯棒性

2.3.1 對“接口與廣播”的封裝

在端上遇到的跨線程/跨端場景絕大多數都是網絡請求和廣播,因此,為了避免出錯和降低復雜度,我們做了一套易用的封裝:

1.  網絡請求

(1)組件會在發起指定請求之前通過有向圖自動尋路獲取此次trace_id

(2)使用該trace_id上報請求事件,并會自動帶上所有的業務請求參數

(3)將trace_id置于請求頭,用于串聯服務端節點

(4)在接口返回后,自動上報響應數據,若接口錯誤,會將該節點標記為error

2.  廣播

(1)組件會在指定廣播到達時,嘗試去獲取trace_id字段。

(2)若獲取成功,則自動進行上報,若沒有,則會走自動化上報流程。

這樣,業務方即使遇到跨線程/跨端,也無需關心trace_id了,在這兩種場景下徹底做到了業務無感。

2.3.2 對“抗風險能力”的補足

當業務鏈路與對應的有向圖不符時,trace_id的自動化管理便會失效。為此我們設計了特殊異常case的監控:

1.  事件跟蹤上下文丟失

自動化尋找trace_id失敗,此種情況多發生在上報的埋點與有向圖描述不符,此時埋點組件會上報一個警告埋點觸達開發及時修改鏈路。

2.  事件跟蹤超時

即上次單線程的流轉還未結束,新的節點就已到達。此種情況多發生在流轉過程被意外打斷,如check失敗后直接return。此時原事件在看板中會表現為鏈路中斷的錯誤。同樣的,會上報一個警告埋點。

2.4 上報組件整體概覽

圖片圖片

3. 數據處理和存儲

在處理上報的海量數據時,需要清洗掉錯誤的數據,并解析各個終端上報的不同數據結構,轉化為統一數據模型。由于數據是逐條上報的,必須將這些離散數據串聯成完整的事件鏈路,這樣就知道用戶操作了什么、經歷了哪些端、哪些節點出了問題或漏了哪些節點。

3.1 事件串聯

(1)單trace_id串聯:事件由唯一的trace_id串聯整個流程。

圖片

(2)多trace_id串聯:事件由多端各自的trace_id組合而成。

為兼容業務服務和廣播服務各自獨立的trace追蹤系統,我們實現了一套多重映射算法,且無縫兼容了單trace_id方案,最終溯源成事件開始的原始trace_id。

圖片圖片

3.2 數據清洗與存儲

為應對直播的實時性要求,我們采用流計算技術。先快速篩選出trace相關事件,再清洗掉異常數據,在單次流計算執行過程中進行映射建立關系并落表存儲,實現小于5min級別的數據響應處理。數據表支持靈活的定制化查詢和分析需求。

圖片圖片

4. 數據可視化

可視化簡化了查詢過程,能快速準確地捕捉異常和關鍵信息。適用于開發、測試、產品、運營、客服等角色。

4.1 覆蓋場景

從App啟動到退出,從開播到關播,從上麥到下麥,從PK發起到結束等關鍵業務場景。

圖片圖片

4.2 落地效果

在日常業務中,已經有效解決了很多實際問題,以下是遇到的一些案例查詢:

圖片圖片

三、結束語

不知何時起,“用關鍵鏈路查一下”已經成了身邊同事常說的口頭禪,整套排障體系的價值,也得到了驗證。

未來還有許多要做的事,我們將致力于拓展業務覆蓋面、建立業務健康度監控體系、提升上下文信息的有效性等。

我們相信,通過不斷的技術創新和服務優化,我們的業務能夠迎接更大的挑戰,為用戶創造更大的價值。

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

2022-12-05 19:15:12

得物云原生全鏈路

2023-10-16 23:43:52

云原生可觀測性

2023-01-30 22:34:44

Node.js前端

2022-07-22 07:59:17

日志方案

2022-05-23 08:23:24

鏈路追蹤SleuthSpring

2025-10-10 08:58:13

2022-01-05 08:27:17

C++全鏈路追蹤

2022-10-10 09:17:43

數據查詢

2022-05-25 08:23:32

ZipKinTwitter開源項目

2025-03-11 14:16:09

2025-01-20 08:10:00

微服務架構SLF4J

2025-05-26 08:50:00

SLF4JMDC全鏈路追蹤

2023-02-08 19:37:37

大數據技術

2022-09-15 10:03:42

Jaeger分布式追蹤系統

2023-02-15 18:31:48

數據存儲隔離

2023-08-24 22:13:31

2024-06-07 13:04:31

2020-12-16 09:24:18

Skywalking分布式鏈路追蹤

2023-07-07 07:27:14

全鏈路虎牙APM

2024-01-05 00:29:36

全鏈路灰度發布云原生
點贊
收藏

51CTO技術棧公眾號

色婷婷亚洲精品| 26uuu亚洲综合色| 欧美成人精品h版在线观看| 国产三级生活片| www.在线视频| 成人午夜大片免费观看| 欧美亚洲视频在线观看| 能直接看的av| 国产成人高清精品免费5388| 亚洲成人免费av| 日韩欧美激情一区二区| 国产免费黄色录像| 免费在线成人| 久久成人综合视频| 国产三级视频网站| 久久久久久亚洲精品美女| 日韩欧美精品网站| avove在线观看| 日韩av成人| 国产一区二区电影| 国产精品成人一区二区| 久久精品99国产精| 日韩电影免费网址| 欧美精品一区二区三区高清aⅴ | 国产福利片在线观看| 国产精品色哟哟| 久久av免费一区| 国产精品亚洲欧美在线播放| 久久高清一区| 久久乐国产精品| 九九精品视频免费| 不卡一区2区| 亚洲精品一区二三区不卡| 先锋资源在线视频| 四虎精品永久免费| 色偷偷成人一区二区三区91| 成人免费播放器| 91亚洲天堂| 国产精品网站在线| 好看的日韩精品视频在线| 国产农村妇女毛片精品久久| 免费视频一区二区| 国产精品678| av图片在线观看| 一区二区三区国产在线| 欧美激情va永久在线播放| 日本精品久久久久中文| 精品国产一区二区三区久久久蜜臀 | 久久毛片高清国产| 久久视频在线观看中文字幕| 日本激情一区二区三区| 国产不卡免费视频| 91九色在线观看| 99在线观看免费| 国产一区美女在线| 92国产精品视频| 99久久亚洲精品日本无码| 精品一区二区三区在线播放视频 | 97人人爽人人爽人人爽| 美女视频第一区二区三区免费观看网站| 日韩av电影国产| 性色av免费观看| 丝袜脚交一区二区| 国产成人小视频在线观看| 在线观看日本网站| 日韩高清一级片| 国产精品一区二区三区成人| 伊人久久国产精品| 国产精品中文欧美| 99久久精品免费看国产一区二区三区| 国产v片在线观看| 盗摄精品av一区二区三区| 国产精品午夜av在线| 无码国产精品一区二区免费16| 成人av资源在线| 久久久久久久久久久久久久久久av| 五月婷婷丁香网| 久久精品一区二区三区不卡| 亚洲国产一区二区三区在线| 久cao在线| 亚洲高清在线精品| 男人亚洲天堂网| 久久久久久一区二区三区四区别墅| 欧美日韩第一区日日骚| 992kp免费看片| 欧美大胆视频| 正在播放亚洲1区| 91视频青青草| 国产九九精品| 国产美女久久精品| 亚洲欧美黄色片| 国产午夜精品一区二区三区嫩草| 一区二区不卡视频| 青春草视频在线| 色综合咪咪久久| 亚洲高清视频免费| 亚洲最大在线| 美女国内精品自产拍在线播放| 久久狠狠高潮亚洲精品| 麻豆精品在线看| 国产欧美日韩在线播放| 国产精品秘入口| 亚洲综合色丁香婷婷六月图片| 成人一对一视频| 91精品麻豆| 亚洲精品视频久久| 538精品在线视频| 久久久久国产精品午夜一区| 91精品在线一区| 美州a亚洲一视本频v色道| 亚洲色图视频网| 无码人妻丰满熟妇区五十路百度| 精品91福利视频| 亚洲精选中文字幕| 麻豆亚洲av熟女国产一区二| 热久久一区二区| 国产日韩二区| 国产不卡在线| 欧美色视频在线| 中文在线一区二区三区| 亚洲九九视频| 国产免费一区视频观看免费| 欧美在线观看在线观看| 亚洲一级电影视频| 五月天丁香花婷婷| 国产精品片aa在线观看| 久久久在线观看| 99在线精品视频免费观看20| 国产精品久久久久久妇女6080| 精品视频免费在线播放| 日本在线一区二区三区| 日韩中文字幕网| 国产情侣呻吟对白高潮| 91日韩在线专区| 无码粉嫩虎白一线天在线观看 | 91精选在线观看| 丰满的亚洲女人毛茸茸| 国产精品日韩精品欧美精品| 成人18视频| 制服丝袜在线播放| 3d动漫精品啪啪| 久久爱一区二区| 久久国产精品72免费观看| 日韩亚洲一区在线播放| 韩国美女久久| 亚洲欧美综合精品久久成人| 国产污污视频在线观看| 成人av网站大全| 国产精品videossex国产高清| 亚洲网站三级| 久久视频在线视频| 国产精品人人爽| 亚洲女同ⅹxx女同tv| 一个色综合久久| 国产精品成人一区二区不卡| 国产日韩精品在线| 麻豆av在线免费看| 欧美一区二区三区免费观看视频 | 亚洲国产91| 国产精品久久久久久久免费大片| 国产在线xxx| 亚洲精品久久久久中文字幕欢迎你| 91精品国产高潮对白| 成人av动漫在线| 99色精品视频| 精品久久久久中文字幕小说| 国产精品电影观看| 97视频在线观看网站| 欧美日韩中文字幕一区二区| 久久久精品少妇| 国产99久久久国产精品免费看| 日本男女交配视频| 欧美一区 二区| 国产成人精品在线播放| 97人人在线| 精品乱码亚洲一区二区不卡| 精品成人免费视频| 国产性做久久久久久| www.超碰97.com| 亚洲天堂激情| 欧美日韩国产不卡在线看| 97久久网站| 色综合伊人色综合网| 精品人妻一区二区三区浪潮在线 | 国产免费a视频| 国产精品福利av| 人妻 丝袜美腿 中文字幕| 国产模特精品视频久久久久| 亚洲高清视频在线观看| 精品国产乱码一区二区三区| 91黑丝高跟在线| 午夜免费福利在线观看| 欧美一区二区三区在线电影| 中文字幕日韩一级| 国产精品久久777777| 久久久久久久久久影视| 日韩精品电影在线观看| 欧美大片免费播放| 同性恋视频一区| 亚洲一区中文字幕在线观看| 超碰超碰人人人人精品| 九九热这里只有精品免费看| 国产三级电影在线| 日韩你懂的电影在线观看| 亚洲影院在线播放| 亚洲一区二区av在线| x88av在线| 99精品视频在线观看免费| 不卡的在线视频| 亚洲欧美卡通另类91av| 欧美一级黄色录像片| 亚洲人挤奶视频| 成人午夜影院在线观看| 欧美啪啪网站| 欧美做受高潮电影o| 色屁屁www国产馆在线观看| 在线激情影院一区| 人妻一区二区三区四区| 91麻豆精品国产91| 中文字幕福利视频| 色综合久久久久综合99| 国产无精乱码一区二区三区| 亚洲女人的天堂| 国产午夜精品福利视频| 久久久99精品久久| 亚洲欧美在线不卡| 国产69精品久久久久777| 久久6免费视频| 美女诱惑一区二区| 日韩av播放器| 午夜影院日韩| 国产精品又粗又长| 国产一区二区三区四区三区四| 亚洲一区三区在线观看| 欧美禁忌电影| 欧美成人综合一区| 欧美三级自拍| 国产原创精品| 欧美亚洲大陆| 九色综合日本| 亚洲人成亚洲精品| 欧美日韩在线观看一区| 少妇一区二区三区| 久久免费看av| 精品国产乱码| 日韩视频在线观看国产| 国产精品嫩草影院在线看| 欧美日本韩国一区二区三区| 日韩极品在线| 久久精品aaaaaa毛片| 自拍偷拍精品| 日韩电影天堂视频一区二区| 精品av一区二区| 日本一区二区在线视频观看| 国产不卡一区| 亚洲激情一区二区| 999久久久亚洲| 一本色道久久88亚洲精品综合| 午夜激情久久| 青青草视频国产| 极品日韩av| 777精品久无码人妻蜜桃| 国产精品久久久久久久久久妞妞| 伊人成色综合网| 久久久久久久高潮| 日本久久久久久久久久久久| 久久精品国产亚洲高清剧情介绍| 想看黄色一级片| 成人精品一区二区三区四区| 中文在线一区二区三区| 久久久午夜电影| 九九热免费在线| 亚洲人成伊人成综合网小说| 精品在线视频观看| 欧美日韩综合视频| 亚洲午夜激情视频| 日韩视频不卡中文| 污污视频在线免费看| 国产一区二区三区视频免费| 麻豆免费在线观看| 久久久亚洲精选| 高清成人在线| 3d动漫精品啪啪一区二区三区免费| 91久久精品无嫩草影院| 麻豆蜜桃91| 99久久婷婷| 久久久久免费看黄a片app| 丝袜美腿亚洲综合| 永久看看免费大片| 久久久久99精品一区| 天堂av免费在线| 无码av免费一区二区三区试看| 久久久精品视频网站 | 午夜福利理论片在线观看| 亚洲色图狂野欧美| а√资源新版在线天堂| 欧美亚洲激情视频| 精品欧美视频| 欧美精品亚洲| 欧美视频四区| 亚洲天堂网一区| av日韩在线网站| 国产激情无码一区二区三区| 色哟哟一区二区在线观看| av中文字幕播放| 国产午夜一区二区| 波多野结衣在线高清| 国产精品丝袜高跟| 日韩中文av| 精品视频在线观看一区二区| 亚洲欧美久久| 国产清纯白嫩初高中在线观看性色| 国产欧美日韩综合| 亚洲国产精一区二区三区性色| 欧美日韩一区二区在线观看视频| 天堂中文在线资源| 欧美床上激情在线观看| 国产成人精品一区二区三区视频| 精品欧美国产| 欧美日韩专区| 成人性生交视频免费观看| 久久久精品免费观看| xxxx 国产| 制服丝袜av成人在线看| av女优在线| 秋霞av国产精品一区| 国内精品偷拍| 久久亚洲国产成人精品无码区| 狠狠狠色丁香婷婷综合久久五月| 美国黑人一级大黄| 色素色在线综合| 日本不卡视频一区二区| 欧美劲爆第一页| 日韩欧美久久| 男同互操gay射视频在线看| 精品一区二区三区香蕉蜜桃 | 一区二区在线观看不卡| 91午夜交换视频| 中文字幕亚洲专区| 麻豆精品蜜桃| 日韩亚洲视频在线| 日韩国产精品久久| 四虎永久免费在线观看| 色综合久久天天综合网| 国产在线视频你懂得| 日本高清不卡在线| 在线一级成人| 午夜精品久久久内射近拍高清| 91在线精品一区二区三区| 日韩av一二三区| 日韩av在线免播放器| 98色花堂精品视频在线观看| 精品国产区在线| 国产欧美大片| 国产中年熟女高潮大集合| 欧美午夜视频一区二区| 青青草手机在线| 国产精品∨欧美精品v日韩精品| 欧美一区二区三区高清视频| 亚洲性生活网站| 国产精品电影一区二区三区| 91超薄丝袜肉丝一区二区| 久久好看免费视频| 久久天堂久久| 免费拍拍拍网站| 91欧美激情一区二区三区成人| 69国产精品视频免费观看| 在线播放精品一区二区三区| 色综合久久久| 国产freexxxx性播放麻豆| 99re视频这里只有精品| 亚洲大尺度在线观看| 久久这里只有精品99| 国产精品高潮呻吟久久久久| 日韩免费一级视频| 欧美国产一区二区在线观看| 国产成人三级一区二区在线观看一| 欧美国产日韩一区二区三区| 色婷婷av一区二区三区丝袜美腿| 国产成人av影视| 亚洲你懂的在线视频| 污污视频在线免费看| 国产精品亚洲第一区| 欧美天天在线| 久久只有这里有精品| 91.com在线观看| 久久男人av资源站| 亚洲精品乱码久久久久久蜜桃91 | 国产成人av一区二区三区| 亚洲欧美高清| 欧美做爰爽爽爽爽爽爽| 亚洲福利视频久久| 影音成人av| 国产一级不卡视频| 日本一区二区视频在线| 亚洲第一黄色片| 国产精品福利在线| 国内自拍一区| 国产视频123区| 亚洲国产欧美一区二区三区久久|