国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

這幾種技巧,能有效幫你提升接口查詢速度

共 7546字,需瀏覽 16分鐘

 ·

2021-07-08 10:35

1. MySQL查詢慢是什么體驗(yàn)?

大多數(shù)互聯(lián)網(wǎng)應(yīng)用場景都是讀多寫少,業(yè)務(wù)邏輯更多分布在寫上。對(duì)讀的要求大概就是要快。那么都有什么原因會(huì)導(dǎo)致我們完成一次出色的慢查詢呢?

1.1 索引

在數(shù)據(jù)量不是很大時(shí),大多慢查詢可以用索引解決,大多慢查詢也因?yàn)樗饕缓侠矶a(chǎn)生。

MySQL 索引基于 B+ 樹,這句話相信面試都背爛了,接著就可以問最左前綴索引、 B+ 樹和各種樹了。

說到最左前綴,實(shí)際就是組合索引的使用規(guī)則,使用合理組合索引可以有效的提高查詢速度,為什么呢?

因?yàn)樗饕峦?。如果查詢條件包含在了組合索引中,比如存在組合索引(a,b),查詢到滿足 a 的記錄后會(huì)直接在索引內(nèi)部判斷 b 是否滿足,減少回表次數(shù)。

同時(shí),如果查詢的列恰好包含在組合索引中,即為覆蓋索引,無需回表。索引規(guī)則估計(jì)都知道,實(shí)際開發(fā)中也會(huì)創(chuàng)建和使用。問題可能更多的是:為什么建了索引還慢?

1.1.1 什么原因?qū)е滤饕?/h4>

建了索引還慢,多半是索引失效(未使用),可用 explain 分析。索引失效常見原因有 :

  • where 中使用 != 或 <> 或 or 或表達(dá)式或函數(shù)(左側(cè))

  • like 語句 % 開頭

  • 字符串未加’’

  • 索引字段區(qū)分度過低,如性別

  • 未匹配最左前綴

(一張嘴就知道老面試題了) 為什么這些做法會(huì)導(dǎo)致失效,成熟的 MySQL 也有自己的想法。

1.1.2 這些原因?yàn)槭裁磳?dǎo)致索引失效

如果要 MySQL 給一個(gè)理由,還是那棵 B+ 樹。

函數(shù)操作

當(dāng)在 查詢 where = 左側(cè)使用表達(dá)式或函數(shù)時(shí),如字段 A 為字符串型且有索引, 有 where length(a) = 6查詢,這時(shí)傳遞一個(gè) 6 到 A 的索引樹,不難想象在樹的第一層就迷路了。

隱式轉(zhuǎn)換

隱式類型轉(zhuǎn)換和隱式字符編碼轉(zhuǎn)換也會(huì)導(dǎo)致這個(gè)問題。

  • 隱式類型轉(zhuǎn)換對(duì)于 JOOQ 這種框架來說一般倒不會(huì)出現(xiàn)。

  • 隱式字符編碼轉(zhuǎn)換在連表查詢時(shí)倒可能出現(xiàn),即連表字段的類型相同但字符編碼不同。

破壞了有序性

至于 Like 語句 % 開頭、字符串未加 ’’ 原因基本一致,MySQL 認(rèn)為對(duì)索引字段的操作可能會(huì)破壞索引有序性就機(jī)智的優(yōu)化掉了。

不過,對(duì)于如性別這種區(qū)分度過低的字段,索引失效就不是因?yàn)檫@個(gè)原因。

1.1.3 性別字段為什么不要加索引

為什么索引區(qū)分度低的字段不要加索引。盲猜效率低,效率的確低,有時(shí)甚至?xí)扔跊]加。

對(duì)于非聚簇索引,是要回表的。假如有 100 條數(shù)據(jù),在 sex 字段建立索引,掃描到 51 個(gè) male,需要再回表掃描 51 行。還不如直接來一次全表掃描呢。

所以,InnoDB 引擎對(duì)于這種場景就會(huì)放棄使用索引,至于區(qū)分度多低多少會(huì)放棄,大致是某類型的數(shù)據(jù)占到總的 30% 左右時(shí),就會(huì)放棄使用該字段的索引,有興趣可以試一下。

1.1.4 有什么好用且簡單的索引方法

前面說到大多慢查詢都源于索引,怎么建立并用好索引。這里有一些簡單的規(guī)則。

  • 索引下推:性別字段不適合建索引,但確實(shí)存在查詢場景怎么辦?如果是多條件查詢,可以建立聯(lián)合索引利用該特性優(yōu)化。

  • 覆蓋索引:也是聯(lián)合索引,查詢需要的信息在索引里已經(jīng)包含了,就不會(huì)再回表了。

  • 前綴索引:對(duì)于字符串,可以只在前 N 位添加索引,避免不必要的開支。假如的確需要如關(guān)鍵字查詢,那交給更合適的如 ES 或許更好。

  • 不要對(duì)索引字段做函數(shù)操作

對(duì)于確定的、寫多讀少的表或者頻繁更新的字段都應(yīng)該考慮索引的維護(hù)成本。

1.1.5 如何評(píng)價(jià) MySQL 選錯(cuò)了索引

有時(shí),建立了猛一看挺正確的索引,但事情卻沒按計(jì)劃發(fā)展。就像“為啥 XXX 有索引,根據(jù)它查詢還是慢查詢”。

此刻沒準(zhǔn)要自信點(diǎn):我的代碼不可能有 BUG,肯定是 MySQL 出了問題。MySQL 的確可能有點(diǎn)問題。

這種情況常見于建了一大堆索引,查詢條件一大堆。沒使用你想讓它用的那一個(gè),而是選了個(gè)區(qū)分度低的,導(dǎo)致過多的掃描。造成的原因基本有兩個(gè):

信息統(tǒng)計(jì)不準(zhǔn)確:可以使用 analyze table x重新分析。
優(yōu)化器誤判:可以 force index強(qiáng)制指定?;蛐薷恼Z句引導(dǎo)優(yōu)化器,增加或刪除索引繞過。
但根據(jù)我淺薄的經(jīng)驗(yàn)來看,更可能是因?yàn)槟憬诵]必要的索引導(dǎo)致的。不會(huì)真有人以為 MySQL 沒自己機(jī)靈吧?

