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

探索分布式事務解決方案:八種方案解析

云計算 分布式
在電商秒殺活動中,為了防止超賣現象,需要確保同一時間只有一個請求能夠對庫存數量進行修改。這時,可以使用Redis作為分布式鎖的后端存儲,以確保秒殺活動的進行順利和公平。

探索分布式事務解決方案:八種方案解析

前面已經學習了分布式事務的基礎理論CAP 理論和 BASE 理論,以理論為基礎,針對不同的分布式場景業界常見的解決方案有2PC、TCC、可靠消息最終一致性、最大努力通知等方案,**以下 總結8 種常見的解決方案,取名 八奇技**。幫助大家在實際的分布式系統中更好地運用事務。。

1.2PC

二階段提交協議(Two-phase commit protocol),簡稱 2PC。2PC是將整個事務流程分為兩個階段:

  • 1.準備階段(Prepare phase)
  • 2.提交階段(commitphase)

2是指兩個階段,P是指準備階段,C是指提交階段

在計算機中部分關系數據庫如Oracle、MySQL支持兩階段提交協議,如下圖:

  • 準備階段(Prepare phase):事務管理器給每個參與者發送Prepare消息,每個數據庫參與者在本地執行事務,并寫本地的Undo/Redo日志,此時事務沒有提交。(Undo日志是記錄修改前的數據,用于數據庫回滾,Redo日志是記錄修改后的數據,用于提交事務后寫入據文件)
  • 提交階段(commit phase):如果事務管理器收到了參與者的執行失敗或者超時消息時,直接給每個參與者發送回滾(Rollback)消息;否則,發送提交(Commit)消息;參與者根據事務管理器的指令執行提交或者回滾操作,并釋放事務處理過程中使用的鎖資源。

注意:必須在最后階段釋放鎖資源

下圖展示了2PC的兩個階段,分成功和失敗兩個情況說明:

  • 成功情況:

圖片圖片

  • 異常情況:

圖片圖片

2PC優缺點:

優點

  • 簡單直觀:邏輯清晰,易于理解和實現。
  • 原子性保證:能夠保證跨多個分布式節點的事務的原子性。

缺點:

  • 同步阻塞:因為一階段需要鎖定數據庫資源,等待二階段結束才釋放,性能較差,在高并發場景下不適用
  • 單點故障問題,如果協調者在第二階段崩潰,參與者可能會無限期地等待指令,因為它們不知道應該提交還是回滾。這使得整個系統容易受到單點故障的影響
  • 數據不一致問題,如果在第二階段中協調者向某些參與者發送了提交指令,而其他參與者因為網絡問題沒有收到指令,那么這些沒有收到指令的參與者可能會選擇回滾,導致數據不一致

2.3PC

3PC,即Three-Phase Commit,是一種分布式事務協議,用于在分布式系統中確保多個參與者之間的事務操作的一致性和可靠性。它是在兩階段提交(2PC)協議的基礎上發展而來,解決了2PC協議可能出現的懸掛事務問題。

3PC協議將提交操作分為三個階段,分別是準備階段、提交準備階段和提交階段,每個階段都有對應的操作和協議。

準備階段(CanCommit):

  • 協調者:向所有參與者發送CanCommit準備請求,詢問它們是否可以提交事務。
  • 參與者:執行本地事務,檢查是否能夠執行,如果可以執行則返回可以提交,否則返回不可以提交。

提交準備階段(PreCommit):

  • 協調者: 根據參與者的反饋情況決定是否進行提交準備
  • 如果所有參與者都返回“可以提交”,協調者向所有參與者發送提交請求,告知它們可以進行提交準備。
  • 如果有任何參與者返回“不可以提交”或者超時未響應,則協調者向所有參與者發送中止請求,取消事務。

提交階段(DoCommit/DoAbort):

  • 如果協調者 接收到所有參與者的確認提交消息,則向所有參與者發送最終的提交請求,提交事務。
  • 如果協調者接收到任何參與者的中止請求,或者在提交準備階段超時未收到所有參與者的響應,則向所有參與者發送中止請求,取消事務

3PC協議相對于2PC協議的改進在于增加了一個準備階段,使得參與者在準備階段就能夠知道是否可以提交事務,從而避免了懸掛事務問題。然而,3PC協議仍然存在著協調者單點故障、消息丟失等問題,因此在實際應用中并不常見,一般更多地使用2PC、Saga等分布式事務解決方案

