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

十分鐘了解分布式系統中生成唯一ID

開發 架構
分布式唯一ID的架構雖然簡單,但是如果要實現高性能高可用,還是需要根據業務場景來考慮。所以說簡單的事情要做好并非易事,但是在這些年的工作中總是會有很多人為了追求效率,總想找到捷徑而放棄架構的基本演進路徑方法論.....

分布式系統中生成唯一ID在后臺開發是經常遇到的架構設計,當然方案有很多,比如通過redis或者數據庫實現自增。但是如果依賴redis或者數據庫,會導致單點問題,在架構上反而需要考慮點更多,那怎么解決呢?

首先分布式唯一ID需要支持如下:

  • 全局唯一:必須保證生成的ID是全局性唯一的;
  • 有序性:生成的ID是有序,方便追溯和排序操作;
  • 可用性:需要保證高并發下的可用性,除了對ID號碼自身的要求,業務還對ID生成系統的可用性要求極高;
  • 自主性:分布式環境下不依賴中心認證即可自行生成ID;
  • 安全性:不暴露系統和業務的信息;

方案:

  • 單機生成方式
  • 第三方模塊生成方式
  • 號段生成方式

單機生成方式

1、UUID

UUID(Universally Unique Identifier,即通用唯一標識碼)算法的目的是生成某種形式的全局唯一ID來標識系統中的任一元素,尤其是在分布式環境下,UUID可以不依賴中心認證即可自動生成全局唯一ID。UUID的標準形式為32個十六進制數組成的字符串,且分割為五個部分,例如:執行:cat /proc/sys/kernel/random/uuid,輸出:70048d49-6ef3-4ba6-84c4-1e6e37ec2f4a。

缺點:

  • 生成是隨機的,無法做到順序生成;
  • 性能雖然高,但是輸出的格式不一定符合業務要求,無法比較大小;

2、Snowflake

snowflake(雪花算法)是一個開源的分布式ID生成算法,結果是一個long型的ID。snowflake算法將64bit劃分為多段,分開來標識機器、時間等信息,其中格式如下:

0   |00000...0000|000...0000|000000000000|
1bit| 41bit時間戳 |10bit機器號|12bit序列遞增|
  • 1bit保留位:方便擴展;
  • 41bit時間戳:可以標識毫秒時間戳(最長支持69年),結合遞增bit使用,可以保證有序,不過我覺得如果qps沒有超過4000,使用秒時間戳也可以;
  • 10bit機器號:可以支持1024個機器ID,用于標識不同的機器;
  • 12bit序列遞增:支持4096個序列遞增,可以支持同一臺機器同一毫秒內生成4096個ID;

snowflake算法優勢是支持遞增,可以根據自己的算法改造使用bit位,不過存在如下缺點:

  • 強依賴時間同步,如果某臺機器的時鐘出現回撥,遞增就不準確;
  • ID不能完全支持全局遞增,需要依賴定義的機器號;

第三方模塊生成方式

通過mysql,redis,zk或者ticket server實現架構如下:

架構架構

1、Mysql

前面提到依賴mysql也可以實現序列號,mysql的auto_increment可以保證全局唯一,不過需要依賴數據庫,性能上會有影響。

當然提升性能的方式就是將mysql設置主從模式,但是只是為了序列號生成,部署多個mysql實例確實有些浪費。

2、Redis

redis同樣可以實現遞增,而且可以保證原子,比如通過incr或者incrby,雖然性能比mysql要好很多,我測試下來4c8g情況下可以支持10W+qps,不過存在單點維護問題。

3、Zookeeper

利用zookeeper的znode也可以生成序列號,可以生成32位和64位的數據版本號,客戶端可以使用這個版本號來作為唯一的序列號,不過zk的性能比較差,在高并發場景下基本不建議采用。

4、Ticket Server

Ticket Server類似單獨的票據服務,可以通過自己的邏輯生成唯一序列號,比如實現上可以使用原子遞增,或者根據各個業務的特性進行適配。

不過要實現完整的容災體系下可持久的服務工作量是不小的,對于沒有太多特殊需求的場景,更建議依賴redis或者mysql。

號段生成方式

1、大廠方案:美團Leaf-segment和Leaf-snowflake方案

1.1 Leaf-segment

