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

我們?yōu)槭裁匆謳旆直恚?/h1>

運(yùn)維 數(shù)據(jù)庫運(yùn)維
從機(jī)器的角度看,性能瓶頸無非就是CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)這些,要解決性能瓶頸最簡單粗暴的辦法就是提升機(jī)器性能,但是通過這種方法成本和收益投入比往往又太高了,不劃算,所以重點(diǎn)還是要從軟件角度入手。

[[378312]]

在文章開頭先拋幾個問題:

(1)什么時(shí)候才需要分庫分表呢?我們的評判標(biāo)準(zhǔn)是什么?

(2)一張表存儲了多少數(shù)據(jù)的時(shí)候,才需要考慮分庫分表?

(3)數(shù)據(jù)增長速度很快,每天產(chǎn)生多少數(shù)據(jù),才需要考慮做分庫分表?

這些問題你都搞清楚了嗎?相信看完這篇文章會有答案。

為什么要分庫分表?

首先回答一下為什么要分庫分表,答案很簡單:數(shù)據(jù)庫出現(xiàn)性能瓶頸。用大白話來說就是數(shù)據(jù)庫快扛不住了。

數(shù)據(jù)庫出現(xiàn)性能瓶頸,對外表現(xiàn)有幾個方面:

  • 大量請求阻塞

在高并發(fā)場景下,大量請求都需要操作數(shù)據(jù)庫,導(dǎo)致連接數(shù)不夠了,請求處于阻塞狀態(tài)。

  • SQL 操作變慢

如果數(shù)據(jù)庫中存在一張上億數(shù)據(jù)量的表,一條 SQL 沒有命中索引會全表掃描,這個查詢耗時(shí)會非常久。

  • 存儲出現(xiàn)問題

業(yè)務(wù)量劇增,單庫數(shù)據(jù)量越來越大,給存儲造成巨大壓力。

從機(jī)器的角度看,性能瓶頸無非就是CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)這些,要解決性能瓶頸最簡單粗暴的辦法就是提升機(jī)器性能,但是通過這種方法成本和收益投入比往往又太高了,不劃算,所以重點(diǎn)還是要從軟件角度入手。

數(shù)據(jù)庫相關(guān)優(yōu)化方案

數(shù)據(jù)庫優(yōu)化方案很多,主要分為兩大類:軟件層面、硬件層面。

軟件層面包括:SQL 調(diào)優(yōu)、表結(jié)構(gòu)優(yōu)化、讀寫分離、數(shù)據(jù)庫集群、分庫分表等;

硬件層面主要是增加機(jī)器性能。

SQL 調(diào)優(yōu)

SQL 調(diào)優(yōu)往往是解決數(shù)據(jù)庫問題的第一步,往往投入少部分精力就能獲得較大的收益。

SQL 調(diào)優(yōu)主要目的是盡可能的讓那些慢 SQL 變快,手段其實(shí)也很簡單就是讓 SQL 執(zhí)行盡量命中索引。

開啟慢 SQL 記錄

如果你使用的是 Mysql,需要在 Mysql 配置文件中配置幾個參數(shù)即可。

  1. slow_query_log=on 
  2. long_query_time=1 
  3. slow_query_log_file=/path/to/log 

調(diào)優(yōu)的工具

常常會用到 explain 這個命令來查看 SQL 語句的執(zhí)行計(jì)劃,通過觀察執(zhí)行結(jié)果很容易就知道該 SQL 語句是不是全表掃描、有沒有命中索引。

  1. select id, age, gender from user where name = '愛笑的架構(gòu)師'

返回有一列叫“type”,常見取值有:

ALL、index、range、 ref、eq_ref、const、system、NULL(從左到右,性能從差到好)

ALL 代表這條 SQL 語句全表掃描了,需要優(yōu)化。一般來說需要達(dá)到range 級別及以上。

表結(jié)構(gòu)優(yōu)化

以一個場景舉例說明:

“user”表中有 user_id、nickname 等字段,“order”表中有order_id、user_id等字段,如果想拿到用戶昵稱怎么辦?一般情況是通過 join 關(guān)聯(lián)表操作,在查詢訂單表時(shí)關(guān)聯(lián)查詢用戶表,從而獲取導(dǎo)用戶昵稱。