3.TCC

TCC是Try、Confirm、Cancel三個詞語的縮寫,TCC要求每個分支事務實現三個操作:預處理Try、確認Confirm、撤銷Cancel。Try操作業務檢查及資源預留,Confirm做業務確認操作,Cancel實現一個與Try相反的操作即回滾操作。TM首先發起所有的分支事務的try操作,任何一個分支事務的try操作執行失敗,TM將會發起所有分支事務的Cancel操作,若try操作全部成功,TM將會發起所有分支事務的Confirm操作,其中Confirm/Cancel操作若執行失敗,TM會進行重試。

  • 分支事務成功情況:

圖片圖片

  • 分支事務失敗的情況:

圖片圖片

TCC分為三個階段

  • Try 階段:是做業務檢查(一致性)及資源預留(隔離),此階段僅是一個初步操作,它和后續的Confirm 一起才能真正構成一個完整的業務邏輯。
  • Confirm 階段:是做確認提交,Try階段所有分支事務執行成功后開始執行 Confirm。通常情況下,采用TCC則認為 Confirm階段是不會出錯的。即:只要Try成功,Confirm一定成功。若Confirm階段真的出錯了,需引入重試機制或人工處理。。
  • Cancel 階段:是在業務執行錯誤需要回滾的狀態下執行分支事務的業務取消,預留資源釋放。通常情況下,采用TCC則認為Cancel階段也是一定成功的。若Cancel階段真的出錯了,需引入重試機制或人工處理

TCC需要注意三種異常處理

空回滾

在沒有調用 TCC 資源 Try 方法的情況下,調用了二階段的 Cancel 方法,Cancel 方法需要識別出這是一個空回滾,然后直接返回成功。

出現原因:是當一個分支事務所在服務宕機或網絡異常,分支事務調用記錄為失敗,這個時候其實是沒有執行Try階段,當故障恢復后,分布式事務進行回滾則會調用二階段的Cancel方法,從而形成空回滾。

解決思路是

關鍵就是要識別出這個空回滾。思路很簡單就是需要知道一階段是否執行,如果執行了,那就是正常回滾;如果沒執行,那就是空回滾。

冪等

TCC二階段提交重試機制不會引發數據不一致,要求 TCC 的二階段 Try、Confirm 和 Cancel 接口保證冪等,這樣不會重復使用或者釋放資源。如果冪等控制沒有做好,很有可能導致數據不一致等嚴重問題。

解決思路 在上述“分支事務記錄”中增加執行狀態,每次執行前都查詢該狀態。

懸掛

懸掛就是對于一個分布式事務,其二階段 Cancel 接口比 Try 接口先執行。

出現原因: 在 RPC 調用分支事務try時,先注冊分支事務,再執行RPC調用,如果此時 RPC 調用的網絡發生擁堵,通常 RPC 調用是有超時時間的,RPC 超時以后,TM就會通知RM回滾該分布式事務,可能回滾完成后,RPC 請求才到達參與者真正執行,而一個 Try 方法預留的業務資源,只有該分布式事務才能使用,該分布式事務第一階段預留的業務資源就再也沒有人能夠處理了,對于這種情況,我們就稱為懸掛,即業務資源預留后沒法繼續處理。

解決思路:如果二階段執行完成,那一階段就不能再繼續執行。在執行一階段事務時判斷在該全局事務下,“分支事務記錄”表中是否已經有二階段事務記錄,如果有則不執行Try。

TCC優缺點:

TCC的優點:

  • 一階段完成直接提交事務,釋放數據庫資源,性能好
  • 無需使用全局鎖,性能最強
  • 不依賴數據庫事務,而是依賴補償操作,可以用于非事務型數據庫

TCC的缺點

  • 有代碼侵入,需要人為編寫try、Confirm和Cancel接口,太麻煩
  • 軟狀態,事務是最終一致
  • 需要考慮Confirm和Cancel的失敗情況,做好冪等處理

4. 分布式補償事務(Saga)

