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

線上MongoDB查詢慢,如何通過索引優(yōu)化直降響應(yīng)時間?

原創(chuàng) 精選
數(shù)據(jù)庫
線上某個頁面的響應(yīng)速度異常緩慢,達到了16秒,嚴重影響了業(yè)務(wù)的正常運行。經(jīng)過與研發(fā)的溝通得知,該頁面調(diào)用的數(shù)據(jù)集合只會保留7天的數(shù)據(jù),集合有6000萬條記錄。

作者 | 吳守陽

審校 | 重樓

背景

線上某個頁面的響應(yīng)速度異常緩慢,達到了16秒,嚴重影響了業(yè)務(wù)的正常運行。經(jīng)過與研發(fā)的溝通得知,該頁面調(diào)用的數(shù)據(jù)集合只會保留7天的數(shù)據(jù),集合有6000萬條記錄。針對過期數(shù)據(jù)的處理,使用了根據(jù) create_time 字段創(chuàng)建的過期索引,以自動使數(shù)據(jù)失效。此外,數(shù)據(jù)集合還通過 company_id 字段進行了哈希分片。

問題排查

慢語句分析

在后臺拿到了慢查詢語句,如下:

db.visitor.find({
 "company_id": 13272,
 "create_time": {
 "$gte": ISODate("2024-04-11T00:00:00.000+0800"),
 "$lte": ISODate("2024-04-11T23:59:59.000+0800")
 }
});

db.visitor.find({
 "company_id": 13272,
 "create_time": {
 "$gte": ISODate("2024-04-12T00:00:00.000+0800"),
 "$lte": ISODate("2024-04-18T23:59:59.000+0800")
 }
});

很簡單的一個查詢,語句上沒有再優(yōu)化的必要了。如果索引都在不應(yīng)該出現(xiàn)這種十多秒的耗時,接下來開始分析索引。

索引分析

索引如下:

db.getCollection("visitor").createIndex({
 "company_id": "hashed"
}, {
 name: "company_id_hashed"
});

db.getCollection("visitor").createIndex({
 "company_id": NumberInt("1")
}, {
 name: "company_id_1"
});

db.getCollection("visitor").createIndex({
 "create_time": NumberInt("1")
}, {
 name: "create_time_1",
 expireAfterSeconds: NumberInt("604800")
});

其中:

  • company_id_hashed:創(chuàng)建集合分片使用的hash索引
  • company_id_1:普通查詢的索引
  • create_time_1:過期時間的索引
    就這點數(shù)據(jù)量,按理說會用到索引的,不應(yīng)該執(zhí)行耗時16s,接下來執(zhí)行計劃分析。

Explain執(zhí)行計劃

winningPlan