但是隨著業(yè)務(wù)量增加,訂單表和用戶表肯定也是暴增,這時(shí)候通過兩個表關(guān)聯(lián)數(shù)據(jù)就比較費(fèi)力了,為了取一個昵稱字段而不得不關(guān)聯(lián)查詢幾十上百萬的用戶表,其速度可想而知。

這個時(shí)候可以嘗試將 nickname 這個字段加到 order 表中(order_id、user_id、nickname),這種做法通常叫做數(shù)據(jù)庫表冗余字段。這樣做的好處展示訂單列表時(shí)不需要再關(guān)聯(lián)查詢用戶表了。

冗余字段的做法也有一個弊端,如果這個字段更新會同時(shí)涉及到多個表的更新,因此在選擇冗余字段時(shí)要盡量選擇不經(jīng)常更新的字段。

架構(gòu)優(yōu)化

當(dāng)單臺數(shù)據(jù)庫實(shí)例扛不住,我們可以增加實(shí)例組成集群對外服務(wù)。

當(dāng)發(fā)現(xiàn)讀請求明顯多于寫請求時(shí),我們可以讓主實(shí)例負(fù)責(zé)寫,從實(shí)例對外提供讀的能力;

如果讀實(shí)例壓力依然很大,可以在數(shù)據(jù)庫前面加入緩存如 redis,讓請求優(yōu)先從緩存取數(shù)據(jù)減少數(shù)據(jù)庫訪問。

緩存分擔(dān)了部分壓力后,數(shù)據(jù)庫依然是瓶頸,這個時(shí)候就可以考慮分庫分表的方案了,后面會詳細(xì)介紹。

硬件優(yōu)化

硬件成本非常高,一般來說不可能遇到數(shù)據(jù)庫性能瓶頸就去升級硬件。

在前期業(yè)務(wù)量比較小的時(shí)候,升級硬件數(shù)據(jù)庫性能可以得到較大提升;但是在后期,升級硬件得到的收益就不那么明顯了。

分庫分表詳解

下面我們以一個商城系統(tǒng)為例逐步講解數(shù)據(jù)庫是如何一步步演進(jìn)。

單應(yīng)用單數(shù)據(jù)庫

在早期創(chuàng)業(yè)階段想做一個商城系統(tǒng),基本就是一個系統(tǒng)包含多個基礎(chǔ)功能模塊,最后打包成一個 war 包部署,這就是典型的單體架構(gòu)應(yīng)用。

商城項(xiàng)目使用單數(shù)據(jù)庫

如上圖,商城系統(tǒng)包括主頁 Portal 模板、用戶模塊、訂單模塊、庫存模塊等,所有的模塊都共有一個數(shù)據(jù)庫,通常數(shù)據(jù)庫中有非常多的表。

因?yàn)橛脩袅坎淮螅@樣的架構(gòu)在早期完全適用,開發(fā)者可以拿著 demo到處找(騙)投資人。

一旦拿到投資人的錢,業(yè)務(wù)就要開始大規(guī)模推廣,同時(shí)系統(tǒng)架構(gòu)也要匹配業(yè)務(wù)的快速發(fā)展。

多應(yīng)用單數(shù)據(jù)庫

在前期為了搶占市場,這一套系統(tǒng)不停地迭代更新,代碼量越來越大,架構(gòu)也變得越來越臃腫,現(xiàn)在隨著系統(tǒng)訪問壓力逐漸增加,系統(tǒng)拆分就勢在必行了。

為了保證業(yè)務(wù)平滑,系統(tǒng)架構(gòu)重構(gòu)也是分了幾個階段進(jìn)行。

第一個階段將商城系統(tǒng)單體架構(gòu)按照功能模塊拆分為子服務(wù),比如:Portal 服務(wù)、用戶服務(wù)、訂單服務(wù)、庫存服務(wù)等。

多應(yīng)用單數(shù)據(jù)庫

如上圖,多個服務(wù)共享一個數(shù)據(jù)庫,這樣做的目的是底層數(shù)據(jù)庫訪問邏輯可以不用動,將影響降到最低。

多應(yīng)用多數(shù)據(jù)庫

隨著業(yè)務(wù)推廣力度加大,數(shù)據(jù)庫終于成為了瓶頸,這個時(shí)候多個服務(wù)共享一個數(shù)據(jù)庫基本不可行了。我們需要將每個服務(wù)相關(guān)的表拆出來單獨(dú)建立一個數(shù)據(jù)庫,這其實(shí)就是“分庫”了。