Saga是一種長事務的解決方案,它將一個大的分布式事務拆分成多個較小的本地事務,并通過異步消息傳遞來串聯這些本地事務。每個本地事務執行成功后,會發送消息觸發下一個事務的執行。如果某個本地事務失敗,Saga會執行一系列補償操作,保持數據的一致性。

分布式補償事務(Saga) 優缺點

優點

  • 靈活性: 允許每個小事務獨立管理,提高了系統的靈活性。
  • 減少資源鎖定: 不需要持續占用資源,提高了系統的并發能力。
  • 容錯性: 通過定義補償操作來處理失敗,增強了系統的容錯能力。
  • 適用于微服務架構: 可以跨服務邊界管理事務,每個服務都可以獨立處理自己的事務和補償邏輯。

缺點

  • 復雜性: 實現Saga需要定義每個小事務的補償操作,增加了系統的復雜性。
  • 數據一致性: 不能提供即時一致性保證,只能保證最終一致性。
  • 補償操作的難度: 在某些情況下,補償操作可能很難實現,特別是當事務有副作用時。
  • 測試和調試: 涉及多個服務和補償邏輯,測試和調試可能會更加困難。

在選擇使用Saga模式時,需要仔細考慮業務場景是否適合最終一致性,以及是否能夠有效地實現和管理補償邏輯。對于需要高度一致性保證的場景,可能需要考慮其他事務管理機制。Saga模式在適當的情況下可以為分布式系統帶來靈活性和容錯性,但需要慎重考慮其復雜性和實現難度。

5. 可靠消息最終一致性

可靠消息最終一致性方案:是指當事務發起方執行完成本地事務后并發出一條消息,事務參與方(消息消費者)一定能夠接收消息并處理事務成功,此方案強調的是只要消息發給事務參與方最終事務要達到一致。

此方案是利用消息中間件完成,如下圖:

圖片圖片

事務發起方(消息生產方)將消息發給消息中間件,事務參與方從消息中間件接收消息,事務發起方和消息中間件之間,事務參與方(消息消費方)和消息中間件之間都是通過網絡通信,由于網絡通信的不確定性會導致分布式事務問題。

可靠消息最終一致性方案要解決以下幾個問題

1. 本地事務與消息發送的原子性問題

本地事務與消息發送的原子性問題即:事務發起方在本地事務執行成功后消息必須發出去,否則就丟棄消息。即實現本地事務和消息發送的原子性,要么都成功,要么都失敗。本地事務與消息發送的原子性問題是實現可靠消息最終一致性方案的關鍵問題。 先來嘗試下這種操作,先發送消息,再操作數據庫:

begin transaction;
//1.發送MQ
//2.數據庫操作
commit transation;

這種情況下無法保證數據庫操作與發送消息的一致性,因為可能發送消息成功,數據庫操作失敗立馬想到第二種方案,先進行數據庫操作,再發送消息:

begin transaction;
//1.數據庫操作
//2.發送MQ
commit transation;

這種情況下貌似沒有問題,如果發送MQ消息失敗,就會拋出異常,導致數據庫事務回滾。但如果是超時異常,數據庫回滾,但MQ其實已經正常發送了,同樣會導致不一致。

2. 事務參與方接收消息的可靠性

事務參與方必須能夠從消息隊列接收到消息,如果接收消息失敗可以重復接收消息。

3. 消息重復消費的問題

由于網絡2的存在,若某一個消費節點超時但是消費成功,此時消息中間件會重復投遞此消息,就導致了消息的重復消費。要解決消息重復消費的問題就要實現事務參與方的方法冪等性

6. 本地消息表方案

本地消息表這個方案最初是eBay提出的,此方案的核心是通過本地事務保證數據業務操作和消息的一致性,然后通過定時任務將消息發送至消息中間件,待確認消息發送給消費方成功再將消息刪除。

下面以注冊送積分為例來說明: 共有兩個微服務交互,用戶服務和積分服務,用戶服務負責添加用戶,積分服務負責增加積分。

圖片圖片

交互流程

  • 用戶注冊 用戶服務在本地事務新增用戶和增加 ”積分消息日志“。(用戶表和消息表通過本地事務保證一致)
begin transaction;
//1.新增用戶
//2.存儲積分消息日志
commit transation;

這種情況下,本地數據庫操作與存儲積分消息日志處于同一個事務中,本地數據庫操作與記錄消息日志操作具備原子性。

  • 定時任務掃描日志

