精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

国产综合色在线观看| 日本熟妇一区二区三区| 国产精品毛片视频| 精品国产福利视频| 亚洲图色在线| 国产成人精品在线视频| 巨胸大乳www视频免费观看| 朝桐光一区二区| 亚洲精品综合在线| 美女三级99| av中文字幕播放| 老**午夜毛片一区二区三区| 久久精品青青大伊人av| 亚洲第一黄色网址| av在线播放一区二区| 精品国产91久久久| 亚洲美女自拍偷拍| 日本一级在线观看| 国产黄人亚洲片| 国产精品黄页免费高清在线观看| 欧美性猛交xxxxx少妇| 亚洲精品蜜桃乱晃| 精品日韩在线观看| 57pao国产成永久免费视频| 妞干网免费在线视频| 亚洲欧洲日韩在线| 日本成人三级| 天堂在线资源8| 国产麻豆精品在线观看| 国产精品自产拍高潮在线观看| 欧美成人aaaaⅴ片在线看| 国产精品不卡| 中文字幕日韩欧美精品在线观看| 色婷婷免费视频| 亚洲国产中文在线| 欧美老女人在线| 人妻丰满熟妇av无码区app| 丁香花电影在线观看完整版| 最近日韩中文字幕| 日产精品一线二线三线芒果| 四虎在线视频| a在线欧美一区| 国产精品jizz视频| 国产视频第一页| 精品写真视频在线观看| 国产精品入口尤物| 中文字幕在线观看1| 久久深夜福利| 国产精品高潮呻吟久久av野狼| 在线观看免费av片| 久久亚洲色图| 国产精品成人一区二区三区吃奶| 免费污污视频在线观看| 制服诱惑一区二区| 欧美性受xxxx白人性爽| 91九色丨porny丨肉丝| 国产视频一区在线观看一区免费| 韩国欧美亚洲国产| 男人天堂中文字幕| 性色一区二区| 国产精品96久久久久久| 国产在线观看第一页| 日本欧美久久久久免费播放网| 欧美黄色网络| 综合av第一页| 51xx午夜影福利| 成人日韩欧美| 一级做a爱片久久| 国内少妇毛片视频| 九色porny丨首页入口在线| 天天色综合天天| 国产精品wwwww| 韩日一区二区| 777午夜精品视频在线播放| 性生活在线视频| 亚洲精品午夜| 亚洲女同精品视频| 国产免费嫩草影院| 欧美精品1区| 欧美一级在线播放| 亚洲av人无码激艳猛片服务器| 久久精品免费看| 91亚色免费| 日韩av视屏| 国产精品高潮呻吟久久| 高清无码一区二区在线观看吞精| 国产夫妻在线播放| 欧美综合一区二区三区| 三上悠亚av一区二区三区| 高清久久精品| 日韩精品在线视频观看| 一级免费黄色录像| 99精品热视频只有精品10| 国产精品精品视频一区二区三区| 国产女人高潮毛片| 91麻豆国产香蕉久久精品| 亚洲精品一区二区三区av| 中文字幕有码在线观看| 狠狠操狠狠色综合网| 手机在线国产视频| 色婷婷狠狠五月综合天色拍 | 欧美特级aaa| 中文字幕一区二区三区中文字幕 | 都市激情久久久久久久久久久| 天堂av网在线| 夜夜亚洲天天久久| 无人在线观看的免费高清视频 | 在线播放高清视频www| 欧美久久久久久久久| 国产精品久久不卡| 午夜精彩国产免费不卡不顿大片| 日韩av免费在线播放| 亚洲第一大网站| 国产精品视频你懂的| 国产免费黄色小视频| 国产精品xnxxcom| 一区二区三欧美| 日韩 欧美 亚洲| 国产精品一级二级三级| 婷婷亚洲婷婷综合色香五月| 波多野结衣中文在线| 欧美一区二区三区在线观看| 亚洲AV无码国产成人久久| 欧美日韩综合| 国产色视频一区| 超碰国产在线观看| 大桥未久av一区二区三区| 北条麻妃亚洲一区| 日韩电影二区| 国产xxx69麻豆国语对白| 欧美自拍偷拍第一页| 亚洲免费在线观看视频| 中文字幕第38页| 国产一区二区三区探花| 91成人在线观看国产| 黄色www视频| 亚洲激情图片qvod| www.污污视频| 999精品视频| 成人精品在线视频| 最近高清中文在线字幕在线观看| 91久久国产最好的精华液| 日本xxx在线播放| 亚洲免费综合| 久久国产精品 国产精品| 91视频欧美| 亚洲第一免费网站| 日韩男人的天堂| 99热这里都是精品| 可以在线看的av网站| 欧美成人午夜77777| 91av在线影院| 亚洲三级中文字幕| 色综合咪咪久久| 无码 人妻 在线 视频| 日本三级亚洲精品| 亚洲一区在线免费| 久久久久久爱| 欧美精品少妇videofree| 国产高清在线免费| 一区二区三区欧美激情| 日本一区二区免费视频| 亚洲美洲欧洲综合国产一区| 蜜桃网站成人| 69堂精品视频在线播放| 精品国产一区二区在线 | 日本在线播放一二三区| 亚洲摸下面视频| 中文有码在线播放| 亚洲日本青草视频在线怡红院| 久久aaaa片一区二区| 亚洲国产高清视频| 免费看成人午夜电影| av亚洲一区| 操91在线视频| 姝姝窝人体www聚色窝| 色婷婷av一区二区三区软件 | 亚洲天堂精品在线观看| www.桃色.com| 亚洲黄网站黄| 亚洲国产日韩综合一区| 国产精品麻豆| 欧美在线视频免费| 日本免费在线视频| 精品99一区二区三区| 亚洲精品一区二三区| 中文字幕日韩精品一区| 奇米777第四色| 美国av一区二区| 婷婷五月综合缴情在线视频| 欧美色蜜桃97| 国产欧美韩日| 欧美国产视频| 久久国产精品二区| 亚洲一区二区三区| 国产一区国产精品| 成人1区2区| 欧美肥老妇视频| shkd中文字幕久久在线观看| 日韩欧美国产小视频| 午夜精品免费观看| 一级中文字幕一区二区| 国内精品卡一卡二卡三| 国产成人欧美日韩在线电影| 男人透女人免费视频| 欧美激情偷拍| 亚洲高清视频一区| 欧美亚洲色图校园春色| 91美女片黄在线观| 欧美7777| 国内揄拍国内精品少妇国语| 精品麻豆一区二区三区| 亚洲欧美国产日韩天堂区| а√天堂资源在线| 欧美日韩免费观看一区三区| 国产成人亚洲欧洲在线| ㊣最新国产の精品bt伙计久久| 中文字幕丰满孑伦无码专区| 风间由美性色一区二区三区| 久久99爱视频| 日日夜夜精品视频免费| ww国产内射精品后入国产| 91精品国产自产在线观看永久∴| 日本一区二区三区精品视频| 久久精品亚洲成在人线av网址| 91久久在线观看| 精品美女一区| 国产精品大片wwwwww| 欧美xxxhd| 韩国福利视频一区| 国产美女一区视频| 欧美人与性动交| 主播国产精品| 精品少妇一区二区30p| 九七久久人人| 久久天天躁日日躁| 国内精品久久久久久野外| 中文精品99久久国产香蕉| 精品成人一区二区三区免费视频| 亚洲精品美女久久久| 亚洲乱码国产乱码精品精软件| 91精品综合久久久久久| 亚洲一区二区人妻| 欧美日韩精品欧美日韩精品一 | 日日摸夜夜添夜夜添精品视频 | 成人一区二区三区在线观看| 国产ts在线观看| 国产成人在线视频网站| 成人在线观看一区二区| 国产成人免费视频一区| 日韩精品――色哟哟| 国产成人免费在线观看| 日韩精品视频一区二区| 91蝌蚪porny成人天涯| 深爱五月激情网| 欧美激情资源网| 国产日产在线观看| 亚洲欧洲日韩av| 五月婷婷一区二区| 亚洲国产wwwccc36天堂| 天堂网一区二区三区| 一本久久a久久免费精品不卡| 无码人妻精品一区二区三区9厂| 欧美视频一区二区三区…| 欧美特级黄色片| 欧美丰满少妇xxxxx高潮对白| 国产三级在线观看视频| 精品久久五月天| 偷拍自拍在线| 一区二区福利视频| 快射视频在线观看| 欧美黑人性视频| 视频二区不卡| 成人精品视频久久久久| 成人av地址| 欧美日韩高清免费| 91免费精品| 日韩精品一区二区在线视频| 免费日韩精品中文字幕视频在线| 日本激情视频在线| 国产精品亚洲午夜一区二区三区| 国产精品一区二区在线免费观看| 26uuu精品一区二区三区四区在线| 中文字幕黄色网址| 亚洲综合免费观看高清完整版在线 | 美女又黄又免费的视频| 91视频91自| 国产一区第一页| 亚洲va欧美va国产va天堂影院| 一级一级黄色片| 精品国精品国产| 成人免费高清在线播放| 久久99久久99精品免观看粉嫩| 在线免费看h| 亚洲综合中文字幕68页| 亚洲人成网77777色在线播放| 波多野结衣激情| 男人的天堂亚洲在线| 99中文字幕在线| 久久久久久久久伊人| 欧美成人一区二区三区高清| 91国产福利在线| 三级在线观看网站| 久久这里只有精品视频首页| 综合另类专区| av一本久道久久波多野结衣| 精品久久影院| 日本在线xxx| 国产一区二区女| 日本一道本视频| 欧美日韩午夜视频在线观看| 午夜精品无码一区二区三区| 在线视频欧美日韩| 涩涩网在线视频| 粉嫩av免费一区二区三区| 婷婷综合社区| 日韩一级理论片| 久久蜜桃av一区精品变态类天堂| 欧美xxxx黑人xyx性爽| 欧美日韩国产美| 日本人妖在线| 91国产一区在线| 91精品入口| 潘金莲一级淫片aaaaaa播放1| 免费人成黄页网站在线一区二区 | www黄色网址| 久久久精品在线| 国产亚洲人成a在线v网站| 蜜桃传媒视频麻豆第一区免费观看| 欧美日韩一区二区国产| www.色.com| 亚洲欧美偷拍三级| 一级片免费观看视频| 一区二区三区视频免费| 日本美女一区| 日本成人黄色免费看| 亚洲欧美激情诱惑| 亚洲第一黄色网址| 黄色一区二区三区| 婷婷视频在线观看| 97热精品视频官网| 国产一级成人av| 久久精品视频16| 91伊人久久大香线蕉| 五月激情六月丁香| 亚洲欧美激情另类校园| 91精品产国品一二三产区| 欧美日韩在线一二三| 久久这里只有| www中文在线| 欧美日韩国产在线播放网站| 老司机午夜在线| 亚洲永久免费观看| 极品av少妇一区二区| 日本一区二区在线观看视频| 婷婷开心激情综合| 日本一级在线观看| 国产精品美女久久久久久免费| 成人在线丰满少妇av| 五月天婷婷亚洲| 亚洲女同女同女同女同女同69| 国产99对白在线播放| 久久久亚洲精品视频| 日韩高清成人在线| 久久久久久香蕉| 最新中文字幕一区二区三区| 国产白浆在线观看| 18性欧美xxxⅹ性满足| 日韩三级av| 爱爱爱爱免费视频| 一区二区三区精品在线观看| 五月天福利视频| 国产精品日日摸夜夜添夜夜av| 在线观看免费一区二区| 人妻在线日韩免费视频| 欧美亚洲国产怡红院影院| 成人国产免费电影| 精品欧美日韩在线| 美女视频黄免费的久久| 欧美做爰爽爽爽爽爽爽| 亚洲精品国产成人| 成人福利一区二区| 91网站在线观看免费| 久久久久久久久久久电影| 一级爱爱免费视频| 性色av香蕉一区二区| 成人精品电影| 免费a v网站| 欧美日韩一区二区三区在线看 | 亚洲国产精品成人| 日本一区二区在线免费观看| 欧美四级电影网| xxx性欧美| 亚洲伊人婷婷| 久久综合九色综合97婷婷| 99久久亚洲精品日本无码| 欧美最顶级的aⅴ艳星| 欧美日韩亚洲一区二区三区在线| 日韩在线免费观看av| 亚洲第一精品夜夜躁人人躁|