單數(shù)據(jù)庫的能夠支撐的并發(fā)量是有限的,拆成多個庫可以使服務(wù)間不用競爭,提升服務(wù)的性能。

多應(yīng)用多數(shù)據(jù)庫

如上圖,從一個大的數(shù)據(jù)中分出多個小的數(shù)據(jù)庫,每個服務(wù)都對應(yīng)一個數(shù)據(jù)庫,這就是系統(tǒng)發(fā)展到一定階段必要要做的“分庫”操作。

現(xiàn)在非常火的微服務(wù)架構(gòu)也是一樣的,如果只拆分應(yīng)用不拆分?jǐn)?shù)據(jù)庫,不能解決根本問題,整個系統(tǒng)也很容易達(dá)到瓶頸。

分表

說完了分庫,那什么時(shí)候分表呢?

如果系統(tǒng)處于高速發(fā)展階段,拿商城系統(tǒng)來說,一天下單量可能幾十萬,那數(shù)據(jù)庫中的訂單表增長就特別快,增長到一定階段數(shù)據(jù)庫查詢效率就會出現(xiàn)明顯下降。

因此,當(dāng)單表數(shù)據(jù)增量過快,業(yè)界流傳是超過500萬的數(shù)據(jù)量就要考慮分表了。當(dāng)然500萬只是一個經(jīng)驗(yàn)值,大家可以根據(jù)實(shí)際情況做出決策。

那如何分表呢?

分表有幾個維度,一是水平切分和垂直切分,二是單庫內(nèi)分表和多庫內(nèi)分表。

水平拆分和垂直拆分

就拿用戶表(user)來說,表中有7個字段:id,name,age,sex,nickname,description,如果 nickname 和 description 不常用,我們可以將其拆分為另外一張表:用戶詳細(xì)信息表,這樣就由一張用戶表拆分為了用戶基本信息表+用戶詳細(xì)信息表,兩張表結(jié)構(gòu)不一樣相互獨(dú)立。但是從這個角度來看垂直拆分并沒有從根本上解決單表數(shù)據(jù)量過大的問題,因此我們還是需要做一次水平拆分。

拆分表

還有一種拆分方法,比如表中有一萬條數(shù)據(jù),我們拆分為兩張表,id 為奇數(shù)的:1,3,5,7……放在 user1, id 為偶數(shù)的:2,4,6,8……放在 user2中,這樣的拆分辦法就是水平拆分了。

水平拆分的方式也很多,除了上面說的按照 id 拆表,還可以按照時(shí)間維度取拆分,比如訂單表,可以按每日、每月等進(jìn)行拆分。

  • 每日表:只存儲當(dāng)天的數(shù)據(jù)。
  • 每月表:可以起一個定時(shí)任務(wù)將前一天的數(shù)據(jù)全部遷移到當(dāng)月表。
  • 歷史表:同樣可以用定時(shí)任務(wù)把時(shí)間超過 30 天的數(shù)據(jù)遷移到 history表。

總結(jié)一下水平拆分和垂直拆分的特點(diǎn):

  • 垂直切分:基于表或字段劃分,表結(jié)構(gòu)不同。
  • 水平切分:基于數(shù)據(jù)劃分,表結(jié)構(gòu)相同,數(shù)據(jù)不同。

單庫內(nèi)拆分和多庫拆分

拿水平拆分為例,每張表都拆分為了多個子表,多個子表存在于同一數(shù)據(jù)庫中。比如下面用戶表拆分為用戶1表、用戶2表。

單庫拆分

在一個數(shù)據(jù)庫中將一張表拆分為幾個子表在一定程度上可以解決單表查詢性能的問題,但是也會遇到一個問題:單數(shù)據(jù)庫存儲瓶頸。

所以在業(yè)界用的更多的還是將子表拆分到多個數(shù)據(jù)庫中。比如下圖中,用戶表拆分為兩個子表,兩個子表分別存在于不同的數(shù)據(jù)庫中。

多庫拆分

一句話總結(jié):分表主要是為了減少單張表的大小,解決單表數(shù)據(jù)量帶來的性能問題。

分庫分表帶來的復(fù)雜性