思考:如何保證將消息發送給消息隊列呢?

經過第一步消息已經寫到消息日志表中,可以啟動獨立的線程,定時對消息日志表中的消息進行掃描并發送至消息中間件,在消息中間件反饋發送成功后刪除該消息日志,否則等待定時任務下一周期重試。

  • 消費消息

如何保證消費者一定能消費到消息呢?

這里可以使用MQ的ack(即消息確認)機制,消費者監聽MQ,如果消費者接收到消息并且業務處理完成后向MQ發送ack(即消息確認),此時說明消費者正常消費消息完成,MQ將不再向消費者推送消息,否則消費者會不斷重試向消費者來發送消息。

積分服務接收到”增加積分“消息,開始增加積分,積分增加成功后向消息中間件回應ack,否則消息中間件將重復 投遞此消息。由于消息會重復投遞,積分服務的”增加積分“功能需要實現冪等性

7.最大努力通知原則

最大努力通知也是一種基于消息的分布式事務解決方案,但它不保證 100% 的消息傳遞成功。它的工作原理是:

  • 在本地事務執行成功后,系統會嘗試通知其他的參與者或服務。
  • 通知操作會盡最大努力去執行,但如果失敗,系統不會無限重試。
  • 該方案通常結合人工干預,例如,如果通知失敗,系統可能會記錄日志、發送報警、或者提供管理界面供操作人員手動處理。思考:最大努力通知與可靠消息一致性有什么不同?

解決方案思想不同

可靠消息一致性,發起通知方需要保證將消息發出去,并且將消息發到接收通知方,消息的可靠性關鍵由發起通知方來保證。

  • 最大努力通知,發起通知方盡最大的努力將業務處理結果通知為接收通知方,但是可能消息接收不到,此時需要接 收通知方主動調用發起通知方的接口查詢業務處理結果,通知的可靠性關鍵在接收通知方。

兩者的業務應用場景不同

  • 可靠消息一致性:關注的是交易過程的事務一致,以異步的方式完成交易。
  • 最大努力通知:關注的是交易后的通知事務,即將交易結果可靠的通知出去。

技術解決方向不同

  • 可靠消息一致性:要解決消息從發出到接收的一致性,即消息發出并且被接收到。
  • 最大努力通知:無法保證消息從發出到接收的一致性,只提供消息接收的可靠性機制。可靠機制是,最大努力的將消息通知給接收方,當消息無法被接收方接收時,由接收方主動查詢消息(業務處理結果)。

8. 分布式鎖

在某些業務場景,使用分布式鎖是確保多個分布式節點不會同時操作同一資源的有效方法。這一機制可以通過使用像Redis、ZooKeeper等分布式協調服務來實現

應用場景: 在電商秒殺活動中,為了防止超賣現象,需要確保同一時間只有一個請求能夠對庫存數量進行修改。這時,可以使用Redis作為分布式鎖的后端存儲,以確保秒殺活動的進行順利和公平。

推薦場景: 當需要協調多個節點對共享資源進行訪問控制時,分布式鎖是一個非常有效的解決方案。例如,在分布式系統中,多個節點需要同時對同一資源進行讀取或更新操作時,為了保證數據的一致性和避免競態條件,可以使用分布式鎖來進行并發控制。

責任編輯:武曉燕 來源: springboot葵花寶典
相關推薦

2025-04-29 04:00:00

分布式事務事務消息

2023-09-14 15:44:46

分布式事務數據存儲

2020-05-28 09:35:05

分布式事務方案

2019-07-25 15:32:35

分布式事務微服務系統架構

2025-04-28 00:44:04

2020-03-31 16:13:26

分布式事務方案TCC

2025-05-07 00:10:00

分布式事務TCC模式

2010-07-21 13:53:41

SQL Server分

2019-01-11 18:22:07

阿里巴巴技術開源

2023-03-05 18:23:38

分布式ID節點

2021-06-25 10:35:58

分布式代碼Java

2019-09-09 10:09:51

分布式事務 數據庫

2023-11-30 07:19:08

.NET開源

2024-06-13 08:04:23

2025-08-27 09:11:48

2021-09-28 09:43:11

微服務架構技術

2024-12-09 09:35:00

2025-08-05 08:30:08