具體技術介紹:https://tech.meituan.com/2017/04/21/mt-leaf.html。Leaf-segment主要解決思路是:對直接用數據庫自增ID充當分布式ID的一種優化,減少對數據庫的訪問頻率,每次獲取不是獲取一個ID,而是獲取一個號段,同時獲取號段以后,將數據持久化到數據庫中,這樣可以解決分布式的搶占或者持久化問題,即使DB出現問題,也可以通過Master-Slave來解決。

Leaf-segment架構Leaf-segment架構

1.2 Leaf-snowflake

Leaf-snowflake繼續使用snowflake方案,主要解決了時鐘不同步的問題,其中中間10bit機器號定義為WorkerID,Leaf-snowflake是按照下面幾個步驟啟動的:

  • 啟動Leaf-snowflake服務,連接Zookeeper,在leaf_forever父節點下檢查自己是否已經注冊過(是否有該順序子節點);
  • 如果有注冊過直接取回自己的workerID(zk順序節點生成的int類型ID號),啟動服務;
  • 如果沒有注冊過,就在該父節點下面創建一個持久順序節點,創建成功后取回順序號當做自己的workerID號,啟動服務;
  • 檢查服務啟動是否寫過ZooKeeper leaf_forever節點,并進行如下處理:

若寫過,則用自身系統時間與leaf_forever/節點記錄時間做比較,若小于{self}時間則認為機器時間發生了大步長回撥,服務啟動失敗并報警;

若未寫過,證明是新服務節點,直接創建持久節點leaf_forever/${self}并寫入自身系統時間,接下來綜合對比其余Leaf節點的系統時間來判斷自身系統時間是否準確,具體做法是取leaf_temporary下的所有臨時節點(所有運行中的Leaf-snowflake節點)的服務IP:Port,然后通過RPC請求得到所有節點的系統時間,計算sum(time)/nodeSize;

若abs( 系統時間-sum(time)/nodeSize ) < 閾值,認為當前系統時間準確,正常啟動服務,同時寫臨時節點leaf_temporary/${self} 維持租約;

否則認為本機系統時間發生大步長偏移,啟動失敗并報警;

每隔一段時間(3s)上報自身系統時間寫入leaf_forever/${self};

Leaf-snowflake架構Leaf-snowflake架構

2、大廠方案:滴滴Tinyid和百度UidGenerator

2.1 滴滴Tinyid

開源方案:https://github.com/didi/tinyid。Tinyid和美團的Leaf-segment方案類似,從數據庫批量的獲取自增ID,每次從數據庫取出一個號段范圍,例如:(1,1000]代表1000個ID,業務服務將號段在本地生成1~1000的自增ID并加載到內存。Tinyid會將可用號段加載到內存中,并在內存中生成ID,可用號段在首次獲取ID時加載,如當前號段使用達到一定比例時,系統會異步的去加載下一個可用號段,以此保證內存中始終有可用號段,以便在發號服務宕機后一段時間內還有可用ID。

Tinyid架構Tinyid架構

2.2 百度UidGenerator

百度UidGenerator是基于snowflake方案改造,旨在解決時鐘回撥,workerid不夠等問題。

百度UidGenerator百度UidGenerator

  • 1bit保留位:方便擴展;
  • 28bit時間戳:指當前時間與epoch時間的時間差,單位為秒,比如2024-01-01 00:00:00上線,那時間就是當前時間戳-1704038400;
  • 22bit節點id:22bit可以支持4194304臺機器,同時這個數據是持久化到DB,保持每次新增或者重啟都會自增;
  • 13bit序列遞增:支持每秒生成8192個自增序列號(未調整boostPower情況下);
  • UidGenerator優化點還包括:

RingBuffer:UidGenerator不再在每次取ID時都實時計算分布式ID,而是利用RingBuffer數據結構預先生成若干個分布式ID并保存,引入boostPower可以控制每秒生成ID的上限能力;

時間遞增:UidGenerator的時間類型是AtomicLong,且通過incrementAndGet()方法獲取下一次的時間,從而脫離了對服務器時間的依賴,也就不會有時鐘回撥的問題;

3、大廠方案:容災

微信內部也是通過獨立的seqsvr提供序列號生成,主要面對場景是微信中的消息版本,其中特性和挑戰如下。

(1)兩個特性:

  • 遞增的32位整型;
  • 每個用戶都有自己的32位sequence空間;

