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

“分布式事務”,這次徹底懂了!

開發 架構 開發工具 分布式
在分布式、微服務大行其道的今天,相信大家對這些名詞都不會陌生。而說到使用分布式,或者拆分微服務的好處,你肯定能想到一大堆。

在分布式、微服務大行其道的今天,相信大家對這些名詞都不會陌生。而說到使用分布式,或者拆分微服務的好處,你肯定能想到一大堆。

[[269005]] 

圖片來自包圖網

比如每個人只需要維護自己單獨的服務,沒有了以前的各種代碼沖突。自己想測試、想發布、想升級,只需要 Care 自己寫的代碼就 OK 了,很方便很貼心!

然而事物都有兩面性,它同時也會帶來一些問題,今天的文章談的就是分布式系統架構帶來的其中一個棘手的問題:分布式事務!

什么是事務?

首先拋出來一個問題:什么是事務?有人會說事務就是一系列操作,要么同時成功,要么同時失敗;然后會從事務的 ACID 特性(原子性、一致性、隔離性、持久性)展開敘述。

確實如此,事務就是為了保證一系列操作可以正常執行,它必須同時滿足 ACID 特性。

但是今天我們換個角度思考下,我們不僅要知道 What(比如什么是事務),更要知道事務的 Why(比如為什么會有事務這個概念?事務是為了解決什么問題)。

有時候,換個角度說不定有不一樣的收獲。

換個角度看事務

就像經典的文學作品均來自于生活,卻又高于生活,事務的概念同樣來自于生活,引入“事務”肯定是為了解決某種問題,不然,誰又愿意干這么無聊的事情呢?

最簡單最經典的例子:銀行轉賬,我們要從 A 賬戶轉 1000 塊到 B 賬戶。

正常情況下如果從 A 轉出 1000 到 B 賬戶之后,A 賬戶余額減 1000(這個操作我們用 Action1 代表),B 賬戶余額加 1000(這個操作我們用 Action2 代表)

首先我們要明確一點,Action1 和 Action2 是兩個操作。既然是兩個操作那么就一定會存在執行的先后順序。

那么就可能會出現 Action1 執行完剛準備去執行 Action2 的時候出問題了(比如數據庫負載過大暫時拒絕訪問)。

類比到我們生活中,那就是我給朋友轉了 1000 塊錢,然后我卡里的余額少了 1000,但是我朋友卻沒有收到錢。

為解決這種“Money 去哪兒了”的問題,引入了“事務”的概念。也就是說,既然我轉賬的時候你保證不了 100% 能成功,比如銀行系統只能保證 99.99% 的高可用,那么在那 0.01% 的時間里如果出現了上述問題,銀行系統直接回滾 Action1 操作?(即把 1000 塊錢再加回余額中去)

對于銀行系統來說,可能在 0.01% 的時間里我保證不了 Action1 和 Action2 同時成功,那么在出問題的時候,我保證它倆同時失敗。(事務的原子性)

通過這個例子,就已經回答了剛開始提出的 2 個問題(為什么會有事務?事務是為了解決什么問題?)

總結一下:事務就是通過它的 ACID 特性,保證一系列的操作在任何情況下都可以安全正確的執行。

Java 中的事務

搞清楚了事務之后,我們來看點眼熟的,Java 中的事務是怎么玩的?

Java 中我們平時用的最多的就是在 Service 層的增刪改方法上添加 @Transactional 注解,讓 Spring 去幫我們管理事務。

它底層會給我們的 Service 組件生成一個對應的 Proxy 動態代理,這樣所有對 Service 組件的方法都由它對應的 Proxy 來接管。

當 Proxy 在調用對應業務方法比如 add() 時,Proxy 就會基于 AOP 的思想在調用真正的業務方法前執行 setAutoCommit(false)打開事務。

然后在業務方法執行完后執行 Commit 提交事務,當在執行業務方法的過程中發生異常時就會執行 Rollback 來回滾事務。