除了上面這些索引原因外,還有下面這些不常見或者說不好判斷的原因存在。

1.2 等MDL鎖

在 MySQL 5.5 版本中引入了 MDL,對(duì)一個(gè)表做 CRUD 操作時(shí),自動(dòng)加 MDL 讀鎖;對(duì)表結(jié)構(gòu)做變更時(shí),加 MDL 寫鎖。讀寫鎖、寫鎖間互斥。

當(dāng)某語句拿 MDL 寫鎖就會(huì)阻塞 MDL 讀鎖,可以使用show processlist命令查看處于Waiting for table metadata lock狀態(tài)的語句。

1.3 等 flush

flush 很快,大多是因?yàn)?flush 命令被別的語句堵住,它又堵住了 select 。通過show processlist命令查看時(shí)會(huì)發(fā)現(xiàn)處于Waiting for table flush狀態(tài)。

1.4 等行鎖

某事物持有寫鎖未提交。

1.5 當(dāng)前讀

InnoDB 默認(rèn)級(jí)別是可重復(fù)讀。設(shè)想一個(gè)場景:事物 A 開始事務(wù),事務(wù) B 也開始執(zhí)行大量更新。B 率先提交, A 是當(dāng)前讀,就要依次執(zhí)行 undo log ,直到找到事務(wù) B 開始前的值。

1.6 大表場景

在未二次開發(fā)的 MYSQL 中,上億的表肯定算大表,這種情況即使在索引、查詢層面做到了較好實(shí)現(xiàn),面對(duì)頻繁聚合操作也可能會(huì)出現(xiàn) IO 或 CPU 瓶頸,即使是單純查詢,效率也會(huì)下降。

且 Innodb 每個(gè) B+ 樹節(jié)點(diǎn)存儲(chǔ)容量是 16 KB,理論上可存儲(chǔ) 2kw 行左右,這時(shí)樹高為3層。我們知道,innodb_buffer_pool 用來緩存表及索引,如果索引數(shù)據(jù)較大,緩存命中率就堪憂,同時(shí) innodb_buffer_pool 采用 LRU 算法進(jìn)行頁面淘汰,如果數(shù)據(jù)量過大,對(duì)老或非熱點(diǎn)數(shù)據(jù)的查詢可能就會(huì)把熱點(diǎn)數(shù)據(jù)給擠出去。

所以對(duì)于大表常見優(yōu)化即是分庫分表和讀寫分離了。

1.6.1 分庫分表

方案

是分庫還是分表呢?這要具體分析。

如果磁盤或網(wǎng)絡(luò)有 IO 瓶頸,那就要分庫和垂直分表。
如果是 CPU 瓶頸,即查詢效率偏低,水平分表。
水平即切分?jǐn)?shù)據(jù),分散原有數(shù)據(jù)到更多的庫表中。
垂直即按照業(yè)務(wù)對(duì)庫,按字段對(duì)表切分。

工具方面有 sharding-sphere、TDDL、Mycat。動(dòng)起手來需要先評(píng)估分庫、表數(shù),制定分片規(guī)則選 key,再開發(fā)和數(shù)據(jù)遷移,還要考慮擴(kuò)容問題。

問題

實(shí)際運(yùn)行中,寫問題不大,主要問題在于唯一 ID 生成、非 partition key 查詢、擴(kuò)容。

唯一 ID 方法很多,DB 自增、Snowflake、號(hào)段、一大波GUID算法等。
非 partition key 查詢常用映射法解決,映射表用到覆蓋索引的話還是很快的?;蛘呖梢院推渌?DB 組合。
擴(kuò)容要根據(jù)分片時(shí)的策略確定,范圍分片的話就很簡單,而隨機(jī)取模分片就要遷移數(shù)據(jù)了。也可以用范圍 + 取模的模式分片,先取模再范圍,可以避免一定程度的數(shù)據(jù)遷移。
當(dāng)然,如果分庫還會(huì)面臨事務(wù)一致性和跨庫 join 等問題。

1.6.2 讀寫分離

為什么要讀寫分離

分表針對(duì)大表解決 CPU 瓶頸,分庫解決 IO 瓶頸,二者將存儲(chǔ)壓力解決了。但查詢還不一定。

如果落到 DB 的 QPS 還是很高,且讀遠(yuǎn)大于寫,就可以考慮讀寫分離,基于主從模式將讀的壓力分?jǐn)偅苊鈫螜C(jī)負(fù)載過高,同時(shí)也保證了高可用,實(shí)現(xiàn)了負(fù)載均衡。

問題

主要問題有過期讀和分配機(jī)制。

過期讀,也就是主從延時(shí)問題,這個(gè)對(duì)于。
分配機(jī)制,是走主還是從庫。可以直接代碼中根據(jù)語句類型切換或者使用中間件。

1.7 小結(jié)

以上列舉了 MySQL 常見慢查詢?cè)蚝吞幚矸椒?,介紹了應(yīng)對(duì)較大數(shù)據(jù)場景的常用方法。

分庫分表和讀寫分離是針對(duì)大數(shù)據(jù)或并發(fā)場景的,同時(shí)也為了提高系統(tǒng)的穩(wěn)定和拓展性。但也不是所有的問題都最適合這么解決。

2. 如何評(píng)價(jià) ElasticSearch

前文有提到對(duì)于關(guān)鍵字查詢可以使用 ES。那接著聊聊 ES 。

2.1 可以干什么

ES 是基于 Lucene 的近實(shí)時(shí)分布式搜索引擎。使用場景有全文搜索、NoSQL Json 文檔數(shù)據(jù)庫、監(jiān)控日志、數(shù)據(jù)采集分析等。

對(duì)非數(shù)據(jù)開發(fā)來說,常用的應(yīng)該就是全文檢索和日志了。ES 的使用中,常和 Logstash, Kibana 結(jié)合,也成為 ELK 。先來瞧瞧日志怎么用的。