既然分庫分表這么好,那我們是不是在項(xiàng)目初期就應(yīng)該采用這種方案呢?不要激動,冷靜一下,分庫分表的確解決了很多問題,但是也給系統(tǒng)帶來了很多復(fù)雜性,下面簡要說一說。

(1)跨庫關(guān)聯(lián)查詢

在單庫未拆分表之前,我們可以很方便使用 join 操作關(guān)聯(lián)多張表查詢數(shù)據(jù),但是經(jīng)過分庫分表后兩張表可能都不在一個數(shù)據(jù)庫中,如何使用 join 呢?

有幾種方案可以解決:

  • 字段冗余:把需要關(guān)聯(lián)的字段放入主表中,避免 join 操作;
  • 數(shù)據(jù)抽象:通過ETL等將數(shù)據(jù)匯合聚集,生成新的表;
  • 全局表:比如一些基礎(chǔ)表可以在每個數(shù)據(jù)庫中都放一份;
  • 應(yīng)用層組裝:將基礎(chǔ)數(shù)據(jù)查出來,通過應(yīng)用程序計(jì)算組裝;

(2)分布式事務(wù)

單數(shù)據(jù)庫可以用本地事務(wù)搞定,使用多數(shù)據(jù)庫就只能通過分布式事務(wù)解決了。

常用解決方案有:基于可靠消息(MQ)的解決方案、兩階段事務(wù)提交、柔性事務(wù)等。

(3)排序、分頁、函數(shù)計(jì)算問題

在使用 SQL 時(shí) order by, limit 等關(guān)鍵字需要特殊處理,一般來說采用分片的思路:

先在每個分片上執(zhí)行相應(yīng)的函數(shù),然后將各個分片的結(jié)果集進(jìn)行匯總和再次計(jì)算,最終得到結(jié)果。

(4)分布式 ID

如果使用 Mysql 數(shù)據(jù)庫在單庫單表可以使用 id 自增作為主鍵,分庫分表了之后就不行了,會出現(xiàn)id 重復(fù)。

常用的分布式 ID 解決方案有:

  • UUID
  • 基于數(shù)據(jù)庫自增單獨(dú)維護(hù)一張 ID表
  • 號段模式
  • Redis 緩存
  • 雪花算法(Snowflake)
  • 百度uid-generator
  • 美團(tuán)Leaf
  • 滴滴Tinyid

這些方案后面會寫文章專門介紹,這里不再展開。

(5)多數(shù)據(jù)源

分庫分表之后可能會面臨從多個數(shù)據(jù)庫或多個子表中獲取數(shù)據(jù),一般的解決思路有:客戶端適配和代理層適配。

業(yè)界常用的中間件有:

  • shardingsphere(前身 sharding-jdbc)
  • Mycat

總結(jié)

如果出現(xiàn)數(shù)據(jù)庫問題不要著急分庫分表,先看一下使用常規(guī)手段是否能夠解決。

分庫分表會給系統(tǒng)帶來巨大的復(fù)雜性,不是萬不得已建議不要提前使用。作為系統(tǒng)架構(gòu)師可以讓系統(tǒng)靈活性和可擴(kuò)展性強(qiáng),但是不要過度設(shè)計(jì)和超前設(shè)計(jì)。在這一點(diǎn)上,架構(gòu)師一定要有前瞻性,提前做好預(yù)判。大家學(xué)會了嗎?

 

責(zé)任編輯:武曉燕 來源: 愛笑的架構(gòu)師
相關(guān)推薦

2019-09-09 08:28:48

互聯(lián)網(wǎng)數(shù)據(jù)磁盤

2021-10-27 20:54:24

分庫分表高并發(fā)

2025-06-05 01:11:00

2017-04-05 16:40:45

2014-05-30 15:56:26

iOS 8WWDC2014

2010-11-03 09:22:00

C語言

2021-05-17 08:20:22

職場晉升轉(zhuǎn)型

2020-10-29 09:10:06

MySQL

2024-03-12 10:19:25

分庫分表擴(kuò)容

2021-03-17 16:15:55

數(shù)據(jù)MySQL 架構(gòu)

2022-06-04 15:28:42

微服務(wù)架構(gòu)編程語言

2021-06-21 10:04:12

微軟密碼Arsenault

2023-12-08 10:59:49

2015-02-26 09:41:50

2022-01-19 22:51:57

設(shè)計(jì)匿名用戶

2016-08-22 13:31:05