(2)面臨兩個挑戰:

  • 1、分布式場景;
  • 2、每秒千萬級別的QPS;
  • 3、每個Uin都需要存儲max-seqid,存儲量大,也帶來容災問題;

如何解決分布式場景下的問題?

提供兩層:StoreSvr和AllocSvr,分別是存儲層和緩存中間層,分層后就能利用堆機器就可以解決問題;

圖片圖片

每秒千萬級別的QPS?

實現方案和美團Leaf-segment類似,每次提供一批seqid,這樣從千萬級別的qps就變成千級別的qps,不過不保證序列號是連續的,但是能保證是遞增的。

每個Uin都需要存儲max-seqid,存儲量大?

每個用戶需要加載一個max_seq(32bit),如果uin是2^32個,則需要存儲數據大小為16GB,這樣系統啟動時候加載就會很慢,微信如何解決?通過區分Set,同一批共享同一個max_seqid,這樣就減少加載的數據量。

容災如何實現?

seqsvr服務雖然簡單,解決了上述高性能的問題,但是要保證高可靠性還是非常難,我查了一下內部資料和infoQ一樣,實現架構可以參考:https://www.infoq.cn/article/wechat-serial-number-generator-architecture。seqsvr最核心的點是什么呢?每個 uin 的sequence申請要遞增不回退,但是約束條件是:任意時刻任意 uin 有且僅有一臺 AllocSvr 提供服務,就可以比較容易地實現sequence遞增不回退的要求。

(1)容災1.0

容災1.0容災1.0

  • 一主一備:每個Set都是一主一備兩臺 AllocSvr ,主機出故障時,仲裁服務切換主備,原來的主機下線變成備機,原備機變成主機后加載 uid 號段提供服務;
  • 引入仲裁服務:探測 AllocSvr 的狀態,決定每個 uin 走到哪一臺 AllocSvr ,同時解決備機切換的問題;

但是上述面臨問題:

  • 主從容災擴縮容麻煩;
  • 單個Set的資源不一定能支撐高并發請求;

(2)容災2.0

通過提供 Client 路由表方式解決訪問 AllocSvr 切換的問題,執行步驟如下:

  • Client 根據本地共享內存緩存的路由表,選擇對應的 AllocSvr,如果路由表不存在,隨機選擇一臺 AllocSvr;
  • 對選中的 AllocSvr 發起請求,請求帶上本地路由表的版本號;
  • AllocSvr 收到請求,除了處理 sequence 邏輯外,判斷 Client 帶上版本號是否最新,如果是舊版則在響應包中附上最新的路由表;
  • Client 收到響應包,除了處理 sequence 邏輯外,判斷響應包是否帶有新路由表,如果有,更新本地路由表,并決策是否返回第 1 步重試;

容災2.0容災2.0

總結

以上就是一些場景下生成分布式唯一ID的方案選擇,分布式唯一ID的架構雖然簡單,但是如果要實現高性能高可用,還是需要根據業務場景來考慮。所以說簡單的事情要做好并非易事,但是在這些年的工作中總是會有很多人為了追求效率,總想找到捷徑而放棄架構的基本演進路徑方法論....

參考

(1)https://learning-guide.gitbook.io/system-design-interview/chapter-07-design-a-unique-id-generator-in-distributed-systems(2)https://tech.meituan.com/2017/04/21/mt-leaf.html(3)https://www.infoq.cn/article/wechat-serial-number-generator-architecture

責任編輯:武曉燕 來源: 周末程序猿
相關推薦

2019-11-25 09:32:26

軟件程序員數據結構

2024-06-19 09:58:29

2024-05-13 09:28:43

Flink SQL大數據

2024-11-07 16:09:53

2023-07-15 18:26:51

LinuxABI

2015-11-06 11:03:36

2021-07-29 08:57:23

ViteReact模塊

2022-04-08 08:47:02

PGXLPostgreSQL數據庫

2009-11-03 11:01:45

VB.NET遠程事件

2024-10-08 11:12:12

2024-12-13 15:29:57

SpringSpringBeanJava

2025-03-18 12:20:00

編程

2020-12-17 06:48:21

SQLkafkaMySQL

2019-04-01 14:59:56

負載均衡服務器網絡

2022-04-13 22:01:44

錯誤監控系統

2024-10-06 12:50:25

2020-12-09 16:41:22

LinuxIT開發