下面是我司日志系統(tǒng)某檢索操作:打開 Kibana 在 Discover 頁面輸入格式如 “xxx” 查詢。

該操作可以在 Dev Tools 的控制臺(tái)替換為:

GET yourIndex/_search    {       "from" : 0, "size" : 10,     "query" : {            "match_phrase" : {                "log" : "xxx"                 }        }    }

什么意思?Discover 中加上 “” 和 console 中的 match_phrase 都代表這是一個(gè)短語匹配,意味著只保留那些包含全部搜索詞項(xiàng),且位置與搜索詞項(xiàng)相同的文檔。

2.2 ES 的結(jié)構(gòu)

在 ES 7.0 之前存儲(chǔ)結(jié)構(gòu)是 Index -> Type -> Document,按 MySQL 對(duì)比就是 database - table - id(實(shí)際這種對(duì)比不那么合理)。7.0 之后 Type 被廢棄了,就暫把 index 當(dāng)做 table 吧。

在 Dev Tools 的 Console 可以通過以下命令查看一些基本信息。也可以替換為 crul 命令。

GET /_cat/health?v&pretty:查看集群健康狀態(tài)GET /_cat/shards?v :查看分片狀態(tài)GET yourindex/_mapping   :index mapping結(jié)構(gòu)GET yourindex/_settings   :index setting結(jié)構(gòu)GET /_cat/indices?v   :查看當(dāng)前節(jié)點(diǎn)所有索引信息

重點(diǎn)是 mapping 和 setting ,mapping 可以理解為 MySQL 中表的結(jié)構(gòu)定義,setting 負(fù)責(zé)控制如分片數(shù)量、副本數(shù)量。

以下是截取了某日志 index 下的部分 mapping 結(jié)構(gòu),ES 對(duì)字符串類型會(huì)默認(rèn)定義成 text ,同時(shí)為它定義一個(gè)叫做 keyword 的子字段。這兩的區(qū)別是:text 類型會(huì)進(jìn)行分詞, keyword 類型不會(huì)進(jìn)行分詞。

"******": {        "mappings": {          "doc": {            "properties": {              "appname": {                "type": "text",                "fields": {                  "keyword": {                    "type": "keyword",                    "ignore_above": 256                  }                }

2.3 ES 查詢?yōu)槭裁纯欤?/h3>

分詞是什么意思?看完 ES 的索引原理你就 get 了。

ES 基于倒排索引。嘛意思?傳統(tǒng)索引一般是以文檔 ID 作索引,以內(nèi)容作為記錄。倒排索引相反,根據(jù)已有屬性值,去找到相應(yīng)的行所在的位置,也就是將單詞或內(nèi)容作為索引,將文檔 ID 作為記錄。

下圖是 ES 倒排索引的示意圖,由 Term index,Team Dictionary 和 Posting List 組成。

圖中的 Ada、Sara 被稱作 term,其實(shí)就是分詞后的詞了。如果把圖中的 Term Index 去掉,是不是有點(diǎn)像 MySQL 了?Term Dictionary 就像二級(jí)索引,但 MySQL 是保存在磁盤上的,檢索一個(gè) term 需要若干次的 random access 磁盤操作。

而 ES 在 Term Dictionary 基礎(chǔ)上多了層 Term Index ,它以 FST 形式保存在內(nèi)存中,保存著 term 的前綴,借此可以快速的定位到 Term dictionary 的本 term 的 offset 。而且 FST 形式和 Term dictionary 的 block 存儲(chǔ)方式都很節(jié)省內(nèi)存和磁盤空間。

到這就知道為啥快了,就是因?yàn)橛辛藘?nèi)存中的 Term Index , 它為 term 的索引 Term Dictionary 又做了一層索引。

不過,也不是說 ES 什么查詢都比 MySQL 快。檢索大致分為兩類。

2.3.1 分詞后檢索

ES 的索引存儲(chǔ)的就是分詞排序后的結(jié)果。比如圖中的 Ada,在 MySQL 中 %da% 就掃全表了,但對(duì) ES 來說可以快速定位

2.3.2 精確檢索

該情況其實(shí)相差是不大的,因?yàn)?Term Index 的優(yōu)勢(shì)沒了,卻還要借此找到在 term dictionary 中的位置。也許由于 MySQL 覆蓋索引無需回表會(huì)更快一點(diǎn)。

2.4 什么時(shí)候用 ES

如前所述,對(duì)于業(yè)務(wù)中的查詢場景什么時(shí)候適合使用 ES ?我覺得有兩種。

2.4.1 全文檢索

在 MySQL 中字符串類型根據(jù)關(guān)鍵字模糊查詢就是一場災(zāi)難,對(duì) ES 來說卻是小菜一碟。具體場景,比如消息表對(duì)消息內(nèi)容的模糊查詢,即聊天記錄查詢。

但要注意,如果需要的是類似廣大搜索引擎的關(guān)鍵字查詢而非日志的短語匹配查詢,就需要對(duì)中文進(jìn)行分詞處理,最廣泛使用的是 ik 。Ik 分詞器的安裝這里不再細(xì)說。

什么意思呢?

分詞

開頭對(duì)日志的查詢,鍵入 “我可真是個(gè)機(jī)靈鬼” 時(shí),只會(huì)得到完全匹配的信息。

而倘若去掉 “”,又會(huì)得到按照 “我”、“可”,“真”….分詞匹配到的所有信息,這明顯會(huì)返回很多信息,也是不符合中文語義的。實(shí)際期望的分詞效果大概是“我”、“可”、“真是”,“機(jī)靈鬼”,之后再按照這種分詞結(jié)果去匹配查詢。

這是 ES 默認(rèn)的分詞策略對(duì)中文的支持不友善導(dǎo)致的,按照英語單詞字母來了,可英語單詞間是帶有空格的。這也是不少國外軟件中文搜索效果不 nice 的原因之一。

對(duì)于該問題,你可以在 console 使用下方命令,測(cè)試當(dāng)前 index 的分詞效果。

POST yourindex/_analyze     {       "field":"yourfield",       "text":"我可真是個(gè)機(jī)靈鬼"     }

2.4.2 組合查詢

如果數(shù)據(jù)量夠大,表字段又夠多。把所有字段信息丟到 ES 里創(chuàng)建索引是不合理的。使用 MySQL 的話那就只能按前文提到的分庫分表、讀寫分離來了。何不組合下。

  1. ES + MySQL
    將要參與查詢的字段信息加上 id,放入 ES,做好分詞。將全量信息放入 MySQL,通過 id 快速檢索。

  2. ES + HBASE
    如果要省去分庫分表什么的,或許可以拋棄 MySQL ,選擇分布式數(shù)據(jù)庫,比如 HBASE , 對(duì)于這種 NOSQL 來說,存儲(chǔ)能力海量,擴(kuò)容 easy ,根據(jù) rowkey 查詢也很快。

以上思路都是經(jīng)典的索引與數(shù)據(jù)存儲(chǔ)隔離的方案了。

當(dāng)然,攤子越大越容易出事,也會(huì)面臨更多的問題。使用 ES 作索引層,數(shù)據(jù)同步、時(shí)序性、mapping 設(shè)計(jì)、高可用等都需要考慮。

畢竟和單純做日志系統(tǒng)對(duì)比,日志可以等待,用戶不能。

2.5 小結(jié)

本節(jié)簡單介紹了 ES 為啥快,和這個(gè)快能用在哪?,F(xiàn)在你可以打開 Kibana 的控制臺(tái)試一試了。

如果想在 Java 項(xiàng)目中接入的話,有 SpringBoot 加持,在 ES 環(huán)境 OK 的前提下,完全是開箱即用,就差一個(gè)依賴了?;镜?CRUD 支持都是完全 OK 的。

3. HBASE

前面有提到 HBASE,什么是 HBASE ,鑒于篇幅這里簡單說說。

3.1 存儲(chǔ)結(jié)構(gòu)

關(guān)系型數(shù)據(jù)庫如 MySQL 是按行來的。

圖片下圖是一個(gè) HBASE 實(shí)際的表模型結(jié)構(gòu)。

Row key 是主鍵,按照字典序排序。TimeStamp 是版本號(hào)。info 和 area 都是列簇(column Family),列簇將表進(jìn)行橫向切割。name、age 叫做列,屬于某一個(gè)列簇,可進(jìn)行動(dòng)態(tài)添加。Cell 是具體的 Value 。

3.2 OLTP 和 OLAP

數(shù)據(jù)處理大致可分成兩大類:聯(lián)機(jī)事務(wù)處理OLTP(on-line transaction processing)、聯(lián)機(jī)分析處理OLAP(On-Line Analytical Processing)。

  • OLTP是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫的主要應(yīng)用,主要是基本的、日常的事務(wù)處理。

  • OLAP是數(shù)據(jù)倉庫系統(tǒng)的主要應(yīng)用,支持復(fù)雜分析,側(cè)重決策支持,提供直觀易懂的查詢結(jié)果。
    面向列的適合做 OLAP,面向行的適用于聯(lián)機(jī)事務(wù)處理(OLTP)。不過 HBASE 并不是 OLAP ,他沒有 transaction,實(shí)際上也是面向 CF 的。一般也沒多少人用 HBASE 做 OLAP 。

3.3 RowKey

HBASE 表設(shè)計(jì)的好不好,就看 RowKey 設(shè)計(jì)。這是因?yàn)?HBASE 只支持三種查詢方式