當然 @Transactional 注解具體的實現細節這里不再展開,這個不是本篇文章的重點,本文的 Topic 是“分布式事務”,關于 @Transactional 注解大家有興趣的話,可以自己打斷點 Debug 源碼研究下,源碼出真知。

啥又是分布式事務?

鋪墊了辣么久,終于到了本篇的***個重點!首先大家想過沒:既然有了事務,并且使用 Spring 的 @Transactional 注解來控制事務是如此的方便,那為啥還要搞一個分布式事務的概念出來啊?

更進一步,分布式事務和普通事務到底是啥關系?有什么區別?分布式事務又是為了解決什么問題出現的?

各種疑問接踵而至,別著急,帶著這些思考,咱們接下來就詳細聊聊分布式事務。

既然叫分布式事務,那么必然和分布式有點關系啦!簡單來說,分布式事務指的就是分布式系統中的事務。

好,那咱們繼續,首先來看看下面的圖:

 

如上圖所示,一個單塊系統有 3 個模塊:員工模塊、財務模塊和請假模塊。我們現在有一個操作需要按順序去調用完成這 3 個模塊中的接口。

這個操作是一個整體,包含在一個事務中,要么同時成功要么同時失敗回滾。不成功便成仁,這個都沒有問題。

但是當我們把單塊系統拆分成分布式系統或者微服務架構,事務就不是上面那么玩兒了。

首先我們來看看拆分成分布式系統之后的架構圖,如下所示:

 

上圖是同一個操作在分布式系統中的執行情況。員工模塊、財務模塊和請假模塊分別給拆分成員工系統、財務系統和請假系統。

比如一個用戶進行一個操作,這個操作需要先調用員工系統預先處理一下,然后通過 HTTP 或者 RPC 的方式分別調用財務系統和請假系統的接口做進一步的處理,它們的操作都需要分別落地到數據庫中。

這 3 個系統的一系列操作其實是需要全部被包裹在同一個分布式事務中的,此時這 3 個系統的操作,要么同時成功要么同時失敗。

分布式系統中完成一個操作通常需要多個系統間協同調用和通信,比如上面的例子。

三個子系統:員工系統、財務系統、請假系統之間就通過 HTTP 或者 RPC 進行通信,而不再是一個單塊系統中不同模塊之間的調用,這就是分布式系統和單塊系統***的區別。

一些平時不太關注分布式架構的同學,看到這里可能會說:我直接用 Spring 的 @Transactional 注解就 OK 了啊,管那么多干嘛!

但是這里極其重要的一點:單塊系統是運行在同一個 JVM 進程中的,但是分布式系統中的各個系統運行在各自的 JVM 進程中。

因此你直接加 @Transactional 注解是不行的,因為它只能控制同一個 JVM 進程中的事務,但是對于這種跨多個 JVM 進程的事務無能無力。

分布式事務的幾種實現思路

搞清楚了啥是分布式事務,那么分布式事務到底是怎么玩兒的呢?下邊就來給大家介紹幾種分布式事務的實現方案。

可靠消息最終一致性方案

整個流程圖如下所示:

 

我們來解釋一下這個方案的大概流程:

  • A 系統先發送一個 Prepared 消息到 MQ,如果這個 Prepared 消息發送失敗那么就直接取消操作別執行了,后續操作都不再執行。
  • 如果這個消息發送成功了,那么接著執行 A 系統的本地事務,如果執行失敗就告訴 MQ 回滾消息,后續操作都不再執行。
  • 如果 A 系統本地事務執行成功,就告訴 MQ 發送確認消息。
  • 那如果 A 系統遲遲不發送確認消息呢?此時 MQ 會自動定時輪詢所有 Prepared 消息,然后調用 A 系統事先提供的接口,通過這個接口反查 A 系統的上次本地事務是否執行成功。
  • 如果成功,就發送確認消息給 MQ;失敗則告訴 MQ 回滾消息。(后續操作都不再執行)
  • 此時 B 系統會接收到確認消息,然后執行本地的事務,如果本地事務執行成功則事務正常完成。
  • 如果系統 B 的本地事務執行失敗了咋辦?基于 MQ 重試咯,MQ 會自動不斷重試直到成功,如果實在是不行,可以發送報警由人工來手工回滾和補償。