"stage": "SHARDING_FILTER",
 "inputStage": {
 "stage": "FETCH",
 "filter": {
 "$and": [
 {
 "company_id": {
 "$eq": 13272
 }
 },
 {
 "create_time": {
 "$lte": ISODate("2024-04-17T15:59:59.000Z")
 }
 },
 {
 "create_time": {
 "$gte": ISODate("2024-04-10T16:00:00.000Z")
 }
 }
 ]
 },
 "inputStage": {
 "stage": "IXSCAN",
 "keyPattern": {
 "company_id": "hashed"
 },
 "indexName": "company_id_hashed",
 "isMultiKey": false,
 "isUnique": false,
 "isSparse": false,
 "isPartial": false,
 "indexVersion": NumberInt("2"),
 "direction": "forward",
 "indexBounds": {
 "company_id": [
 "[7977521071453068053, 7977521071453068053]"

這部分顯示只用到了company_id_hashed索引,沒有用到create_time_1索引。

rejectedPlans

"stage": "SHARDING_FILTER",
 "inputStage": {
 "stage": "FETCH",
 "filter": {
 "company_id": {
 "$eq": 13272
 }
 },
 "inputStage": {
 "stage": "IXSCAN",
 "keyPattern": {
 "create_time": 1
 },
 "indexName": "create_time_1",
 "isMultiKey": false,
 "multiKeyPaths": {
 "create_time": [ ]
 },
 "isUnique": false,
 "isSparse": false,
 "isPartial": false,
 "indexVersion": NumberInt("2"),
 "direction": "forward",
 "indexBounds": {
 "create_time": [
 "[new Date(1712764800000), new Date(1713369599000)]"
 ]
 }
 }
 }
 },
 {
 "stage": "SHARDING_FILTER",
 "inputStage": {
 "stage": "FETCH",
 "filter": {
 "$and": [
 {
 "create_time": {
 "$lte": ISODate("2024-04-17T15:59:59.000Z")
 }
 },
 {
 "create_time": {
 "$gte": ISODate("2024-04-10T16:00:00.000Z")
 }
 }
 ]
 },
 "inputStage": {
 "stage": "IXSCAN",
 "keyPattern": {
 "company_id": 1
 },
 "indexName": "company_id_1",
 "isMultiKey": false,
 "multiKeyPaths": {
 "company_id": [ ]
 },

這部分顯示的是被拒絕的執(zhí)行計劃列表,不會用到company_id_1create_time_1索引。

executionStats

"nReturned": NumberInt("229707"),
 "executionTimeMillis": NumberInt("15668"),
 "totalKeysExamined": NumberInt("238012"),
 "totalDocsExamined": NumberInt("238012"),
 "executionStages": {
 "stage": "SINGLE_SHARD",
 "nReturned": NumberInt("229707"),
 "executionTimeMillis": NumberInt("15668"),
 "totalKeysExamined": NumberInt("238012"),
 "totalDocsExamined": NumberInt("238012"),
 "totalChildMillis": NumberLong("15667"),
 "shards": [
 {
 "shardName": "d-m5eee03fdeaeaee4",
 "executionSuccess": true,
 "executionStages": {
 "stage": "SHARDING_FILTER",
 "nReturned": NumberInt("229707"),
 "executionTimeMillisEstimate": NumberInt("14996"),
 "works": NumberInt("238013"),
 "advanced": NumberInt("229707"),
 "needTime": NumberInt("8305"),
 "needYield": NumberInt("0"),
 "saveState": NumberInt("1980"),
 "restoreState": NumberInt("1980"),
 "isEOF": NumberInt("1"),
 "chunkSkips": NumberInt("0"),
 "inputStage": {
 "stage": "FETCH",
 "filter": {
 "$and": [
 {
 "company_id": {
 "$eq": 13272
 }
 },
 {
 "create_time": {
 "$lte": ISODate("2024-04-17T15:59:59.000Z")
 }
 },
 {
 "create_time": {
 "$gte": ISODate("2024-04-10T16:00:00.000Z")
 }
 }
 ]
 },
 "nReturned": NumberInt("229707"),
 "executionTimeMillisEstimate": NumberInt("14595"),
 "works": NumberInt("238013"),
 "advanced": NumberInt("229707"),
 "needTime": NumberInt("8305"),
 "needYield": NumberInt("0"),
 "saveState": NumberInt("1980"),
 "restoreState": NumberInt("1980"),
 "isEOF": NumberInt("1"),
 "docsExamined": NumberInt("238012"),
 "alreadyHasObj": NumberInt("0"),
 "inputStage": {
 "stage": "IXSCAN",
 "nReturned": NumberInt("238012"),
 "executionTimeMillisEstimate": NumberInt("251"),
 "works": NumberInt("238013"),
 "advanced": NumberInt("238012"),
 "needTime": NumberInt("0"),
 "needYield": NumberInt("0"),
 "saveState": NumberInt("1980"),
 "restoreState": NumberInt("1980"),
 "isEOF": NumberInt("1"),
 "keyPattern": {
 "company_id": "hashed"
 },
 "indexName": "company_id_hashed",
 "isMultiKey": false,
 "isUnique": false,
 "isSparse": false,
 "isPartial": false,
 "indexVersion": NumberInt("2"),
 "direction": "forward",
 "indexBounds": {
 "company_id": [
 "[7977521071453068053, 7977521071453068053]"
 ]
 },
 "keysExamined": NumberInt("238012"),
 "seeks": NumberInt("1"),
 "dupsTested": NumberInt("0"),
 "dupsDropped": NumberInt("0")

這部分顯示的是查詢的執(zhí)行統(tǒng)計信息。

索引分析

通過explain的執(zhí)行計劃,可以看出索引的使用上存在問題。按理說company_idcreate_time都已創(chuàng)建索引,為什么沒有使用上?是什么原因?qū)е滤В瑳]有用上create_time索引?

下面列舉了失效的情況:

  • 索引選擇性不高:由于查詢條件是一個范圍查詢,create_time 字段可能有許多不同的值滿足條件。因此,單鍵索引 create_time_1 的選擇性(即索引中不同值的比例)可能不高,這使得使用該索引無法有效地減少需要檢索的文檔數(shù)量。
  • 查詢需要跨越多個索引鍵值:查詢涉及到了兩個字段 company_id 和 create_time。雖然索引 create_time_1 可以幫助過濾 create_time 符合條件的文檔,但在執(zhí)行查詢時,還需要考慮 company_id 的匹配條件。因此,MongoDB 需要在兩個索引之間進行查找和合并,而不是簡單地使用單個索引來解決查詢。
  • 額外的查找和合并成本:在涉及多個條件的查詢中,MongoDB 會嘗試使用覆蓋索引(Covered Index)來盡可能地減少在磁盤上的文檔檢索。然而,在這種情況下,create_time_1 索引不能單獨滿足查詢條件,因此 MongoDB 還需要查找和合并從 company_id_1 索引中過濾出來的文檔。這種額外的查找和合并過程會增加查詢的成本,并且降低性能。
    因此,針對給定的查詢語句,MongoDB 不會使用 create_time_1 索引來優(yōu)化查詢,而是會選擇其他更適合的索引,如 company_id_hashed 和 company_id_1。

問題原因

造成執(zhí)行耗時過長的主要原因是索引失效的問題,在涉及多個條件的查詢中,MongoDB 會嘗試使用覆蓋索引(Covered Index)來盡可能地減少在磁盤上的文檔檢索。然而,在這種情況下,create_time_1 索引不能單獨滿足查詢條件,因此 MongoDB 還需要查找和合并從 company_id_1 索引中過濾出來的文檔。這種額外的查找和合并過程會增加查詢的成本,并且降低性能。

優(yōu)化方案

創(chuàng)建新的復(fù)合索引company_id_create_time,讓其走company_id_hashed到company_id_create_time的鏈路。添加新的索引后,相同的語句執(zhí)行時間只需要400ms,能滿足業(yè)務(wù)的需求。

結(jié)論

要多關(guān)注索引在什么情況下會失效?復(fù)合索引的先后順序,不是每個條件字段都建個單個普通索引,查詢語句都會使用上,不要存在這種誤區(qū),有時候復(fù)合索引才是最完美的組合。

執(zhí)行計劃詳解

1、queryPlanner包含了MongoDB查詢的執(zhí)行計劃。

  • mongosPlannerVersionMongoDB計劃版本。
  • winningPlan勝出的執(zhí)行計劃,即MongoDB選擇的最佳執(zhí)行計劃。
  • shards: 分片的詳細信息,包括分片名稱、連接字符串、服務(wù)器信息等。2、winningPlan: 勝出的執(zhí)行計劃。
  • stage: 執(zhí)行階段,這里是SINGLE_SHARD,表示單分片操作。
  • shardName: 執(zhí)行操作的分片名稱。
  • plannerVersion: 計劃版本。
  • namespace: 查詢的命名空間。
  • indexFilterSet: 是否設(shè)置了索引過濾器。
  • parsedQuery: 解析后的查詢條件。
  • winningPlan: 勝出的執(zhí)行計劃的詳細信息,這里是SHARDING_FILTER。3、rejectedPlans: 被拒絕的執(zhí)行計劃列表,即非勝出的備選計劃。
    每個被拒絕的執(zhí)行計劃包含了其詳細信息,包括執(zhí)行階段、過濾器、索引掃描等。
    4、executionStats: 查詢的執(zhí)行統(tǒng)計信息。
  • nReturned: 返回的文檔數(shù)量。
  • executionTimeMillis: 查詢執(zhí)行時間(毫秒)。
  • totalKeysExamined: 總共檢查的鍵數(shù)量。
  • totalDocsExamined: 總共檢查的文檔數(shù)量。
  • executionStages: 執(zhí)行階段的詳細統(tǒng)計信息。

作者介紹

吳守陽,51CTO社區(qū)編輯,擁有8年DBA工作經(jīng)驗,熟練管理MySQL、Redis、MongoDB等開源數(shù)據(jù)庫。精通性能優(yōu)化、備份恢復(fù)和高可用性架構(gòu)設(shè)計。善于故障排除和自動化運維,保障系統(tǒng)穩(wěn)定可靠。具備良好的團隊合作和溝通能力,致力于為企業(yè)提供高效可靠的數(shù)據(jù)庫解決方案。

責任編輯:華軒 來源: 51CTO
相關(guān)推薦

2024-05-30 07:55:43

2022-07-03 21:00:58

VoIP 系統(tǒng)人工智能

2024-09-25 14:25:47

API接口

2012-09-20 10:13:04

MongoDB

2020-07-21 08:18:16

響應(yīng)測試系統(tǒng)

2021-12-13 07:50:14

cURL響應(yīng)時間

2023-12-14 12:56:00

MongoDB數(shù)據(jù)庫優(yōu)化

2010-06-03 09:24:46

Oracle

2020-08-20 14:49:22

數(shù)據(jù)查詢數(shù)據(jù)庫

2024-08-06 10:02:42

2023-10-20 13:30:36

代碼接口

2025-11-03 13:00:00

SQL慢SQL數(shù)據(jù)庫

2018-06-07 08:54:01

MySQL性能優(yōu)化索引

2017-04-28 15:49:43

2009-12-10 09:11:52

Windows 7系統(tǒng)加速

2021-10-18 05:46:27

網(wǎng)絡(luò)攻擊惡意軟件網(wǎng)絡(luò)安全

2024-03-06 20:00:50

MySQL優(yōu)化器索引

2022-04-22 14:41:12

美團慢查詢數(shù)據(jù)庫

2011-09-19 19:32:35

vista啟動修復(fù)工具

2021-08-03 17:15:19

SQL 慢 SQL
點贊
收藏

51CTO技術(shù)棧公眾號

91国偷自产一区二区开放时间 | 欧美精品一区在线播放| 亚洲av无日韩毛片久久| 欧美videosex性欧美黑吊| av男人天堂一区| 国产99在线|中文| wwwav国产| 国产欧美日韩精品高清二区综合区| 欧美日韩不卡一区| 国内自拍在线观看| 国产精品实拍| 久久久美女毛片| 91久久久在线| 无码无套少妇毛多18pxxxx| 亚洲精品91| 亚洲天堂日韩电影| 中文字幕人妻熟女在线| 福利一区在线| 亚洲成a人v欧美综合天堂下载| 久久久久久高清| 99在线观看免费| 日本一不卡视频| 性欧美激情精品| 色欲人妻综合网| 欧美日韩中文字幕一区二区三区| 精品噜噜噜噜久久久久久久久试看 | 韩国福利在线| k8久久久一区二区三区| 成人在线一区二区| 天天干天天操天天操| 136国产福利精品导航网址| 日韩综合中文字幕| 久操视频免费看| 日韩动漫一区| 精品捆绑美女sm三区| 欧美大片久久久| 999国产精品亚洲77777| 欧美日韩一区免费| 成人av在线不卡| 亚洲妇熟xxxx妇色黄| 一区视频在线播放| 色之综合天天综合色天天棕色| 偷拍自拍在线| 成人av免费在线播放| 91成人免费在线观看| 国产美女www爽爽爽视频| 久久av一区| 97婷婷涩涩精品一区| 日韩欧美性视频| 很黄很黄激情成人| 色与欲影视天天看综合网| 91杏吧porn蝌蚪| 自拍日韩欧美| 欧美国产在线电影| 久久久久久久久久99| 欧美日韩免费观看一区=区三区| 久久国产色av| 欧美成人国产精品高潮| 欧美日韩亚洲一区在线观看| 久久成人在线视频| 好吊色视频在线观看| 国内精品久久久久久久97牛牛| 欧美成人四级hd版| 久久精品国产亚洲av麻豆色欲| 极品裸体白嫩激情啪啪国产精品| 国产+成+人+亚洲欧洲| 国产成人无码精品亚洲| 亚洲啪啪91| 欧美一级视频在线观看| 啪啪小视频网站| 久久99精品一区二区三区| 亚洲已满18点击进入在线看片| 国产精品女同一区二区| 国产精品亚洲成人| 国产伦理一区二区三区| 日本在线一二三| 中文字幕免费不卡在线| 在线不卡视频一区二区| 尤物视频在线看| 午夜激情综合网| 国产第一页视频| 少妇精品视频在线观看| 日韩视频一区二区三区| 久久久久麻豆v国产精华液好用吗| 亚洲ab电影| 日韩中文在线不卡| 久久久久久激情| 日韩影院精彩在线| 亚洲在线www| 香蕉视频国产在线| 亚洲国产高清在线观看视频| 日本老太婆做爰视频| av剧情在线观看| 欧洲亚洲国产日韩| 一级黄色片在线免费观看| 韩国精品福利一区二区三区| 亚洲欧洲日本专区| 亚洲熟女www一区二区三区| 在线观看日韩av电影| 国产欧美日韩专区发布| 人妻精品一区一区三区蜜桃91| 久久精品亚洲乱码伦伦中文| 公共露出暴露狂另类av| 91精品产国品一二三产区| 欧美一级精品大片| 97人妻人人揉人人躁人人| 亚洲欧美在线专区| 日本精品久久久久久久| 国产黄色小视频在线观看| 久久人人爽人人爽| 亚洲色成人www永久在线观看| 国产成人精品一区二区三区视频| 亚洲成人亚洲激情| 亚洲欧洲综合网| 久久激情中文| 国产伦精品一区二区三区照片 | 国产精品久久久毛片| 国产香蕉精品| 美女视频黄免费的亚洲男人天堂| 国产精品国产精品国产| 91看片淫黄大片一级| 粉嫩av一区二区三区天美传媒| 亚洲www.| 精品亚洲永久免费精品| 国产在线拍揄自揄拍| 国产麻豆成人传媒免费观看| 亚洲图片都市激情| 欧洲亚洲两性| 日韩美女av在线| 日韩黄色a级片| 高潮精品一区videoshd| 日本福利视频导航| 成人免费一区| 亚洲天堂2020| 五月婷婷激情视频| 91亚洲精华国产精华精华液| 日韩久久久久久久久久久久| 欧美成年网站| 久精品免费视频| 99热这里只有精品99| 综合久久久久久| 在线观看免费视频高清游戏推荐| 国产一区二区三区日韩精品| 欧美有码在线视频| 欧美偷拍视频| 色视频欧美一区二区三区| 特大黑人巨人吊xxxx| 亚洲欧洲日本一区二区三区| 国产亚洲一区在线播放| 麻豆mv在线看| 精品亚洲国产视频| 久久国产视频精品| 国产欧美日韩卡一| 免费看污黄网站| 日韩欧美三级| 国产一区欧美二区三区| 国产原创精品视频| 欧美一三区三区四区免费在线看| 国产高潮流白浆| 国产99久久久国产精品潘金网站| 亚洲精品久久久久久久蜜桃臀| 中文字幕一区二区三区日韩精品| 国内精品久久久久久久久| 香蕉久久国产av一区二区| 一本久久综合亚洲鲁鲁五月天| 亚洲国产av一区| 青青草97国产精品免费观看 | 亚洲高清激情| 精品一区二区视频| 日韩国产网站| 久久精品视频va| 亚洲精品久久久久久久久久 | 在线观看国产精品入口男同| 亚洲欧美在线aaa| 日韩大尺度视频| 性欧美videos另类喷潮| 亚洲一区二区免费视频软件合集| 国产精品免费精品自在线观看| 欧美激情xxxx性bbbb| 日本天堂影院在线视频| 欧美四级电影网| 青青草激情视频| 久久久亚洲精品石原莉奈| 日日干夜夜操s8| 亚洲区一区二| 亚洲mv在线看| japanese色系久久精品| 国产成人免费av电影| 国产在线高清视频| 日韩精品视频免费| 在线观看免费黄色小视频| 一区av在线播放| 在线免费观看日韩av| 国产一区二区三区免费在线观看 | 亚洲欧美精品aaaaaa片| 99久久精品免费看国产免费软件| 免费看a级黄色片| 影视亚洲一区二区三区| 日本电影一区二区三区| 亚洲综合影院| 国产精品美女久久久久久免费| 色呦呦网站在线观看| 中文在线不卡视频| 成人av免费播放| 欧美日韩一本到| 久久夜靖品2区| 亚洲欧美一区二区三区极速播放| 亚洲国产无码精品| 福利视频网站一区二区三区| 亚洲综合色在线观看| 翔田千里一区二区| 国内自拍中文字幕| 国产精品久久久乱弄| 久久综合九色99| 51亚洲精品| 成人中文字幕在线观看| 粉嫩av一区二区三区四区五区 | 久久亚洲精品一区| 国产永久免费高清在线观看| 精品久久久久久久久久久院品网| 一级特黄特色的免费大片视频| 欧美视频专区一二在线观看| 麻豆chinese极品少妇| 亚洲欧洲日韩一区二区三区| 熟女俱乐部一区二区| 成人天堂资源www在线| 亚洲第一区第二区第三区| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩精品一区二区三区久久| 亚洲国产高清一区二区三区| 国产成人免费高清视频| 91久久夜色精品国产按摩| 日本视频一区二区不卡| 亚洲婷婷伊人| 久中文字幕一区| 色婷婷av一区二区三区丝袜美腿| 国产精品久久久久久久久婷婷| 国产精品日韩精品在线播放 | 红杏视频成人| 国产不卡一区二区在线观看 | 亚洲丁香久久久| 丰满人妻一区二区三区四区53| 欧美一区二区三区精品| 国产熟女一区二区三区五月婷| 欧美精品三级在线观看| 亚洲图片在线播放| 欧美日韩在线电影| 亚洲一级在线播放| 欧美剧情片在线观看| 国产精品亚洲lv粉色| 日韩欧美资源站| 成人黄色在线观看视频| 亚洲福利精品在线| 少妇喷水在线观看| 日韩精品极品在线观看| 黄色片视频在线观看| 亚洲欧洲午夜一线一品| 福利小视频在线观看| 国产一区二区三区欧美| 在线免费看a| 日韩在线视频观看正片免费网站| 国产色在线观看| 欧美极品欧美精品欧美视频| 日韩av影片| 国产精品丝袜视频| 欧美大片91| 久久久久久久久久久久久久一区 | 狠狠人妻久久久久久| 91福利社在线观看| 国产又大又黑又粗| 日韩三级精品电影久久久| 五月婷中文字幕| 中文一区二区视频| 尤物在线网址| 欧洲日韩成人av| 久久av日韩| 国产精品区免费视频| 国产成人精品一区二区免费看京| 中文字幕中文字幕在线中一区高清| 中文无码久久精品| 男女激情无遮挡| 免费的成人av| 佐佐木明希电影| 日本一区二区久久| 欧美三级小视频| 色8久久人人97超碰香蕉987| 国产熟女一区二区三区四区| 日韩精品视频中文在线观看 | 欧美激情三级免费| 欧美最新精品| 俄罗斯精品一区二区| 精品久久视频| 国产一级爱c视频| 久久国产欧美日韩精品| 亚洲精品乱码久久久久久久| 中文字幕欧美一区| 香蕉影院在线观看| 欧美一区二区三区色| 国产乱视频在线观看| 久久99国产综合精品女同| 高清av一区二区三区| 国产在线一区二| 图片小说视频色综合| 无码精品国产一区二区三区免费| 国产精品小仙女| 国产精品久久久视频| 午夜伦欧美伦电影理论片| 一本色道久久综合精品婷婷| 精品无人区乱码1区2区3区在线| 最新av在线播放| 国产精品三级网站| 欧美福利在线播放网址导航| 国产高清精品软男同| 久久亚洲视频| 艳妇乳肉亭妇荡乳av| 亚洲男人的天堂网| 亚洲中文字幕在线观看| 亚洲欧美中文日韩在线| 精灵使的剑舞无删减版在线观看| 成人久久18免费网站图片| 欧美精品系列| 国产日韩一区二区在线观看| 成人免费视频caoporn| 欧美精品一区二区成人| 欧美日韩国产区一| 国产三级在线看| 青青在线视频一区二区三区| 极品一区美女高清| 嫩草影院中文字幕| 国产伦精品一区二区三区免费迷 | 无码人妻一区二区三区精品视频| 国产精品夫妻自拍| 中国一级片黄色一级片黄| 亚洲视频国产视频| 日韩精品专区| 欧美黑人xxxxx| 国产偷自视频区视频一区二区| 无码一区二区精品| 精品国产福利视频| 亚洲 精品 综合 精品 自拍| 午夜精品久久久99热福利| 亚洲成av人片在线观看www| www.18av.com| 国产电影一区二区三区| 久操视频免费在线观看| 欧美va亚洲va香蕉在线| 美足av综合网| 精品久久久久久一区| 99国产精品| 国产黄色网址在线观看| 色婷婷国产精品久久包臀 | 日韩一二三区| 激情五月婷婷六月| aaa国产一区| 免费黄色网址在线| 一区二区三区高清国产| 中文另类视频| 亚洲精品一区二区三区四区五区| 精品一区二区三区久久| 天天干中文字幕| 精品国产91洋老外米糕| 黄色漫画在线免费看| 欧美一级日本a级v片| 美女www一区二区| 国产精品白嫩白嫩大学美女| 亚洲成成品网站| 在线视频超级| 亚洲欧美综合一区| 国产乱码精品一区二区三区av | 欧美不卡在线一区二区三区| 狂野欧美一区| 亚洲国产精品免费在线观看| 精品少妇一区二区三区视频免付费| 午夜欧美激情| 午夜精品视频在线观看一区二区| 蜜臀av性久久久久蜜臀aⅴ| 青娱乐av在线| 亚洲伦理中文字幕| 91精品亚洲一区在线观看| 国产a级片网站| 亚洲国产高清aⅴ视频| 亚洲精品免费在线观看视频 | 99久热在线精品视频观看| 亚洲国产精品无码观看久久| 久久婷婷一区二区三区| 国产女18毛片多18精品| 97久久国产精品| 成久久久网站| 五月天丁香社区| 欧美三级视频在线观看| av中文在线资源库| 亚洲看片网站| av综合在线播放| 国产一区二区三区在线观看| 性色av一区二区咪爱| 天天天综合网| 自拍偷拍亚洲天堂| 日韩女优制服丝袜电影| www.26天天久久天堂| 9久久9毛片又大又硬又粗|