1、基于 Rowkey 的單行查詢 2、基于 Rowkey 的范圍掃描 3、全表掃描

可見 HBASE 并不支持復(fù)雜查詢。

3.4 使用場景

HBASE 并非適用于實(shí)時(shí)快速查詢。它更適合寫密集型場景,它擁用快速寫入能力,而查詢對(duì)于單條或小面積查詢是 OK 的,當(dāng)然也只能根據(jù) rowkey。但它的性能和可靠性非常高,不存在單點(diǎn)故障。

4. 總結(jié)

個(gè)人覺得軟件開發(fā)是循序漸進(jìn)的,技術(shù)服務(wù)于項(xiàng)目,合適比新穎復(fù)雜更重要。

如何完成一次快速的查詢?最該做的還是先找找自己的 Bug,解決了當(dāng)前問題再創(chuàng)造新問題。

本文列舉到的部分方案對(duì)于具體實(shí)現(xiàn)大多一筆帶過,實(shí)際無論是 MySQL 的分表還是 ES 的業(yè)務(wù)融合都會(huì)面臨很多細(xì)節(jié)和困難的問題,搞工程的總要絕知此事要躬行。

文章轉(zhuǎn)載:DevOps技術(shù)棧
(版權(quán)歸原作者所有,侵刪)


點(diǎn)擊下方“閱讀原文”查看更多