2022-06-16 07:31:41

Web組件封裝HTML 標簽

2021-09-07 09:40:20

Spark大數據引擎

2023-04-12 11:18:51

甘特圖前端
點贊
收藏

51CTO技術棧公眾號

天天干在线影院| 狠狠色综合色区| 糖心vlog免费在线观看| 国产麻豆精品| 亚洲一区av在线| 久久久久久亚洲精品不卡4k岛国 | 性生活黄色大片| 亚洲一区二区免费看| 丝袜情趣国产精品| 成年女人免费视频| 免费在线成人激情电影| 一区二区三区中文字幕在线观看| 国产伦一区二区三区色一情| 最新中文字幕免费| 亚洲毛片视频| 中文字幕9999| 在线观看国产三级| 高清一区二区三区av| 欧美日韩国产专区| 夜夜爽99久久国产综合精品女不卡| 黄色aaa大片| 久久国产精品第一页| 97欧美精品一区二区三区| 懂色av蜜臀av粉嫩av永久| 麻豆一区二区麻豆免费观看| 欧美午夜影院一区| 久久久久久久中文| 91小视频xxxx网站在线| 国产欧美精品一区二区色综合 | 亚洲a视频在线观看| 日韩激情一二三区| 91高清视频在线免费观看| 国产喷水在线观看| 国产成人精品一区二区免费看京| 日韩精品一区二区三区视频 | 成人va天堂| 亚洲一区二区三区在线播放| 亚洲一二三区在线| 精品999视频| 99视频精品在线| 99热99热| 国产乱叫456在线| 男人的天堂亚洲一区| 热99精品里视频精品| 国产午夜精品无码一区二区| 午夜欧美理论片| 欧美大胆在线视频| 成人高潮免费视频| 国产精品久久久久久影院8一贰佰 国产精品久久久久久麻豆一区软件 | 日韩成人在线免费视频| 欧美日韩亚洲一区在线观看| 一道本无吗dⅴd在线播放一区 | 欧美激情综合在线| 麻豆av一区| 亚洲 欧美 精品| 99精品欧美一区二区蜜桃免费 | 91国产视频在线播放| 久久久久久欧美精品se一二三四| 亚洲综合小说| 欧美精品一区三区| 丰满少妇高潮久久三区| 亚洲欧美色图| 欧美黄色片在线观看| 久久久久97国产| 尤物精品在线| 欧美一区视频在线| 9i精品福利一区二区三区| 国产精品视区| 国产福利精品av综合导导航| 天天爱天天做天天爽| 日韩国产精品久久久久久亚洲| 国产精品成人久久久久| 在线播放一级片| 精品中文av资源站在线观看| 92国产精品视频| 亚洲av少妇一区二区在线观看| 国产91丝袜在线播放| 国产美女在线精品免费观看| 无码国精品一区二区免费蜜桃| 91在线视频网址| 日韩精品欧美在线| 美女羞羞视频在线观看| 一区2区3区在线看| 国产青青在线视频| 日韩在线免费| 欧美一级久久久久久久大片| 精品少妇人妻av一区二区三区| 在线亚洲a色| 久久人体大胆视频| 久久久久久久伊人| 七七婷婷婷婷精品国产| 91福利入口| 午夜视频福利在线观看| 中文字幕不卡的av| 日韩久久久久久久久久久久| 美女av在线免费看| 欧美性猛片aaaaaaa做受| 亚洲综合123| 亚洲97av| 久久色免费在线视频| 日韩成人高清视频| 久久超碰97中文字幕| 国产精品区一区二区三含羞草| 国产福利在线视频| 亚洲一区二区三区四区中文字幕| 日韩网址在线观看| 精品久久亚洲| 亚洲一二在线观看| 国产在线免费视频| 美女一区二区久久| 国产中文一区二区| 精品欧美色视频网站在线观看| 亚洲午夜激情网站| 一级特黄性色生活片| 91欧美极品| 最近的2019中文字幕免费一页 | 在线一区二区三区做爰视频网站| 成人三级做爰av| 国产一区2区| 久久久久久亚洲精品不卡| 在线观看你懂的网站| 不卡大黄网站免费看| 福利网在线观看| 电影天堂国产精品| 精品成人佐山爱一区二区| 性爱在线免费视频| 亚洲综合激情| 国产免费高清一区| 欧美日韩色网| 欧美一区二区三区精品| 丁香六月激情综合| 久久久久国产精品一区二区| 国产综合欧美在线看| 羞羞网站在线免费观看| 欧美卡1卡2卡| 夫妇交换中文字幕| 日韩福利视频网| 蜜桃欧美视频| 高清毛片在线观看| 亚洲国产91色在线| 国产一级性生活| 国产激情一区二区三区桃花岛亚洲| 久久精品一二三区| hd国产人妖ts另类视频| 欧美成人一级视频| 日韩欧美中文字幕视频| 激情偷乱视频一区二区三区| 亚洲精品高清视频| ww久久综合久中文字幕| 亚洲色图17p| 亚洲 欧美 日韩 在线| 26uuu精品一区二区在线观看| 免费一级特黄毛片| 噜噜噜天天躁狠狠躁夜夜精品| 欧美大片在线看免费观看| 午夜精品无码一区二区三区| 亚洲激情校园春色| 欧美性猛交xx| 极品日韩av| 精品乱码一区二区三区| 美女在线视频免费| 亚洲欧美激情另类校园| 亚洲av无码精品一区二区| 久久美女高清视频| 能看的毛片网站| 色喇叭免费久久综合| 91精品国产综合久久男男| www国产在线观看| 日韩精品中文字幕一区二区三区 | 亚洲精品在线二区| 久久亚洲国产精品日日av夜夜| 欧美少妇网站| 亚洲新声在线观看| 国产露脸无套对白在线播放| 亚洲一区二区三区中文字幕 | 开心激情综合| 日本精品一区二区三区在线播放视频| 国产露出视频在线观看| 7777精品伊人久久久大香线蕉经典版下载 | 国产精品白丝在线| 久久久久亚洲av片无码v| 狠狠干成人综合网| 免费在线国产精品| 人人精品久久| 欧美激情免费视频| 国外av在线| 欧美一区二区三区在线观看| 日本熟妇色xxxxx日本免费看| 久久久久久亚洲综合影院红桃| 色片在线免费观看| 亚洲视频一区| 欧美一级爽aaaaa大片| 日本美女久久| 欧美激情一区二区三区久久久| 香蕉视频免费看| 欧美日本免费一区二区三区| 久久久美女视频| 久久久久久久性| 久久久久无码精品| 日韩电影在线免费看| 糖心vlog在线免费观看| 香蕉久久精品日日躁夜夜躁| 91精品久久久久久久久久另类| av在线最新| www.xxxx精品| 青青草在线播放| 欧美一区二区三区婷婷月色| 国产免费av一区| 亚洲久本草在线中文字幕| 91人妻一区二区| 美女看a上一区| 欧美 日韩 亚洲 一区| 婷婷综合激情| 免费av一区二区三区| 国产一区二区三区亚洲综合| 欧美一区二区三区精品电影| 污视频免费在线观看| 在线观看欧美日韩| 天天躁日日躁狠狠躁喷水| 777欧美精品| 成人黄色片在线观看| 五月天丁香久久| 欧美日韩激情在线观看| 国产精品看片你懂得| 欧美亚一区二区三区| 国产白丝精品91爽爽久久| 亚洲美女性囗交| 日韩电影网1区2区| 国产原创中文在线观看| 欧美精品不卡| 亚洲一区二区三区午夜| 国产精品一在线观看| 久久综合毛片| 麻豆成人入口| 久久国产手机看片| 国产精品色呦| 国产精品乱码视频| 亚洲精品视频一二三区| 2022国产精品| 精品一区二区三区免费看| 国产日韩在线一区| 久久久久毛片| 国产精品专区一| 黑人一区二区三区| 国产免费一区二区三区在线观看 | 国产精品久久波多野结衣| 久久久久久亚洲精品美女| 91精品视频在线免费观看| 亚洲青青久久| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 天堂网在线免费观看| 青娱乐精品在线视频| 在线观看免费视频高清游戏推荐| 捆绑调教一区二区三区| 一区二区三区网址| 精品综合久久久久久8888| 红桃视频一区二区三区免费| 国产福利一区在线观看| 国产免费无码一区二区| 99久久精品国产网站| 男女黄床上色视频| 欧美激情综合五月色丁香| 中文字幕av久久爽一区| 国产视频一区二区三区在线观看| 国产成人av免费观看| 国产成人aaaa| 日韩精品视频一区二区| av爱爱亚洲一区| 色呦呦一区二区| 久久久亚洲精品一区二区三区 | 国产精品激情偷乱一区二区∴| 女人裸体性做爰全过| 亚洲免费视频成人| 麻豆一区二区三区精品视频| 亚洲一区在线播放| 精品人妻一区二区三区免费看 | 色琪琪综合男人的天堂aⅴ视频| 高清毛片在线看| 久久精品电影一区二区| 在线观看三级视频| 国产69精品久久久久9999| 伊人久久视频| 欧美一区亚洲一区| 成人在线高清| 国产精品乱子乱xxxx| 欧美中文一区| 日本欧美色综合网站免费| 亚洲精品成人| 欧美日韩性生活片| 日韩精品乱码av一区二区| 日本女人黄色片| 91小视频在线| 人成免费在线视频| 亚洲一二三级电影| 97人妻一区二区精品视频| 欧美男人的天堂一二区| 性一交一乱一乱一视频| 日韩国产精品一区| 麻豆视频在线免费观看| 97在线看免费观看视频在线观看| 色婷婷综合久久久中字幕精品久久| 国产日韩精品在线播放| 神马久久影院| 中文字幕剧情在线观看一区| 欧美二区视频| 天天干天天综合| 成人av在线看| 亚洲天堂一级片| 精品久久久视频| ,亚洲人成毛片在线播放| 日韩精品在线第一页| 午夜免费播放观看在线视频| 久久久久久成人| av日韩一区| 日韩成人av电影在线| 午夜精品久久99蜜桃的功能介绍| av无码精品一区二区三区| 粉嫩一区二区三区性色av| 真人bbbbbbbbb毛片| 亚洲精品高清在线观看| 久久久久久无码精品大片| 欧美一区二区视频在线观看2020| 免费在线稳定资源站| 不卡av在线网站| 欧美视频免费看| 鲁鲁狠狠狠7777一区二区| 欧美日韩综合| 午夜诱惑痒痒网| 国产欧美日韩卡一| 国产 日韩 欧美 成人| 日韩欧美一二三| 亚洲成人三级| 国产精品丝袜高跟| 三级小说欧洲区亚洲区| 国产成人一二三区| 国产精品一区二区三区99| 免费一级特黄3大片视频| 偷拍与自拍一区| 蜜臀久久99精品久久久| 综合中文字幕亚洲| 免费一级做a爰片久久毛片潮| 亚洲福利国产精品| 国产麻豆免费观看| 中文字幕精品国产| 9.1麻豆精品| 亚洲一区二区三区加勒比| 水野朝阳av一区二区三区| 色无极影院亚洲| 狠狠色狠狠色综合日日小说| 午夜18视频在线观看| 欧美激情性做爰免费视频| 国产精品欧美一区二区三区不卡 | 亚洲成av人片在线观看| 99热这里只有精品1| 国产亚洲aⅴaaaaaa毛片| 精品123区| 丝袜足脚交91精品| 久久国产福利国产秒拍| 懂色av粉嫩av蜜臀av一区二区三区| 日本丶国产丶欧美色综合| av在线播放网站| 国产91在线播放九色快色| 成人黄色av| 992kp快乐看片永久免费网址| 99re亚洲国产精品| 无码视频在线观看| 亚洲人成网站777色婷婷| 欧美13videosex性极品| 欧美日韩精品久久| 日韩精品1区2区3区| 色欲人妻综合网| 日韩一级二级三级| 精精国产xxxx视频在线中文版| 黄色99视频| 日韩二区在线观看| 欧美色图亚洲天堂| 亚洲第一视频网| 中文在线а√在线8| 亚洲国产精品综合| 国产一区二区三区四区五区入口 | 欧美性猛xxx| 国模精品一区二区| 91久久久久久久久| 狠狠爱www人成狠狠爱综合网| 亚洲人人夜夜澡人人爽| 91久久香蕉国产日韩欧美9色| 国产永久免费高清在线观看| 亚洲精品女av网站| 亚洲福利电影| 一级片久久久久| 日韩亚洲电影在线| 麻豆国产在线| 五月天综合婷婷| 91在线视频官网| 91精品国自产| 久久成年人视频| 老司机成人在线| 亚洲综合婷婷久久| 亚洲一区二区视频| 成人动漫在线播放|