前端架構(gòu)前后端分離

2020-07-30 17:59:34

分庫分表SQL數(shù)據(jù)庫

2021-09-06 07:58:48

分庫數(shù)據(jù)庫分表

2022-12-27 19:07:52

2025-09-23 01:11:00

分庫分表分布式數(shù)據(jù)庫
點(diǎn)贊
收藏

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

免费永久网站黄欧美| 9999久久久久| 日韩一区中文字幕| av观看久久| 黄色片视频免费| 91精品蜜臀一区二区三区在线| 欧美成人艳星乳罩| 最新中文字幕免费视频| h片在线观看网站| 91亚洲精品乱码久久久久久蜜桃| 国产伦精品免费视频| 清纯粉嫩极品夜夜嗨av| 欧美人与物videos另类xxxxx| 欧美精品高清视频| 国产91在线免费| 免费在线看黄色| 国产99久久久国产精品潘金网站| 国产成人亚洲综合91精品| 国产极品国产极品| 狠狠操综合网| 亚洲国产精品va在线看黑人 | 成人欧美一区二区三区在线湿哒哒 | 日本成人小视频| 精品国产凹凸成av人网站| wwwwww.色| 爱搞国产精品| 亚洲精品国久久99热| 日本a级片久久久| 六月婷婷综合网| 国产在线视频精品一区| 日本一区二区三区四区视频| 欧美高清视频一区二区三区| 欧美日韩国产传媒| 亚洲精品国精品久久99热一| 一二三级黄色片| 日本欧美一区| 欧美性生活大片免费观看网址| 欧美做暖暖视频| 香蕉视频免费在线播放| 国产欧美一区二区三区鸳鸯浴| 国产精品香蕉视屏| 超碰人人人人人人| 国产综合成人久久大片91| 国产激情视频一区| www.com亚洲| 欧美综合二区| 欧美在线免费视频| 五月婷婷开心网| 影音先锋在线一区| 久久久久久久影院| 日韩激情一区二区三区| 国产精品v欧美精品v日本精品动漫| 色妞在线综合亚洲欧美| 懂色av蜜桃av| 成人免费在线观看av| 亚洲天堂av在线免费观看| 午夜理伦三级做爰电影| 男人的天堂久久| 亚洲精品97久久| 久久久久成人精品无码中文字幕| 白嫩白嫩国产精品| 亚洲国产精品免费| 国产人妻人伦精品1国产丝袜| 牛牛影视久久网| 日韩电影中文字幕| 国产精品扒开腿做爽爽| 国产精品午夜一区二区三区| 亚洲男人天堂久| 69精品无码成人久久久久久| 成人羞羞网站| 久久精品99无色码中文字幕| 国产精品国产精品88| 欧美激情1区2区| 久久久久久高潮国产精品视| 国产三级av片| 全部av―极品视觉盛宴亚洲| 成人中文字幕+乱码+中文字幕| 国产精品视频第一页| 国产成人综合自拍| 久99久视频| jizz在线观看| 亚洲免费色视频| 日本a视频在线观看| 成人性生活av| 7777精品伊人久久久大香线蕉超级流畅| 三级网站免费看| 精品国产导航| 中国日韩欧美久久久久久久久| 疯狂撞击丝袜人妻| 亚洲大黄网站| 国产精品久久久久影院日本| 国产露脸国语对白在线| 成人h版在线观看| 日韩福利在线| 中日韩高清电影网| 一本久久精品一区二区| 国产美女视频免费看| 欧美顶级毛片在线播放| 日韩在线免费av| 亚洲精品www久久久久久| 日本成人在线电影网| 3d蒂法精品啪啪一区二区免费| 无码h黄肉3d动漫在线观看| 欧美国产综合一区二区| www.男人天堂网| 成人国产一区| 日韩精品视频在线观看网址| 四虎影视一区二区| 男人的天堂亚洲在线| 5g国产欧美日韩视频| 国产小视频福利在线| 亚洲国产精品久久久久婷婷884| 免费观看成人网| eeuss国产一区二区三区四区| 国产亚洲欧洲高清| 日韩污视频在线观看| 久久99久久久欧美国产| 欧美日韩精品久久久免费观看| 亚洲卡一卡二| 欧美视频日韩视频| 毛茸茸多毛bbb毛多视频| 中文字幕一区二区av| 国产精品xxx视频| 欧美 日韩 人妻 高清 中文| 最新欧美精品一区二区三区| 少妇高清精品毛片在线视频| 国产伦精品一区二区三区在线播放| 日韩中文字幕精品| 日本成人一级片| 26uuu精品一区二区在线观看| av在线免费观看国产| 成人污版视频| 日韩在线播放一区| 亚洲中文一区二区三区| 久久免费视频色| 午夜肉伦伦影院| 欧美绝顶高潮抽搐喷水合集| 欧美大片免费看| 国产成人av免费看| 亚洲欧洲日本在线| 欧洲美女亚洲激情| 91嫩草亚洲精品| 国产精品揄拍500视频| 成人欧美一区| 欧美怡红院视频| 我不卡一区二区| 日韩av一区二区在线影视| 欧美激情论坛| 我爱我色成人网| 国产午夜一区二区| 中国一级特黄视频| 国产精品高清亚洲| 特级西西444www| 影音先锋日韩精品| 99理论电影网| 激情黄产视频在线免费观看| 亚洲第一福利网| 91在线看视频| 久久久久国产精品麻豆ai换脸| 一本色道无码道dvd在线观看| 精品中文一区| 国产精品视频免费在线| 亚洲视频tv| 日韩精品一区二区三区蜜臀| 久久久夜色精品| 972aa.com艺术欧美| 97在线播放视频| 日韩精品免费一区二区三区| 成人国产精品久久久久久亚洲| 精品麻豆一区二区三区| 日韩欧美的一区| 欧美三级韩国三级日本三斤在线观看| 99精品久久99久久久久| 无码人妻丰满熟妇区毛片| 欧美一区二区三| 亚洲一区二区三区四区在线播放| 国产高清在线a视频大全| 日韩电影网在线| 亚洲无码久久久久久久| 一级精品视频在线观看宜春院| 美女黄色一级视频| 日韩国产在线观看| 黄色小视频大全| 日韩三区视频| 国产日韩精品一区二区| 秋霞在线午夜| 亚洲一级一级97网| 精品国产免费无码久久久| 欧美日韩久久久久| 青青青视频在线免费观看| 国产成人午夜精品5599| 福利视频一二区| 欧美3p视频| 精品免费二区三区三区高中清不卡| 久久野战av| 欧美激情国内偷拍| www.亚洲资源| 亚洲精品98久久久久久中文字幕| 中文字幕人妻丝袜乱一区三区| 夜夜精品视频一区二区| 精品成人av一区二区三区| 国产成人在线色| 成人免费xxxxx在线视频| 国产专区一区| 亚洲欧洲三级| 日韩欧美中文字幕电影| 亚洲free性xxxx护士hd| 桃花岛成人影院| 国模视频一区二区| 黄网站app在线观看| 亚洲深夜福利在线| 欧美熟妇乱码在线一区| 欧美喷潮久久久xxxxx| 五月婷婷亚洲综合| 亚洲国产视频在线| 精品伦精品一区二区三区视频密桃| 91色视频在线| 99riav国产精品视频| 国内精品久久久久影院一蜜桃| 99色精品视频| 一区在线播放| 真人做人试看60分钟免费| 成人精品视频| 欧美一进一出视频| 人人香蕉久久| 国产欧美一区二区三区另类精品| 久久精品九色| 91久久久久久国产精品| 国产亚洲欧美日韩精品一区二区三区| 欧美性受xxx| 96av在线| 97精品一区二区视频在线观看| av电影免费在线观看| www.亚洲男人天堂| 在线观看美女网站大全免费| 亚洲天堂免费视频| 美女欧美视频在线观看免费| 亚洲激情中文字幕| 亚洲 精品 综合 精品 自拍| 亚洲精品一区二区三区精华液| 亚洲第一天堂在线观看| 欧美一级高清片| 精品人妻一区二区三区三区四区| 91精品国产91久久久久久最新毛片 | 欧美精品色网| 日韩精品一区二区在线视频| 好看的日韩av电影| 人人妻人人澡人人爽欧美一区双| 午夜精品av| 成人性免费视频| 日韩午夜激情| 免费在线观看的毛片| 日韩国产一区二| 色婷婷.com| 国产酒店精品激情| youjizz.com日本| 99re热这里只有精品视频| 人妻少妇精品视频一区二区三区| 91一区二区在线| 小早川怜子久久精品中文字幕| 久久香蕉国产线看观看99| 国产精品密蕾丝袜| 中文字幕中文乱码欧美一区二区| 日本少妇aaa| 一区二区三区国产豹纹内裤在线| 免费中文字幕视频| 天天综合网天天综合色 | 欧美精品高清视频| www.精品久久| 日韩精品在线观看视频| 国产专区在线| 久久九九免费视频| 丁香花在线观看完整版电影| 日本道色综合久久影院| 国产精品高潮久久| 国产91视觉| 国产va免费精品观看精品视频| 亚洲春色在线视频| 欧美激情 亚洲a∨综合| 欧美亚洲国产成人| 久久成人免费日本黄色| 国产精品91av| 久久嫩草精品久久久精品一| 国产伦理片在线观看| 亚洲精品网站在线观看| 久热这里只有精品6| 欧美人狂配大交3d怪物一区| 欧性猛交ⅹxxx乱大交| 一区二区三欧美| 牛牛精品在线视频| 国产精品青草久久久久福利99| 欧州一区二区三区| 日本不卡高清视频一区| 欧美国产精品| 亚洲精品一二三四五区| 国产黄人亚洲片| 欧美成人国产精品一区二区| 亚洲精品视频免费看| 久久久久99精品成人片我成大片 | 手机av免费在线观看| 色午夜这里只有精品| 成人在线免费观看黄色| 国产精品网红直播| 欧美大胆a级| 激情视频小说图片| 免费日本视频一区| 亚洲欧美日本一区| 亚洲精品视频一区| 久久久久精彩视频| 精品丝袜一区二区三区| caopen在线视频| 国产精品偷伦视频免费观看国产| 色狼人综合干| www.激情网| 精品一区二区三区久久| 美女久久久久久久久久| 依依成人精品视频| 在线免费看av片| 日韩精品在线免费| www.超碰在线| 成人av网站观看| 国产精品久久久久蜜臀| 国产精品人人妻人人爽人人牛| 高清久久久久久| 天天综合天天做| 欧美色精品在线视频| 黄色在线免费观看大全| 97视频在线观看成人| 日本亚洲视频| 91视频成人免费| 激情欧美一区二区三区在线观看| 特级西西www444人体聚色| 岛国av一区二区| 午夜在线观看视频18| 午夜精品理论片| 嫩草国产精品入口| 欧美国产激情视频| 久久色视频免费观看| 日韩在线观看第一页| 亚洲第一网站免费视频| 日本三级韩国三级欧美三级| 99精彩视频| 欧美日韩亚洲一区| 美女搡bbb又爽又猛又黄www| 一区二区视频在线看| 北条麻妃一二三区| 高清欧美一区二区三区| 女仆av观看一区| 免费av网址在线| 欧美激情一区二区三区四区| 欧美日韩 一区二区三区| 国产一区二区三区久久精品| 日本精品裸体写真集在线观看| 日韩精品欧美专区| 久久国产三级精品| 青青草原在线免费观看| 欧美成人video| 91在线超碰| 日本精品一区二区三区高清 久久| 久久亚洲视频| 成人无码精品1区2区3区免费看| 欧美精品视频www在线观看| 成人影院www在线观看| 成人片在线免费看| 一本久道综合久久精品| 欧洲美一区二区三区亚洲 | 91精品国产91久久| 一区三区在线欧| 亚洲精品自拍网| 玉米视频成人免费看| 青青九九免费视频在线| 国产精品啪视频| 欧美福利影院| 精品人妻一区二区三区香蕉 | 孩xxxx性bbbb欧美| 亚洲婷婷伊人| 8x8x成人免费视频| 性做久久久久久久久| 免费国产在线视频| 国产一区视频在线| 亚洲久久成人| 女人裸体性做爰全过| 日韩美一区二区三区| 中文字幕高清在线播放| 在线一区高清| 91女厕偷拍女厕偷拍高清| 夜夜躁狠狠躁日日躁av| 欧美激情乱人伦一区| 精品国产一级毛片| 中国黄色片视频| 欧美视频精品在线| 免费污视频在线观看| 色999五月色| 成人av免费网站| 中文字幕免费播放| 97久久久久久| 在线中文字幕第一区| 五月天综合视频| 亚洲高清色综合| 精品一区二区三区四区五区|