瀏覽 51
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)
評(píng)論
圖片
表情
推薦
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 91免费福利视频| 久久AV片| jjzz亚洲| 少妇AV| 亚洲欧洲在线播放| 加勒比无码在线| 嫩草视频网站| 国产1级a毛a毛1级a毛1级| 欧美熟女性爱视频| 婷婷五月天中文字幕| av资源免费| 亚洲无码一区在线| 91精品国产一区二区三区四区大| 国产中文| 国产区av| 欧美另类色| 免费视频在线观看一区| 手机看片1024久久| www天天操| 亚洲小视频在线观看| 一级Aa视频免费看| 国产一级a毛一级a毛观看视频网站www.jn | 麻豆免费视频| 成人免费毛片蓝莓| 在线观看内射视频| 亚洲国产精品精JIZZ老师| 日韩成人黄色视频| AV无码在线观看| 中文字幕精品亚洲熟女| www.日批| 色猫咪av| 性猛交AAAA片免费观看直播| 骚逼中文字幕| 亚洲A∨| 亚洲无码视频免费在线观看| 久久超碰精品| www.豆花福利视频| 狠狠搞狠狠操| 日本肏逼视频| 日逼视频| 77777色婷婷| 成人做爰黄AAA片免费直播岛国| 四虎成人精品在永久免费| 日日久视频| 一牛影视精品av| 在线亚洲福利| 亚洲无码自拍| 九九热精品在线视频| 91精品国产麻豆国产自产在线 | 大鸡巴日小逼| 欧美激情内射| 一本一道久久综合狠狠躁牛牛影视| 亚洲成人在线网站| 日韩中文字幕人妻| 国产迷奸视频| 国产A级片| 人人综合网| 伊人啪啪| 久久久久久一| 北条麻妃一区二区三区-免费免费高清观看| 毛片一级| 少妇人妻无码| 日韩高清无码人妻| 黄色在线免费观看网站| 欧美日韩亚洲天堂| 丁香婷婷综合网| 91破处网站| 中文字幕自拍偷拍| 天天日天天干麻豆| 大香蕉久久| 国产18| 九九这里有精品| 亚洲精品911| 丁香五月婷婷啪啪| 久久无码在线观看| 久久久久黄片| 人妻熟女在线视频| 久久综合伊人7777777| 婷婷视频网站| 人人操碰成人网| 成人A毛片| 天堂资源网| 99无码视频| 91女人18毛片水多的意思| 色综合一区二区| 一级片av| 天堂资源中文在线| 女同久久另类99精品国产91 | 欧美激情在线观看| 亚洲一区二区AV| 可以免费看的黄色| 五月丁香婷婷基地| 爱爱免费不卡视频| 国产无码高清在线观看| 做a视频| 精品无人区无码乱码毛片国产 | 麻豆免费福利视频| 精品久久久久久久| 性爱免费视频| 黄色三级视频| 91久久精品日日躁夜夜躁国产| 国产电影一区二区三区| 国产AⅤ爽aV久久久久成人| 欧美成人午夜视频| 亚洲久久久久久| 国产中文在线观看| 国产综合婷婷| 在线无码中文| 成人三级毛片| 激情无码国产| 亚洲三级黄色| 91性爱网| 欧美女人操逼| 黑人无码AV黑人天堂无码AV| 日韩无码黄片| 无码免费视频在线观看| 中文字幕在线不卡| 国产成人精品一区二三区熟女在线 | 在线免费看黄视频| 熟妇熟女一区二区三区| 青春草在线免费视频| 黄色一级片免费观看| 91在线永久| 天干天干天夜夜| 亚洲码成人| 国产三级免费观看| 亚洲片在线观看| 玖玖爱在线精品视频| 牛牛精品一区| 成人网站高清无码| 久久久人妻熟妇精品无码蜜桃| 欧洲成人午夜精品无码区久久| 男人日女人视频| 日韩在线播放视频| AV无码在线播放| 97三级| AV免费在线播放| 一级A片免费视频| 狠狠干大香蕉| 亚洲,制服,综合,中文| www中文字幕| 亚洲免费成人网站| 香蕉久久a毛片| 欧美黄色性爱视频| 大香蕉在线观看视频| 99热这里只有精| 自拍偷拍15p| 色婷婷激情视频| 国产小视频在线播放| 久久免费视频播放| 哪里可以看毛片| 国内精品久久久| 男人的天堂黄色| 中文字幕在线观看视频www| 99久久久成人国产精品| 91麻豆大奶巨乳一区白虎| 日本A片一级| 美女裸体网站国产| 嫩BBB搡BBB搡BBB四川| 日韩免费高清无码视频| 免费黄色视频网站在线观看| R四虎18| av在线免费观看网站| 高潮国产视频| 亚洲va国产天堂va久久en| 国产免费操逼视频| 51黄片| 激情av天堂| 日本少妇bbw| 欧美操美女| 国产精品久久久久久婷婷天堂| 高清无码在线视频观看| 韩国三级HD久久精品HD| 日本爱爱视频免费| 丰满的人妻一区二区三区果冻| 国产色视频| 色骚爽大香蕉91| 大香蕉视频国产| 天天久久毛片| 中文熟妇| 四虎成人网址| 国产永久免费| 国产1区| 一区二区三区操逼| 精品吃奶一区二区三区视频| 久久嫩草| 中文字幕av第一页| 人人肏人人摸| 日韩一区二区视频| a级黄色视频免费观看| 亚洲国产精品自| 先锋影音资源一区| 操逼激情网| 看黄色一级片| 伊人东京热| 国产三级电影| 国产女人18毛片水真多18| 国产色无码网站www色视频| 久久黄色视频免费观看| 无码免费视频观看| 欧美9999| 思思久久高颜值| 亚洲一区黄色| 亚洲色图1| 亚洲无码手机在线观看| 色综合色综合| 色婷婷丁香五月| 亚洲一本色道中文无码| 99精品视频免费在线观看| 中国免费XXXX18| 免费看的黄色视频| 五月丁香网站| 久久人妻视频| 特级444www| 五月天色色网站| 国产福利视频导航| 久久精品99| 黄色性视频| 伊人久久精品| 亚洲福利一区| 国产激情在线播放| 亚洲成人性爱av| 在线A片免费观看| 国产99精品视频| 怡红院综合网| 一区二区三区四区五区在线| 51XX嘿嘿午夜| 蜜芽视频| 中文字幕无码人妻在线视频| H无码| 欧美三级在线| 无码三级在线播放| 天天射夜夜操| 欧美夜夜操| 亚洲成人AV| 成人三级视频在线| 国产99久久久| 99久久精品国产精品有折扣吗 | 苍井空精毛片精品久久久| 日本亚洲中文字幕| 日本精品无码a62v在线| 成人免费在线视频| 97色色婷婷五月天| 欧美国产综合| 色哟哟国产精品| 免费av网站| 高清无码网站在线观看| 一道本无码在线播放| 精品国产乱码久久久久久郑州公司 | 国产成人无码区免费视频| 俺去也俺去啦| 久久在线免费视频| 久久这里| 国产精品51麻豆cm传媒| 日韩欧美在线中文字幕| 亚洲AV成人精品日韩在线播放| 99热大香蕉| 在线不卡中文字幕| 国产网址| 一级片在线观看视频| 欧美黄色网视频| 亚洲3p| 欧美精品18| 超碰欧美| 大香蕉青青| 婷婷国产精品| 日韩一区二区三区视频| 激情婷婷亚洲| 中文字幕精品在线视频| 亚洲免费专区| 91麻豆精品在线| 丁香激情五月少妇| 华女与黑人91A∨| 青青娱乐亚洲无| 日韩久久精品视频| 精品视频99| 久久久久久无码日韩欧美电影| 自拍欧美亚洲| 日韩午夜剧场| 亚洲色图p| 成人免费黄色网| 一级爱爱片| 欧美亚洲国产精品| 北条麻妃在线一区二区| 91夫妻视频| 国产人与禽zoz0性伦| 亚洲精品国产AV婷婷| 欧美AAAAAA| 成人黄色大香蕉| 97精品人妻一区二区| 日韩av免费在线观看| 午夜亚洲AV永久无码精品蜜芽| 美女做爱视频网站| 女人一级A片色黄情免费| 欧美黄片免费视频| 亚洲欧美日韩另类| 日本爱爱网站| 久久你懂的| 91无码人妻一区二区| 久草福利在线| 五十路熟妇| 波多野结衣高清无码视频| 人人妻人人澡| 一区二区三区四区av| 国模私拍视频| 亚洲国产成人精品午夜| 蜜臀久久99精品久久久久酒店更新时间 | 在线看的av| 日韩亚洲欧美在线观看| 亚洲天堂AB| 久久久久亚洲AV无码网影音先锋 | 九色蝌蚪9l视频蝌蚪9l视频成人熟妇| 最新中文字幕免费MV第一季歌词| 一本大道香蕉av久久精东影业| 翔田千里无码AV在线观看| 日韩色网站| 熟女啪啪| 人人亚洲| 激情淫荡少妇| 欧美三p| 苍井空一区二区| 日韩无码波多野结衣| 很很干在线视频| 日韩精品欧美一区二区三区| 逼逼爱| www.久久99| 草比网站| 性插视频| 久久久久久久三级片| 一本色道久久综合无码| 在线免费看黄色| 成年人视频网| 麻豆91精品人妻成人无码| 在线看一区二区三区| 日韩精品人妻中文字幕第4区| av干在线| 日韩在线成人视频| 三级片无码| 手机在线操B视频| 日皮视频免费观看| 7777精品伊人久久7777| 亚洲精品第一页| 欧美一级AAA大片免费观看 | 免费看黄色视频| 粉嫩99国产精品久久久久久人妻 | 操B在线| 撸一撸免费视频| 免费黄色一级片| 欧美a片在线看| 日本久久网站| 日本久久不卡| 国产操操操| 日韩精彩视频| 91免费高清视频| 91羞射短视频在线观看| 俺也去五月婷婷| 狼友初视频在线观看| 亚洲电影在线| 99久热| 熟妇熟女一区二区三区| 国产AV影院| 成熟的国模冰莲[2]| 欧美激情在线| 五月丁香欧美综合| 国产黄色自拍视频| 91蝌蚪视频在线播放| 日本www色| 日韩无码一二三区| 黄色A片网站| 精品素人在线| 97人妻精品一区二区三区| 国产性爱免费视频| 香蕉视频91| 无码一页| 苍井空一区| 日韩永久免费| 日韩加勒比| 久操网在线| 爽好紧别夹喷水欧美| 国产精品精品精品| 大香蕉97| 成年免费视频| 中文字幕操逼网站| 国产女主播在线| 色丁香视频在线观看的| 特级婬片AAAAAAA级| 无码精品一区二区三区在线播放| 欧洲成人在线观看| 亚洲AV无码成人精品区东京热| 亚洲无码成人视频| 特一级黄A片| 97激情| 色婷婷综合视频| 亚洲国产高清无码| 国产精品同| 国产一级18片视频| 婷婷激情视频| 日逼片A| sese在线| 日韩电影免费在线观看| 高清无码在线观看免费| 又大又粗AV| 亚洲理论片| 成年人黄色在线观看| 51成人网站| 亚洲激情无码视频| 一本到在线观看午夜剧场| 操屄网| 亚洲视频1区| 欧美色就是色| 国产精品资源在线观看| 五月丁香色婷婷| 黄片免费高清| 四川少妇BBB凸凸凸BBB安慰我| 麻豆三级片在线观看| 五月天婷婷在线播放视频免费观看| 黄片免费视频在线观看| 亚洲中文免费观看| 亚洲中文在线视频| 亚洲一区二区在线播放| 九九中文字幕| 久久aa| 91大神在线免费观看| 日韩综合一区| 中文一区在线| 国产在线成人视频| v在线| 人妻丰满精品一区二区| 高清一区二区三区| 蜜桃Av噜噜一区| 西西444大胆无码视频| 另类小说五月天| 精品视频在线看| 无码人妻一区二区三区免费九色| 午夜久久电影| 一级视频免费观看| 黄片视频网站| 亚洲AV成人无码一区二区三区 | 日韩一区二区视频| 谁有毛片网站| 精国产品一区二区三区A片| 久久精品视频免费观看| 日本啪啪网站| 国产午夜男女性爱| 成人肏屄视频| 亚洲中文无码av| 久青草视频| 国产亚洲欧美精品综合在线| 91麻豆成人精品国产| 性少妇| 日韩欧美成人在线视频| 日韩性爱视频在线播放| 久久久久久AV| 国产精品久久免费| 91色色网| 中国字幕在线观看韩国电影| 国产小电影在线观看| 亚洲无码一级电影| 性日韩| 国产成人无码一区二区在线播放 | 在线不卡中文字幕| 99无码秘蜜桃人妻一区二区三区| 无码中文字幕在线视频| 免费看黄色大全| 青青伊人网| 日本成人网址| 亚洲久爱| 中文字幕AV在线播放| 亚洲午夜在线| 人妻中文字幕久久| 精品熟女| 国产无码播放| 日韩无码视频一区二区| 无码射精电影| 久久亚洲婷婷| 猛男大粗猛爽H男人味| 亚洲日韩欧美性爱| 亚洲清高毛无码毛片| 日韩,变态,另类,中文,人妻| 艹b视频在线观看| 白浆AV| 2019国产精品| 国产午夜福利视频在线观看| 激情网页| 777视频在线观看| av黄色网址| 韩国高清无码60.70.80| 久操视频在线免费观看| 北条麻妃在线一区二区| 丁香色婷婷五月天| 亚洲视频一区二区| 亚洲成人无码在线播放| 99re视频在线播放| 肏逼网| 中文字幕第2页| 五月丁香婷婷基地| 一区二区高清无码视频| 91牛| 午夜成人视频在线观看| 亚洲无码中文字幕在线| 免费无码A片在线观看全| 无码免费一区二区| 999国产视频| 无码国产99精品久久久久网站| 色呦呦一欧美| 人人射人人操| 露脸老熟女91集合| 日本一级婬片A片免费播放一| 淫秽视频免费看| 欧美va| 欧美日韩精品一区二区三区视频播放| 成人毛片在线大全免费| 国产有码| 天天干天天舔| 一个人看的www日本高清视频 | 亚洲欧美日韩中文字幕在线观看| 日韩无任何视频在线观看| 在线观看者亚洲| 中文子幕免费毛片| 久久av一区二区三区观看| a亚洲天堂| 国产高清无码自拍| caopeng97| 国产麻豆传媒| 99热精品久久| 亚洲激情小说| 成人无码区免费A片| 无码水蜜桃一区二区| 天天拍夜夜爽| 中文字幕在线观看1| 国产在线观看国产精品产拍| 九色PORN视频成人蝌蚪自拍| 北条麻妃91视频| 精品国产一区二区三区性色AV| 爱爱毛片| 在线看国产| chinese搡老熟老妇人| 日欧一级片| 脓肿是什么原因引起的,该怎么治疗 | 日韩1区| 无码在线免费播放| 精品久久三级片| 欧美中文字幕| 边摸边做| 囯产精品久久久久久久| 大香蕉国产在线视频| 欧美怡红院视频| 一本到在线观看午夜剧场| 免费在线黄色电影| 国产91在线观看| 在线视频污| 亚洲色伦| 久久99草| 欧美爱爱网| 亚洲天堂视频在线| 激情无码在线观看| av天堂中文| 国产69视频在线观看| 欧美一级成人片| 国产久久视频在线观看| 影音先锋自拍| 久久久毛片| 足浴小少妇-88AX| 国产欧美黄片| 国精品无码人妻一区二区三区| 一级片黄色免费| 18禁黄网站| a在线免费观看| 伊人久久国产| 大香蕉大香蕉视频网| 特黄无码| 91AV久久| 亚洲精品一区二区三区蜜桃| 91精品久久久久久| 欧美性爱-熊猫成人网| 欧美成人超碰| 成人精品秘免费波多野结衣| 伊人久久AV| 人人爱人人爽人人操| 黄色内射在线播放| 久久精品视频免费| 青娱乐网| 91人妻人人澡人人爽人人精 | 无码在线免费观看| 青娱乐在线成人| 国产又粗又长| 91爽爽| Chinese搡老女人| 日韩不卡AV| 日韩AV电影网站| 人人操97| 囯产伦精一区二区三区四区| 亚洲Japanese办公室制服| 国产激情自拍| 男女www| 国产成人视频免费在线观看| 日韩欧美一级| 四虎黄色网| 大香蕉av在线观看| 青娱乐最新官网| 91香蕉视频免费在线观看| 亚洲成年网| 日日干网| 超碰91免费在线观看| 国产精品久久久一区二区三区| 91蜜桃婷婷狠狠久久综合9色| 伊人色五月| 欧美日韩一级视频| 毛片毛片毛片毛片毛片毛片| 黄片小视频在线观看| wwwAV在线观看| 欧美综合自拍| 亚洲午夜激情电影| AV在线大香蕉| 5252a我爱haose01我愿| 国产精品乱草| 日韩综合色视频导航| 久久精品99| 夜夜欢天天干| 黄色视频网站免费在线观看| 久久人人爱| 久操视频免费| 91麻豆精品国产91久久久吃药| 麻豆成人网| 69视频在线播放| 成年人视频网| 日韩二三区| 中文√在线天堂8| 欧美成人乱码一区二区三区| 久久草草热国产精| 欧美亚洲国产精品| 日韩人妻无码一区二区三区中文| 日本熟女视频| 欧美日韩一区二区在线| 国产精品秘久久久久久| 中文字幕精品无码一区二区| 亚洲成人三级| 欧美亚洲黄片| 动图综合亚洲综合欧美男男| 日本操屄视频| 91porn在线观看| 青娱乐成人网| 国产日韩性爱视频| 一级无码专区| 免费一区二区三区| 三级网站在线| 一级片免费在线观看| 操操操操操操| 亚洲精品秘一区二区三区蜜桃久 | 456成人| 欧美一级片免费观看| 亚洲男女内射| 国产凹凸视频在线观看| 91成人免费在线观看| 亚洲无码伊人| 91精品国产乱码久久久| 日韩七区| A视频免费在线观看| 四色婷婷| 精品免费黄色视频| 人人操人人看人人干| 女人久久久久| 欧美精品国产动漫| 日韩欧美日韩| 日日骚亚洲| 九月婷婷综合| 午夜亚洲视频| 欧美一区二区三区四| 日本黄色大片网站| 一级黄在线观看| 爱搞逼综合网| 微拍福利一区二区| 中文在线一区| 国产在线视频你懂的| 中文字幕一区二区三区四区50岁 | 国产一片黑夜内射| 国产黃色AAA片| 国产欧美黄片| а中文在线天堂精品| 性爱AV在线| 国产精品婷婷久久久| 最新中文字幕在线观看视频| 亚洲视频欧美| 西西444WWW无码精品| 日韩成人一区二区| 国产精品93333333| 亚洲色婷婷综合| www.俺来也| 狠狠干狠狠撸| www.久久99| 伊人网综合| 91爱搞搞| 无限高潮| 亚洲国产黄片| 中文字幕自拍偷拍| 二区三区在线观看| 亚洲AV国产| 在线观看黄色网页| 可以免费观看的毛片| 日比视频网站| wwwsesese| 青青色在线观看| 国产综合久久777777麻豆| 一级欧美| 男女午夜福利| 一级爱爱| 黄色一级视频| 在线观看国产区| 亚洲人人妻| 北条麻妃九九九精品视频免费观看| 躁BBB躁BBB躁BBBBBB日视频| 亚洲V| 丰满熟妇高潮呻吟无码| 奇米AV| a片小视频| 操逼视频高清无码| 日韩AV免费看| 99AV| 新妺妺窝窝777777野外| 欧美日韩国产不卡视频| 加勒比色综合| 免费福利在线观看| 日韩国产在线观看| 正在播放李彩斐被洋老外| 天天色网站| 亚洲成人77777| 国产女人与禽zOz0性| 国产毛片精品一区二区色欲黄A片| 国产视频激情| 国产无套免费网站69| 欧美v日韩| 青青草在线视频免费观看| 91亚洲国产| 日韩成人无| 52妺嘿嘿午夜福利在线| 就爱av| 成人久久综合| 嫰BBB槡BBBB槡BBBB| 一级特黄AAAA片| 国产精品一二区| 国产一区二区三区在线| AAA片网站| 欧美乱欲视频| 人人干超碰| aaaaaa在线观看免费高清 | 九九综合久久| 17.3c一起起草| 天天日毛片| 性欧美丰满熟妇XXXX性久久久| 国产乱子伦真实精品!| 亚洲乱伦小说网| 日本高清无码在线观看| 亚洲AV激情无码专区在线播放| 天天干天天操| gogogo高清在线观看免费直播中国| 午夜亚洲福利视频| 99久在线精品99re8| 国产精品欧美性爱| 久久天天操| 亚洲无码理论片| 草B视频| 欧美A一| A级片在线观看| 欧美婷婷在线| H片在线免费观看| 少妇bbb搡bbbb搡bbbb| 亚洲精品伊人| 成人AV中文解说水果派| 大香蕉操逼视频| 欧美性爱超碰| 亚洲欧洲自拍| 97人妻精品一区二区三区免| 国产学生妹| 亚洲国产成人综合| 老骚老B老太太BBW| 蜜桃av秘一区二区三区| 亚洲日本中文字幕在线观看| 男女av网站| 青青草免费观看视频| 中文字幕网址在线| 高清无码在线免费观看| 中文字幕五月久久婷婷| 久久久123| 亚洲九区| 中文字幕第6页| 天天日夜夜爽| 先锋影音男人| 99国产一区| 无码中文字幕在线视频| 久久久久久久免费视频| 免费爱爱视频| 久久狠狠干| 黄片网址大全| 亚洲无码一二三| AV天堂亚洲| 丁月婷婷五香天日五月天| 西西888WWW大胆视频| 97国产精品久久| 99国产精品99久久久久久粉嫩 | 超碰综合| 欧美嗯啊| 熟女人妻人妻HD| 亚洲AV无码一区东京热久久| 天天操人人射| 日韩插泄| 成人亚洲电影| 国产在线97| 天天日天天操天天射| 国产高清无码在线观看视频| 成人午夜A片免费看| 7777av| 亚洲AV一二三区| 亚洲少妇网| 一级黄片在线| 精品乱子伦一区二区三区在线播放| 国产免费黄色片| 日韩免费高清| 成人免费一级视频| 成人久久综合| 日本欧美亚洲| 人人看人人摸| 豆花视频在线播放| 一道本无码在线观看| 日韩高清一区二区| 亚洲性爱专区| 亚洲中文免费观看| 囯产精品一区二区三区线一牛影视1 | 青青草手机在线视频| 91精品国产人妻| 无码视频在线免费播放| www.激情五月天| 51无码| 日本少妇高潮喷水XXXXXXX| 波多野结衣无码在线视频| 青娱乐网| 欧美footjob高跟脚交| 香蕉91| 亚洲A网| 日逼无码| 午夜伦理福利| 牛牛AV在线| AV无码网站| 色婷婷激情五月天| 激情无码在线观看| 国产无码中文字幕| 大香蕉在线视频99| 性爱xxxxx| 欧美日韩国产激情| 操逼的网站| 特级特黄A级高潮播放| 亚洲五区| 自拍偷拍15p| 99热这里只有精品999| 69亚洲视频| 搞黄免费视频视频| 一区二区三区电影高清电影免费观看 | 国产在线视频导航| 成年人黄色片| 日韩黄在线| 精品无码蜜桃| 欧美夜夜操| 亚卅毛片| 午夜ww| 亚洲无码AV一区二区三区| 亚洲大哥天天干| 欧美成人精品激情在线观看| 亚洲高清无码在线免费观看| 99在线精品视频| 日韩V片| 少妇白洁视频| 97爱爱| 亲孑伦XXXⅹ熟女| av影音在线| 人人操人人爽| 欧美在线视频一区二区| 狼友视频在线免费观看| 亚洲激情| 爱爱综合| 精品乱子伦一区二区三区免费播放 | 日本AA片视频| 免费看黃色AAAAAA片| 成人电影三区| 五月婷婷六月婷婷| 精品人妻一区二区三区-国产精品| 亚洲激情视频网站| 成人小视频在线| 黄色片在线免费看| 国产精品探花熟女| 成人大片在线观看| 天堂一区二区三区| 梁祝艳谭A级毛片| 国产毛片一区二区| 影音先锋人妻限定| 免费高清无码| 亚洲天堂视频在线| 国产精品女人精品久久久天天| 先锋资源一区| 欧美三P囗交做爰| 成人动漫免费观看| 中文字幕日韩电影|