這種方案的要點就是可以基于 MQ 來進行不斷重試,最終一定會執行成功的。

因為一般執行失敗的原因是網絡抖動或者數據庫瞬間負載太高,都是暫時性問題。

通過這種方案,99.9% 的情況都是可以保證數據最終一致性的,剩下的 0.1% 出問題的時候,就人工修復數據唄。

適用場景:這個方案的使用還是比較廣,目前國內互聯網公司大都是基于這種思路玩兒的。

***努力通知方案

整個流程圖如下所示:

 

這個方案的大致流程:

  • 系統 A 本地事務執行完之后,發送個消息到 MQ。
  • 這里會有個專門消費 MQ 的***努力通知服務,這個服務會消費 MQ,然后寫入數據庫中記錄下來,或者是放入個內存隊列。接著調用系統 B 的接口。
  • 假如系統 B 執行成功就萬事 OK 了,但是如果系統 B 執行失敗了呢?
  • 那么此時***努力通知服務就定時嘗試重新調用系統 B,反復 N 次,***還是不行就放棄。

這套方案和上面的可靠消息最終一致性方案的區別:可靠消息最終一致性方案可以保證的是只要系統 A 的事務完成,通過不停(***次)重試來保證系統 B 的事務總會完成。

但是***努力方案就不同,如果系統 B 本地事務執行失敗了,那么它會重試 N 次后就不再重試,系統 B 的本地事務可能就不會完成了。至于你想控制它究竟有“多努力”,這個需要結合自己的業務來配置。

比如對于電商系統,在下完訂單后發短信通知用戶下單成功的業務場景中,下單正常完成,但是到了發短信的這個環節由于短信服務暫時有點問題,導致重試了 3 次還是失敗。

那么此時就不再嘗試發送短信,因為在這個場景中我們認為 3 次就已經算是盡了“***努力”了。

簡單總結:就是在指定的重試次數內,如果能執行成功那么皆大歡喜,如果超過了***重試次數就放棄,不再進行重試。

適用場景:一般用在不太重要的業務操作中,就是那種完成的話是錦上添花,但失敗的話對我也沒有什么壞影響的場景。

比如上邊提到的電商中的部分通知短信,就比較適合使用這種***努力通知方案來做分布式事務的保證。

TCC 強一致性方案

TCC的 全稱是:

  • Try(嘗試)
  • Confirm(確認/提交)
  • Cancel(回滾)

這個其實是用到了補償的概念,分為了三個階段:

  • Try 階段:這個階段說的是對各個服務的資源做檢測以及對資源進行鎖定或者預留。
  • Confirm 階段:這個階段說的是在各個服務中執行實際的操作。
  • Cancel 階段:如果任何一個服務的業務方法執行出錯,那么這里就需要進行補償,就是執行已經執行成功的業務邏輯的回滾操作。

還是給大家舉個例子:

 

比如跨銀行轉賬的時候,要涉及到兩個銀行的分布式事務,如果用 TCC 方案來實現,思路是這樣的:

  • Try 階段:先把兩個銀行賬戶中的資金給它凍結住就不讓操作了。
  • Confirm 階段:執行實際的轉賬操作,A 銀行賬戶的資金扣減,B 銀行賬戶的資金增加。
  • Cancel 階段:如果任何一個銀行的操作執行失敗,那么就需要回滾進行補償,就是比如 A 銀行賬戶如果已經扣減了,但是 B 銀行賬戶資金增加失敗了,那么就得把 A 銀行賬戶資金給加回去。