2021-06-28 10:03:44

分布式數據庫架構

2020-09-23 09:52:01

分布式WebSocketMQ
點贊
收藏

51CTO技術棧公眾號

午夜免费高清视频| 亚洲国产欧洲综合997久久| 久久久久久激情| 草莓视频一区二区三区| 黑人巨大精品欧美一区二区| 欧美一区视久久| 国产又大又黑又粗| 亚洲激情亚洲| 中文字幕久久久| 欧美性猛交乱大交| 中文字幕在线看片| 国产精品国产三级国产aⅴ入口 | 日韩黄色在线视频| 精品久久久久久久| 精品日韩在线观看| 中文字幕永久视频| 丁香花电影在线观看完整版| 国产日韩高清在线| 成人三级视频在线观看一区二区| 9i精品福利一区二区三区| 97精品国产福利一区二区三区| 日韩精品一区二区三区四区视频 | 天堂精品中文字幕在线| 久久精品福利视频| 好吊日免费视频| 涩爱av色老久久精品偷偷鲁| 欧美在线免费观看亚洲| 97超碰在线人人| 色的视频在线免费看| 91一区一区三区| 114国产精品久久免费观看| 在线观看日本视频| 欧美日韩三区| 日韩一区二区av| 受虐m奴xxx在线观看| 国内不卡的一区二区三区中文字幕| 欧美日韩国产一区二区三区| 欧美日韩一区二区三区在线观看免| 国产女人爽到高潮a毛片| 最新日韩在线| 色综合久久久888| 国产一区在线观看免费| 国产剧情一区| 日韩精品视频中文在线观看| 毛片毛片毛片毛| 精品三区视频| 色婷婷精品久久二区二区蜜臀av | 黄色片网站免费| 欧美美女黄色| 亚洲精品成人免费| 岛国精品资源网站| 超碰97久久| 91麻豆精品国产自产在线观看一区| 精品中文字幕av| 国产伦久视频在线观看| 性久久久久久久久| 999在线观看视频| caoporn视频在线| 亚洲一区二区精品3399| bt天堂新版中文在线地址| 午夜小视频福利在线观看| 亚洲欧美色综合| 亚洲天堂第一区| 午夜小视频在线观看| 亚洲永久精品国产| 国产3p露脸普通话对白| www.8ⅹ8ⅹ羞羞漫画在线看| 香蕉影视欧美成人| 欧美 日本 亚洲| 色偷偷偷在线视频播放| 精品久久久一区二区| 丰满爆乳一区二区三区| 亚洲天堂手机| 欧美性感一区二区三区| 不卡中文字幕在线观看| 日韩中文字幕在线一区| 亚洲国产成人久久综合| 久久中文字幕人妻| 久久高清精品| 欧美高清视频一区二区| 成年人午夜视频| 丝袜亚洲另类丝袜在线| 国产精品一区二区性色av | 亚洲成人一区二区三区| 思思99re6国产在线播放| 亚洲美腿欧美偷拍| 日本一本中文字幕| 日韩一区二区三区在线免费观看| 欧美日韩另类一区| 久久久精品人妻一区二区三区| 久久久久高潮毛片免费全部播放| 亚洲日本欧美日韩高观看| 午夜黄色福利视频| 欧美三级视频| 日本欧美精品在线| 91tv国产成人福利| 成人免费观看av| 色涩成人影视在线播放| 国产淫片在线观看| 日韩欧美国产激情| 五月六月丁香婷婷| 色天下一区二区三区| 精品国产自在精品国产浪潮| 国产精彩视频在线观看| 日产国产欧美视频一区精品| 91久久精品国产91久久性色tv| 亚洲 欧美 激情 另类| 国产精品久久久久久久久免费相片| 久久99国产精品一区| 依依综合在线| 欧美一区二区视频在线观看 | 国产欧美精品日韩区二区麻豆天美| 免费久久久久久| 美女福利一区二区三区| 欧美一级国产精品| 一级特黄曰皮片视频| 海角社区69精品视频| 国产精品色视频| 日韩二区三区| 亚洲国产欧美一区二区三区丁香婷| 高清一区二区视频| 亚洲电影男人天堂| 久久久久久一区二区三区 | 快she精品国产999| 国产视色精品亚洲一区二区| 黄色动漫在线观看| 欧美伊人久久久久久久久影院| 国产a级黄色片| 在线看片不卡| 成人精品视频99在线观看免费| 青青国产在线| 欧美日韩另类视频| 自拍偷拍21p| 狠狠做深爱婷婷综合一区| 97视频在线看| 亚洲欧美另类视频| 亚洲另类一区二区| 日韩成人av免费| 日韩电影在线视频| 国产精品丝袜一区二区三区| 风间由美一区| 91国产福利在线| aa一级黄色片| 亚洲永久网站| 久久精品国产美女| 黄频免费在线观看| 欧美精品一区二区三区一线天视频| 欧美三级黄色大片| 国内久久精品视频| 男人j进女人j| 亚洲一区二区三区四区电影| 欧美猛男性生活免费| 国产黄色av片| 一区二区三区毛片| 又色又爽又黄18网站| 好吊一区二区三区| 国新精品乱码一区二区三区18| 波多野结衣在线高清| 精品久久一区二区| 日韩在线观看第一页| 91蜜桃传媒精品久久久一区二区| 国产免费黄色av| 一呦二呦三呦国产精品| 国产精品91久久久| 91在线导航| 欧美一区二区三区在线视频| 天天看片中文字幕| 成人福利在线看| 国产成人a亚洲精v品无码| 国产精品手机在线播放| 国产精品一区久久久| 国产鲁鲁视频在线观看特色| 日韩限制级电影在线观看| 黄页网站免费观看| 99久久国产综合精品女不卡| 国产aaa一级片| 日韩av有码| 亚洲自拍中文字幕| sm久久捆绑调教精品一区| 亚洲免费视频观看| 夜夜躁狠狠躁日日躁av| 一级中文字幕一区二区| 风间由美一二三区av片| 视频一区中文字幕| 看一级黄色录像| 久久aimee| 国产欧美精品日韩精品| 欧美hdxxx| 亚洲视频在线看| 一级做a爱片久久毛片| 亚洲一区二区在线播放相泽| 波多野结衣片子| 国精产品一区一区三区mba桃花| 无码粉嫩虎白一线天在线观看| 亚洲影院天堂中文av色| 91精品啪aⅴ在线观看国产| 丁香花在线观看完整版电影| 一区二区三区四区精品| 东京干手机福利视频| 日本道色综合久久| www青青草原| 国产日产亚洲精品系列| 国产精品99精品无码视亚| 日韩专区在线视频| 一本久道高清无码视频| 99re久久最新地址获取| 精品麻豆av| 老司机亚洲精品一区二区| 欧美亚洲视频在线看网址| a天堂中文在线官网在线| 亚洲免费视频观看| 成人乱码一区二区三区| 精品视频一区二区不卡| 日韩三级一区二区三区| 综合婷婷亚洲小说| 中文字幕人妻一区二区三区在线视频| 国产激情精品久久久第一区二区| 欧美丰满熟妇xxxxx| 亚洲大胆视频| 成人在线免费观看网址| 精品亚洲成人| 欧美另类一区| 精品女人视频| 91丨九色丨国产| 亚洲我射av| 国产精品久久久精品| 国产乱码午夜在线视频| 欧美精品成人在线| 97影院秋霞午夜在线观看| 中文字幕精品在线| www黄在线观看| 亚洲美女在线观看| 五月激情丁香婷婷| 精品国产乱码久久久久久久| 国产精品无码白浆高潮| 精品视频资源站| 乱子伦一区二区三区| 福利精品视频在线| 日韩欧美中文字幕一区二区| 伊人色综合久久天天| 国产美女久久久久久| 国产精品国产馆在线真实露脸 | 日本不卡一区二区在线观看| 三级久久三级久久| 午夜视频在线瓜伦| 日日摸夜夜添夜夜添亚洲女人| 日韩欧美一区二| 亚洲欧美日韩专区| 可以免费观看av毛片| 丝袜美腿亚洲综合| 国产a级片免费观看| 日韩精品国产精品| 成人性生交免费看| 久久精品国产久精国产| 国模私拍视频在线观看| 国产在线观看一区二区| 国产大片一区二区三区| 国产精品系列在线播放| 欧美一级片在线免费观看| 高清不卡一二三区| 中文字幕影片免费在线观看| 99re8在线精品视频免费播放| 中文字幕av网址| 国产午夜一区二区三区| 日本黄区免费视频观看| 18欧美亚洲精品| 欧美国产精品一二三| 亚洲成年人网站在线观看| 国产香蕉视频在线| 欧美又粗又大又爽| 国产精品日韩无码| 精品人伦一区二区色婷婷| 少妇一级淫片免费看| 亚洲美女av在线播放| 成年人在线视频免费观看| 久久久91精品国产| 国产亚av手机在线观看| 欧美影院久久久| 欧美高清影院| 99一区二区| 国产精品午夜一区二区三区| 91制片厂免费观看| 亚洲黄色成人| 日本999视频| 国产一区二区成人久久免费影院| 欧美激情 亚洲| 国产蜜臀97一区二区三区| 在线免费观看亚洲视频| 欧美日韩国产在线播放| 做爰视频毛片视频| 亚洲精品在线三区| 福利在线播放| 97视频人免费观看| 欧美激情不卡| 精品一区二区久久久久久久网站| 日本一本不卡| 99久久国产综合精品五月天喷水| 日韩精品午夜视频| 亚洲av无码成人精品区| 国产欧美日韩精品在线| 久久久久亚洲av无码专区 | 午夜免费高清视频| 成人av在线播放网站| 91麻豆制片厂| 四虎视频在线精品免费网址| 黄色综合网站| av免费观看大全| 蜜桃久久久久久久| 色综合久久五月| 1024成人网色www| 中文字幕超碰在线| 日韩欧美在线观看一区二区三区| 美女毛片在线看| 久久免费高清视频| 四虎国产精品免费久久5151| 蜜桃导航-精品导航| 欧美黄色一区| 成年网站免费在线观看| 91香蕉视频污| 久久免费小视频| 欧美精品久久99久久在免费线| 日本在线视频1区| 久久免费少妇高潮久久精品99| 日本午夜精品久久久久| 久久狠狠久久综合桃花| 狠狠综合久久| 香蕉视频色在线观看| 成人欧美一区二区三区在线播放| 国产精品乱子伦| 亚洲高清不卡av| 欧美24videosex性欧美| 91性高湖久久久久久久久_久久99| 国产成人黄色| 国产资源在线视频| 成人精品在线视频观看| 成人一级黄色大片| 欧美日韩的一区二区| 福利视频在线播放| 国产精品久久久久久影视| 九九视频免费观看视频精品| 日本免费不卡一区二区| 成人av免费在线观看| 国产在线综合网| 精品少妇一区二区三区在线播放| www.欧美日本韩国| 92看片淫黄大片欧美看国产片| 久久久精品久久久久久96| 午夜免费看视频| 中文字幕中文字幕在线一区| 又污又黄的网站| 伊人精品在线观看| 国产69精品久久| 一区二区三区四区视频在线| 美国毛片一区二区三区| www.xx日本| 欧美一区二区三区小说| 超碰在线caoporn| 99久久伊人精品影院| 黄色综合网站| 日韩一级视频在线观看| 色综合久久久久网| 国产youjizz在线| 国产在线观看精品| 羞羞答答成人影院www| 久久精品一卡二卡| 亚洲一级在线观看| 手机福利在线| 国产精品香蕉av| 亚洲国产精品久久久天堂| 欧美日韩一区二区区| 午夜激情久久久| 国产中文在线观看| 成人精品福利视频| 亚洲激情国产| 免费视频91蜜桃| 91精品国产美女浴室洗澡无遮挡| 免费电影网站在线视频观看福利| 精品久久久久亚洲| 日本欧美一区二区三区乱码 | 亚洲国产精品高清| 国产又色又爽又黄又免费| 色综合导航网站| 久久不见久久见免费视频7| 污网站在线免费| 亚洲国产精品尤物yw在线观看| 国产在线视频网址| 91久久精品一区二区别| 欧美专区在线| 男女性高潮免费网站| 日韩成人激情在线| 日本美女久久| 日本香蕉视频在线观看| 日本一区二区综合亚洲| www久久久久久| 国产97在线|亚洲| 国产精品chinese| xxxxx99| 日韩精品专区在线影院观看| 经典三级一区二区| 日本黄色片一级片|