適用場景:這種方案說實話幾乎很少有人使用,我們用的也比較少,但是也有使用的場景。

因為這個事務回滾實際上是嚴重依賴于你自己寫代碼來回滾和補償了,會造成補償代碼巨大,非常之惡心。

比如說我們,一般來說跟錢相關的,跟錢打交道的,支付、交易相關的場景,我們會用 TCC,嚴格保證分布式事務要么全部成功,要么全部自動回滾,嚴格保證資金的正確性,在資金上不允許出現問題。

比較適合的場景:除非你是真的一致性要求太高,是你系統中核心之核心的場景,比如常見的就是資金類的場景,那你可以用 TCC 方案了。

你需要自己編寫大量的業務邏輯,自己判斷一個事務中的各個環節是否 OK,不 OK 就執行補償/回滾代碼。

而且***是你的各個業務執行的時間都比較短。但是說實話,一般盡量別這么搞,自己手寫回滾邏輯,或者是補償邏輯,實在太惡心了,那個業務代碼很難維護。

總結

本篇介紹了什么是分布式事務,然后還介紹了最常用的 3 種分布式事務方案

但除了上邊的方案外,其實還有兩階段提交方案(XA 方案)和本地消息表等方案。

但是說實話極少有公司使用這些方案,鑒于篇幅所限,不做介紹。后續如果有機會再出篇文章,詳細聊聊這兩種方案的思路。

中華石杉:十余年 BAT 架構經驗,一線互聯網公司技術總監。帶領上百人團隊開發過多個億級流量高并發系統。現將多年工作中積累下的研究手稿、經驗總結整理成文,傾囊相授。微信公眾號:石杉的架構筆記(ID:shishan100)。

 

 

責任編輯:武曉燕 來源: 石杉的架構筆記
相關推薦

2022-06-27 08:21:05

Seata分布式事務微服務

2019-06-26 06:31:56

緩沖緩沖池查詢數據

2019-06-24 05:05:40

緩沖池查詢數據InnoDB

2022-06-21 08:27:22

Seata分布式事務

2017-07-26 15:08:05

大數據分布式事務

2019-10-10 09:16:34

Zookeeper架構分布式

2009-06-19 15:28:31

JDBC分布式事務

2009-09-18 15:10:13

分布式事務LINQ TO SQL

2021-09-29 09:07:37

分布式架構系統

2021-03-06 23:28:28

2PC3PC模型

2025-04-29 04:00:00

分布式事務事務消息

2022-03-24 07:51:27

seata分布式事務Java

2025-05-15 08:05:00

2020-03-31 08:05:23

分布式開發技術

2018-10-28 17:54:00

分布式事務數據

2023-09-11 15:40:43

鍵值存儲云服務

2023-12-26 08:59:52

分布式場景事務機制

2022-01-26 13:46:40

分布式事務集合,這

2024-01-05 07:28:50

分布式事務框架

2022-06-14 10:47:00

分布式事務數據
點贊
收藏

51CTO技術棧公眾號

五月天婷婷激情| 亚洲综合免费观看高清完整版在线 | www日韩中文字幕在线看| a级黄色片免费| 黄页网站免费观看| yiren22亚洲综合| 欧美日韩中文| 欧美日韩二区三区| 日本一区视频在线观看免费| 伊人国产在线观看| 四虎影视精品永久在线观看| 久久久综合激的五月天| 久久精品视频播放| 三级视频中文字幕| 户外极限露出调教在线视频| 91精品啪在线观看国产爱臀 | 欧美日韩一区二区三区视频 | 丰满人妻av一区二区三区| 欧美手机在线| 色综合天天综合| 国产一区二区三区黄| 久久黄色免费视频| 精品国产一区二区三区久久久蜜臀| 亚洲成人7777| 国产日韩欧美二区| 亚洲天堂avav| 久久国产电影| 欧美日韩第一区日日骚| 人妻av中文系列| 三级网站在线看| 99亚洲一区二区| 亚洲精品福利在线观看| 亚洲人成无码网站久久99热国产| www.热久久| 亚洲国产国产亚洲一二三| 精品国产污污免费网站入口 | 一本色道久久综合狠狠躁的推荐| 99亚洲国产精品| 精品人妻一区二区三区麻豆91 | 国内伊人久久久久久网站视频 | 玖玖精品在线视频| 精品国产亚洲av麻豆| 日韩中文字幕一区二区三区| 国产性猛交xxxx免费看久久| 草草草在线视频| 阿v免费在线观看| 国产在线不卡一区| 久久欧美在线电影| 欧美精品入口蜜桃| 亚洲电影在线一区二区三区| 日韩精品综合一本久道在线视频| 国产成人一二三区| 黄网页在线观看| 成人免费视频播放| 日产精品99久久久久久| 亚洲aaa视频| 4438全国亚洲精品观看视频| 欧美日韩一二三| 五月婷婷六月丁香激情| 日本欧美电影在线观看| 91小视频在线观看| 国产精品亚发布| 波多野结衣爱爱视频| 欧美wwwsss9999| 欧美视频一区二| 国产精品久久久久久久乖乖| 精品视频二区| 国产丝袜在线精品| 91久久国产综合久久蜜月精品| 国产午夜精品一区二区理论影院| 国一区二区在线观看| 亚洲欧美综合另类中字| 亚洲精品中文字幕乱码无线| 波多一区二区| 国产精品乱码久久久久久| 国产精品自拍首页| 国产精品伦理一区| 欧美亚洲网站| 欧美大片在线影院| 精品亚洲aⅴ无码一区二区三区| 日本伊人久久| 欧美亚洲综合在线| 欧美视频亚洲图片| 国产精品x8x8一区二区| 精品视频一区三区九区| 成人亚洲免费视频| 综合在线影院| 亚洲18色成人| 玖玖精品在线视频| 俺来也官网欧美久久精品| 天天操天天色综合| 久久久99精品视频| 日韩伦理精品| 一区二区三区中文字幕| 亚洲一区二三| 成人性生交大片免费看午夜| 国产精品久久久久久亚洲伦| 粉嫩av一区二区三区天美传媒| 黑森林国产精品av| 一区二区三区日韩欧美精品| 免费无遮挡无码永久视频| 深夜国产在线播放| 动漫精品一区二区| 欧美国产亚洲一区| 四虎国产精品免费久久5151| 精品成人私密视频| 国产在线免费av| 免费成人网www| 日韩成人性视频| 影音先锋资源av| 麻豆国产一区| 欧美一区二区私人影院日本| 国产高清视频网站| 欧美h版在线观看| 亚洲视频在线观看| 久久综合加勒比| 国内精品福利| 国产欧美亚洲视频| 91麻豆视频在线观看| 奇米在线7777在线精品| 国产精品免费网站| 中文字幕在线观看第二页| 男女激情视频一区| 91精品国产自产在线| 婷婷伊人综合中文字幕| 亚洲人成在线播放网站岛国| 久久99国产精品一区| 成人在线爆射| 欧美三级视频在线| 天堂久久久久久| 沈樵精品国产成av片| 欧美精品电影在线| 欧美啪啪小视频| 国产成人亚洲综合a∨婷婷 | 成人av免费在线播放| 国产精品污www一区二区三区| 91精品国产91久久久久游泳池 | 免费的成人av| 免费一区二区三区| 成人在线观看免费| 日韩欧美在线免费| 999在线免费视频| 四虎影视成人精品国库在线观看| 国产午夜精品久久久| 91视频免费在观看| 久久九九电影| 成人精品aaaa网站| 亚洲精品久久久蜜桃动漫 | 日本精品一级二级| 欧美性受xxxxxx黑人xyx性爽| 综合干狼人综合首页| 上原亚衣av一区二区三区| 黄色a级片在线观看| 免费成人美女在线观看.| 日本免费一区二区三区| 福利视频在线| 欧美日韩国产黄| 99久久免费看精品国产一区| 成人三级视频| 国产精品入口免费视频一| 成人在线免费观看| 欧美久久久久久久久| 青青草视频网站| 亚洲国产网站| 九色一区二区| www.久久久久.com| 日韩一区二区免费视频| 级毛片内射视频| 欧美精品导航| 国产精品成人一区二区三区| 成人精品一区二区三区校园激情| 91久久精品午夜一区二区| 蜜桃av乱码一区二区三区| 亚洲无毛电影| 久久综合伊人77777麻豆| 日韩中文在线播放| 亚洲韩国青草视频| 久久国产视频播放| 国产精品白丝jk黑袜喷水| 欧美系列一区| 国产白丝在线观看| 日韩精品视频在线| 亚洲永久精品一区| 成年人国产精品| 116极品美女午夜一级| 欧美黄色一级| 国语自产精品视频在免费| 五月婷婷丁香花| 亚洲精品国久久99热| 亚洲最大视频网| 视频在线不卡免费观看| 国产91|九色| 亚洲国产成人在线观看| 欧美日韩视频免费播放| 日韩视频在线观看免费视频| 国产精品一区二区在线播放 | 成人写真福利网| 丁香花在线电影| 国产一区二区三区在线播放免费观看 | 色琪琪久久se色| 国产精品久久久一区二区三区| 奇米777日韩| 欧美黑人巨大精品一区二区| 完全免费av在线播放| 日本成人手机在线| 日本午夜在线亚洲.国产| 久操视频在线观看| 精品无人国产偷自产在线| 一级黄色片免费看| 色哟哟亚洲精品| 欧美精品久久久久性色| 欧美高清一级片在线观看| 色综合av综合无码综合网站| 日本午夜精品| 91九色国产社区在线观看| 麻豆网站视频在线观看| 欧美乱妇一区二区三区不卡视频| 黄色小视频在线免费看| 中文字幕永久在线不卡| 久久久久久蜜桃一区二区| 亚洲日本免费| 99re6这里有精品热视频| 色婷婷热久久| 日韩中文一区二区三区| 婷婷五月色综合香五月| 日韩免费在线观看视频| a级片免费在线观看| 亚洲精品电影网| 精品国产乱码一区二区三| 欧美日韩精品一区二区三区| 日本一区二区免费电影| 国产日韩欧美麻豆| 亚洲制服丝袜在线播放| 视频一区二区中文字幕| 亚洲人成网站在线播放2019| 天堂99x99es久久精品免费| 国产成人亚洲欧美| 亚洲精品aⅴ| 91夜夜未满十八勿入爽爽影院| 在线成人视屏| 国产成人avxxxxx在线看| av免费在线一区二区三区| 亚洲欧美精品一区| 国产尤物视频在线观看| 91久久精品一区二区| 久久久精品毛片| 中文字幕在线免费不卡| 天堂网中文在线观看| 国产精品久久久久一区二区三区| 国产又黄又粗视频| 欧美激情资源网| 国产乱国产乱老熟300部视频| 韩国成人精品a∨在线观看| 三上悠亚久久精品| 日韩午夜免费| 国产亚洲综合视频| 久久午夜av| 国产福利影院在线观看| 亚洲手机视频| 国产69精品久久久久999小说| 亚洲一本视频| 亚洲欧美精品在线观看| 大桥未久女教师av一区二区| 国产经品一区二区| 久久精品亚洲成在人线av网址| 国产成人在线播放| 91国拍精品国产粉嫩亚洲一区| 国产精品久久91| av日韩中文| 欧美专区第一页| 黄色国产网站在线播放| 欧美精品在线观看| www日韩tube| 日韩中文字幕网址| 污污的网站在线看| 亚洲18私人小影院| 18videosex性欧美麻豆| 一区二区成人av| 午夜成人免费影院| 亚洲欧美中文日韩v在线观看| 91在线网址| 欧美激情精品久久久久久蜜臀 | 韩国中文字幕hd久久精品| 亚洲黄在线观看| 成年人视频免费在线观看| 另类图片亚洲另类| 91社区在线观看播放| 日韩亚洲成人av在线| 欧美黑人猛交| 欧美精品亚州精品| 老牛影视精品| 国产一区二区在线免费视频| 国内自拍欧美| 亚洲一区二区在线观| 亚洲国产二区| 日韩av片免费观看| 久久奇米777| 日韩欧美中文字幕视频| 国产精品不卡一区二区三区| 久草成人在线视频| 欧美系列日韩一区| 日本黄色不卡视频| 欧美精品一区二区三区蜜桃| 国产原创av在线| 欧美日本在线视频中文字字幕| 日本蜜桃在线观看| 日日噜噜噜夜夜爽亚洲精品| brazzers在线观看| 91免费版网站入口| 九色精品91| 国产成a人亚洲精v品在线观看| 日本成人在线不卡视频| 精品人妻伦一二三区久| 99国产精品久| av网页在线观看| 亚洲图片欧美激情| 天堂av免费在线观看| 亚洲精品美女在线| 97超碰在线公开在线看免费| 国产精品丝袜视频| 欧美精品momsxxx| 久色视频在线播放| 成人晚上爱看视频| 国产成人自拍网站| 亚洲精品国产高清久久伦理二区| 无码人妻精品一区二区50| 亚洲精品xxxx| 国产色婷婷在线| 91av一区二区三区| 91九色精品| 免费高清一区二区三区| 久久99精品久久久久久国产越南 | av综合电影网站| 国产成人一区二区| 日韩大胆成人| 国产真人做爰毛片视频直播| 国产福利一区在线观看| 国产美女福利视频| 欧美浪妇xxxx高跟鞋交| 日日夜夜精品一区| 国产日韩欧美中文在线播放| av一区二区在线播放| 99视频精品免费| 久久亚区不卡日本| 日韩精品成人免费观看视频| 亚洲老头同性xxxxx| 中文在线8资源库| 成人av资源在线播放| 色天天久久综合婷婷女18 | 国产乱码一区二区三区| 国产精品白丝喷水在线观看| 91精品一区二区三区在线观看| 国产91绿帽单男绿奴| 欧美猛少妇色xxxxx| 香蕉成人app| 国产一区二区三区乱码| 99在线精品观看| 日本免费网站视频| 欧美人成免费网站| a在线免费观看| 国产91免费视频| 99热精品在线| 少妇久久久久久久久久| 亚洲综合激情网| 黑人乱码一区二区三区av| 亚洲**2019国产| 欧美日韩亚洲在线观看| 亚洲免费av一区| 久久久国产午夜精品 | 欧美久久一二三四区| 蜜桃av在线免费观看| 7777精品伊久久久大香线蕉语言| 亚洲国产1区| 国产黄片一区二区三区| 欧美精品久久久久久久久老牛影院| 成人区精品一区二区不卡| 国产精品久久久久久久天堂第1集| 亚洲一区网站| 欧美xxxooo| 精品国产91久久久久久久妲己 | 国产精品视频区1| 欧美在线看片| 成人性做爰aaa片免费看不忠| 国产精品私人自拍| 成 人片 黄 色 大 片| 青青久久av北条麻妃海外网| 日韩毛片视频| 国产xxxx视频| 欧美日韩国产另类不卡| 黄色大片在线| 亚洲黄色成人久久久| av资源网一区| 亚洲无码精品在线播放| 午夜精品一区二区三区视频免费看| 精品国产一级毛片| 男人网站在线观看| 欧美色精品在线视频| 国产在线看片免费视频在线观看| 亚洲欧洲精品在线| 91丨porny丨在线|