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

想染指系統架構?你絕對不可錯過的一篇

新聞 前端
事務提供一種機制將一個活動涉及的所有操作納入到一個不可分割的執行單元,組成事務的所有操作只有在所有操作均能正常執行的情況下方能提交,只要其中任一操作執行失敗,都將導致整個事務的回滾。

 前言

不知道你是否遇到過這樣的情況,去小賣鋪買東西,付了錢,但是店主因為處理了一些其他事,居然忘記你付了錢,又叫你重新付。又或者在網上購物明明已經扣款,但是卻告訴我沒有發生交易。這一系列情況都是因為沒有事務導致的。這說明了事務在生活中的一些重要性。有了事務,你去小賣鋪買東西,那就是一手交錢一手交貨。有了事務,你去網上購物,扣款即產生訂單交易。

事務的具體定義

事務提供一種機制將一個活動涉及的所有操作納入到一個不可分割的執行單元,組成事務的所有操作只有在所有操作均能正常執行的情況下方能提交,只要其中任一操作執行失敗,都將導致整個事務的回滾。簡單地說,事務提供一種“要么什么都不做,要么做全套(All or Nothing)”機制。

數據庫本地事務

ACID

說到數據庫事務就不得不說,數據庫事務中的四大特性,ACID:

  • A:原子性(Atomicity)

一個事務(transaction)中的所有操作,要么全部完成,要么全部不完成,不會結束在中間某個環節。事務在執行過程中發生錯誤,會被回滾(Rollback)到事務開始前的狀態,就像這個事務從來沒有執行過一樣。

就像你買東西要么交錢收貨一起都執行,要么要是發不出貨,就退錢。

  • C:一致性(Consistency)

事務的一致性指的是在一個事務執行之前和執行之后數據庫都必須處于一致性狀態。如果事務成功地完成,那么系統中所有變化將正確地應用,系統處于有效狀態。如果在事務中出現錯誤,那么系統中的所有變化將自動地回滾,系統返回到原始狀態。

  • I:隔離性(Isolation)

指的是在并發環境中,當不同的事務同時操縱相同的數據時,每個事務都有各自的完整數據空間。由并發事務所做的修改必須與任何其他并發事務所做的修改隔離。事務查看數據更新時,數據所處的狀態要么是另一事務修改它之前的狀態,要么是另一事務修改它之后的狀態,事務不會查看到中間狀態的數據。

打個比方,你買東西這個事情,是不影響其他人的。

  • D:持久性(Durability)

指的是只要事務成功結束,它對數據庫所做的更新就必須***保存下來。即使發生系統崩潰,重新啟動數據庫系統后,數據庫還能恢復到事務成功結束時的狀態。

打個比方,你買東西的時候需要記錄在賬本上,即使老板忘記了那也有據可查。

InnoDB實現原理

InnoDB是mysql的一個存儲引擎,大部分人對mysql都比較熟悉,這里簡單介紹一下數據庫事務實現的一些基本原理,在本地事務中,服務和資源在事務的包裹下可以看做是一體的:

我們的本地事務由資源管理器進行管理:

而事務的ACID是通過InnoDB日志和鎖來保證。事務的隔離性是通過數據庫鎖的機制實現的,持久性通過redo log(重做日志)來實現,原子性和一致性通過Undo log來實現。UndoLog的原理很簡單,為了滿足事務的原子性,在操作任何數據之前,首先將數據備份到一個地方(這個存儲數據備份的地方稱為UndoLog)。然后進行數據的修改。如果出現了錯誤或者用戶執行了ROLLBACK語句,系統可以利用Undo Log中的備份將數據恢復到事務開始之前的狀態。 和Undo Log相反,RedoLog記錄的是新數據的備份。在事務提交前,只要將RedoLog持久化即可,不需要將數據持久化。當系統崩潰時,雖然數據沒有持久化,但是RedoLog已經持久化。系統可以根據RedoLog的內容,將所有數據恢復到***的狀態。 對具體實現過程有興趣的同學可以去自行搜索擴展。

分布式事務

什么是分布式事務

分布式事務就是指事務的參與者、支持事務的服務器、資源服務器以及事務管理器分別位于不同的分布式系統的不同節點之上。簡單的說,就是一次大的操作由不同的小操作組成,這些小的操作分布在不同的服務器上,且屬于不同的應用,分布式事務需要保證這些小操作要么全部成功,要么全部失敗。本質上來說,分布式事務就是為了保證不同數據庫的數據一致性。

分布式事務產生的原因

從上面本地事務來看,我們可以看為兩塊,一個是service產生多個節點,另一個是resource產生多個節點。

service多個節點

隨著互聯網快速發展,微服務,SOA等服務架構模式正在被大規模的使用,舉個簡單的例子,一個公司之內,用戶的資產可能分為好多個部分,比如余額,積分,優惠券等等。在公司內部有可能積分功能由一個微服務團隊維護,優惠券又是另外的團隊維護

這樣的話就無法保證積分扣減了之后,優惠券能否扣減成功。

resource多個節點

同樣的,互聯網發展得太快了,我們的Mysql一般來說裝***的數據就得進行分庫分表,對于一個支付寶的轉賬業務來說,你給的朋友轉錢,有可能你的數據庫是在北京,而你的朋友的錢是存在上海,所以我們依然無法保證他們能同時成功。

分布式事務的基礎

從上面來看分布式事務是隨著互聯網高速發展應運而生的,這是一個必然的我們之前說過數據庫的ACID四大特性,已經無法滿足我們分布式事務,這個時候又有一些新的大佬提出一些新的理論:

CAP

CAP定理,又被叫作布魯爾定理。對于設計分布式系統來說(不僅僅是分布式事務)的架構師來說,CAP就是你的入門理論。

  • C (一致性):對某個指定的客戶端來說,讀操作能返回***的寫操作。對于數據分布在不同節點上的數據上來說,如果在某個節點更新了數據,那么在其他節點如果都能讀取到這個***的數據,那么就稱為強一致,如果有某個節點沒有讀取到,那就是分布式不一致。
  • A (可用性):非故障的節點在合理的時間內返回合理的響應(不是錯誤和超時的響應)。可用性的兩個關鍵一個是合理的時間,一個是合理的響應。合理的時間指的是請求不能***被阻塞,應該在合理的時間給出返回。合理的響應指的是系統應該明確返回結果并且結果是正確的,這里的正確指的是比如應該返回50,而不是返回40。
  • P (分區容錯性):當出現網絡分區后,系統能夠繼續工作。打個比方,這里個集群有多臺機器,有臺機器網絡出現了問題,但是這個集群仍然可以正常工作。

熟悉CAP的人都知道,三者不能共有,如果感興趣可以搜索CAP的證明,在分布式系統中,網絡無法100%可靠,分區其實是一個必然現象,如果我們選擇了CA而放棄了P,那么當發生分區現象時,為了保證一致性,這個時候必須拒絕請求,但是A又不允許,所以分布式系統理論上不可能選擇CA架構,只能選擇CP或者AP架構。

對于CP來說,放棄可用性,追求一致性和分區容錯性,我們的zookeeper其實就是追求的強一致。

對于AP來說,放棄一致性(這里說的一致性是強一致性),追求分區容錯性和可用性,這是很多分布式系統設計時的選擇,后面的BASE也是根據AP來擴展。

順便一提,CAP理論中是忽略網絡延遲,也就是當事務提交時,從節點A復制到節點B,但是在現實中這個是明顯不可能的,所以總會有一定的時間是不一致。同時CAP中選擇兩個,比如你選擇了CP,并不是叫你放棄A。因為P出現的概率實在是太小了,大部分的時間你仍然需要保證CA。就算分區出現了你也要為后來的A做準備,比如通過一些日志的手段,是其他機器回復至可用。

BASE

BASE 是 Basically Available(基本可用)、Soft state(軟狀態)和 Eventually consistent (最終一致性)三個短語的縮寫。是對CAP中AP的一個擴展

  1. 基本可用:分布式系統在出現故障時,允許損失部分可用功能,保證核心功能可用。
  2. 軟狀態:允許系統中存在中間狀態,這個狀態不影響系統可用性,這里指的是CAP中的不一致。
  3. 最終一致:最終一致是指經過一段時間后,所有節點數據都將會達到一致。

BASE解決了CAP中理論沒有網絡延遲,在BASE中用軟狀態和最終一致,保證了延遲后的一致性。BASE和 ACID 是相反的,它完全不同于ACID的強一致性模型,而是通過犧牲強一致性來獲得可用性,并允許數據在一段時間內是不一致的,但最終達到一致狀態。

分布式事務解決方案

有了上面的理論基礎后,這里介紹開始介紹幾種常見的分布式事務的解決方案。

是否真的要分布式事務

在說方案之前,首先你一定要明確你是否真的需要分布式事務?

上面說過出現分布式事務的兩個原因,其中有個原因是因為微服務過多。我見過太多團隊一個人維護幾個微服務,太多團隊過度設計,搞得所有人疲勞不堪,而微服務過多就會引出分布式事務,這個時候我不會建議你去采用下面任何一種方案,而是請把需要事務的微服務聚合成一個單機服務,使用數據庫的本地事務。因為不論任何一種方案都會增加你系統的復雜度,這樣的成本實在是太高了,千萬不要因為追求某些設計,而引入不必要的成本和復雜度。

如果你確定需要引入分布式事務可以看看下面幾種常見的方案。

2PC

說到2PC就不得不聊數據庫分布式事務中的 XA Transactions。

在XA協議中分為兩階段:

***階段:事務管理器要求每個涉及到事務的數據庫預提交(precommit)此操作,并反映是否可以提交.

第二階段:事務協調器要求每個數據庫提交數據,或者回滾數據。

優點: 盡量保證了數據的強一致,實現成本較低,在各大主流數據庫都有自己實現,對于MySQL是從5.5開始支持。

缺點:

  • 單點問題:事務管理器在整個流程中扮演的角色很關鍵,如果其宕機,比如在***階段已經完成,在第二階段正準備提交的時候事務管理器宕機,資源管理器就會一直阻塞,導致數據庫無法使用。
  • 同步阻塞:在準備就緒之后,資源管理器中的資源一直處于阻塞,直到提交完成,釋放資源。
  • 數據不一致:兩階段提交協議雖然為分布式數據強一致性所設計,但仍然存在數據不一致性的可能,比如在第二階段中,假設協調者發出了事務commit的通知,但是因為網絡問題該通知僅被一部分參與者所收到并執行了commit操作,其余的參與者則因為沒有收到通知一直處于阻塞狀態,這時候就產生了數據的不一致性。

總的來說,XA協議比較簡單,成本較低,但是其單點問題,以及不能支持高并發(由于同步阻塞)依然是其***的弱點。

TCC

關于TCC(Try-Confirm-Cancel)的概念,最早是由Pat Helland于2007年發表的一篇名為《Life beyond Distributed Transactions:an Apostate’s Opinion》的論文提出。 TCC事務機制相比于上面介紹的XA,解決了其幾個缺點: 1.解決了協調者單點,由主業務方發起并完成這個業務活動。業務活動管理器也變成多點,引入集群。 2.同步阻塞:引入超時,超時后進行補償,并且不會鎖定整個資源,將資源轉換為業務邏輯形式,粒度變小。 3.數據一致性,有了補償機制之后,由業務活動管理器控制一致性

對于TCC的解釋:

  • Try階段:嘗試執行,完成所有業務檢查(一致性),預留必須業務資源(準隔離性)

  • Confirm階段:確認執行真正執行業務,不作任何業務檢查,只使用Try階段預留的業務資源,Confirm操作滿足冪等性。要求具備冪等設計,Confirm失敗后需要進行重試。

  • Cancel階段:取消執行,釋放Try階段預留的業務資源 Cancel操作滿足冪等性Cancel階段的異常和Confirm階段異常處理方案基本上一致。

舉個簡單的例子如果你用100元買了一瓶水, Try階段:你需要向你的錢包檢查是否夠100元并鎖住這100元,水也是一樣的。

如果有一個失敗,則進行cancel(釋放這100元和這一瓶水),如果cancel失敗不論什么失敗都進行重試cancel,所以需要保持冪等。

如果都成功,則進行confirm,確認這100元扣,和這一瓶水被賣,如果confirm失敗無論什么失敗則重試(會依靠活動日志進行重試)

對于TCC來說適合一些:

  • 強隔離性,嚴格一致性要求的活動業務。
  • 執行時間較短的業務

實現參考:ByteTCC:https://github.com/liuyangming/ByteTCC/

本地消息表

本地消息表這個方案最初是ebay提出的 ebay的完整方案https://queue.acm.org/detail.cfm?id=1394128

此方案的核心是將需要分布式處理的任務通過消息日志的方式來異步執行。消息日志可以存儲到本地文本、數據庫或消息隊列,再通過業務規則自動或人工發起重試。人工重試更多的是應用于支付場景,通過對賬系統對事后問題的處理。

對于本地消息隊列來說核心是把大事務轉變為小事務。還是舉上面用100元去買一瓶水的例子。

1.當你扣錢的時候,你需要在你扣錢的服務器上新增加一個本地消息表,你需要把你扣錢和寫入減去水的庫存到本地消息表放入同一個事務(依靠數據庫本地事務保證一致性。

2.這個時候有個定時任務去輪詢這個本地事務表,把沒有發送的消息,扔給商品庫存服務器,叫他減去水的庫存,到達商品服務器之后這個時候得先寫入這個服務器的事務表,然后進行扣減,扣減成功后,更新事務表中的狀態。

3.商品服務器通過定時任務掃描消息表或者直接通知扣錢服務器,扣錢服務器本地消息表進行狀態更新。

4.針對一些異常情況,定時掃描未成功處理的消息,進行重新發送,在商品服務器接到消息之后,首先判斷是否是重復的,如果已經接收,在判斷是否執行,如果執行在馬上又進行通知事務,如果未執行,需要重新執行需要由業務保證冪等,也就是不會多扣一瓶水。

本地消息隊列是BASE理論,是最終一致模型,適用于對一致性要求不高的。實現這個模型時需要注意重試的冪等。

MQ事務

在RocketMQ中實現了分布式事務,實際上其實是對本地消息表的一個封裝,將本地消息表移動到了MQ內部,下面簡單介紹一下MQ事務,如果想對其詳細了解可以參考: https://www.jianshu.com/p/453c6e7ff81c

基本流程如下: ***階段Prepared消息,會拿到消息的地址。

第二階段執行本地事務。

第三階段通過***階段拿到的地址去訪問消息,并修改狀態。消息接受者就能使用這個消息。

如果確認消息失敗,在RocketMq Broker中提供了定時掃描沒有更新狀態的消息,如果有消息沒有得到確認,會向消息發送者發送消息,來判斷是否提交,在rocketmq中是以listener的形式給發送者,用來處理。

如果消費超時,則需要一直重試,消息接收端需要保證冪等。如果消息消費失敗,這個就需要人工進行處理,因為這個概率較低,如果為了這種小概率時間而設計這個復雜的流程反而得不償失

Saga事務

Saga是30年前一篇數據庫倫理提到的一個概念。其核心思想是將長事務拆分為多個本地短事務,由Saga事務協調器協調,如果正常結束那就正常完成,如果某個步驟失敗,則根據相反順序一次調用補償操作。 Saga的組成:

每個Saga由一系列sub-transaction Ti 組成 每個Ti 都有對應的補償動作Ci,補償動作用于撤銷Ti造成的結果,這里的每個T,都是一個本地事務。 可以看到,和TCC相比,Saga沒有“預留 try”動作,它的Ti就是直接提交到庫。

Saga的執行順序有兩種:

T1, T2, T3, ..., Tn

T1, T2, ..., Tj, Cj,..., C2, C1,其中0 < j < n Saga定義了兩種恢復策略:

向后恢復,即上面提到的第二種執行順序,其中j是發生錯誤的sub-transaction,這種做法的效果是撤銷掉之前所有成功的sub-transation,使得整個Saga的執行結果撤銷。 向前恢復,適用于必須要成功的場景,執行順序是類似于這樣的:T1, T2, ..., Tj(失敗), Tj(重試),..., Tn,其中j是發生錯誤的sub-transaction。該情況下不需要Ci。

這里要注意的是,在saga模式中不能保證隔離性,因為沒有鎖住資源,其他事務依然可以覆蓋或者影響當前事務。

還是拿100元買一瓶水的例子來說,這里定義

T1=扣100元 T2=給用戶加一瓶水 T3=減庫存一瓶水

C1=加100元 C2=給用戶減一瓶水 C3=給庫存加一瓶水

我們一次進行T1,T2,T3如果發生問題,就執行發生問題的C操作的反向。 上面說到的隔離性的問題會出現在,如果執行到T3這個時候需要執行回滾,但是這個用戶已經把水喝了(另外一個事務),回滾的時候就會發現,無法給用戶減一瓶水了。這就是事務之間沒有隔離性的問題

可以看見saga模式沒有隔離性的影響還是較大,可以參照華為的解決方案:從業務層面入手加入一 Session 以及鎖的機制來保證能夠串行化操作資源。也可以在業務層面通過預先凍結資金的方式隔離這部分資源, ***在業務操作的過程中可以通過及時讀取當前狀態的方式獲取到***的更新。

具體實例:可以參考華為的servicecomb

***

還是那句話,能不用分布式事務就不用,如果非得使用的話,結合自己的業務分析,看看自己的業務比較適合哪一種,是在乎強一致,還是最終一致即可。上面對解決方案只是一些簡單介紹,如果真正的想要落地,其實每種方案需要思考的地方都非常多,復雜度都比較大,所以***再次提醒一定要判斷好是否使用分布式事務。***在總結一些問題,大家可以下來自己從文章找尋答案:

  1. ACID和CAP的 CA是一樣的嗎?
  2. 分布式事務常用的解決方案的優缺點是什么?適用于什么場景?
  3. 分布式事務出現的原因?用來解決什么痛點?
責任編輯:張燕妮 來源: 簡書
相關推薦

2017-03-10 22:27:59

2017-03-02 15:06:37

2018-11-01 08:40:48

入侵檢測系統IDS網絡安全

2021-01-22 06:14:39

LocalDateTiOffsetDateTZonedDateTi

2019-12-16 07:23:53

數據科學數據科學家數據

2025-04-17 09:00:00

架構聊消息微信

2014-04-16 15:10:10

2024-04-25 09:00:00

2017-11-13 20:37:49

Chrome技巧web

2021-01-15 09:08:44

Spring Clou微服務架構分布式

2022-04-15 09:01:18

前端工具UTF8編碼

2023-03-26 08:15:04

代碼配置Spring

2023-03-20 07:32:26

配置代碼Spring

2017-09-27 09:47:37

網絡安全黑客事件移動端

2017-09-21 09:42:14

2009-11-18 16:52:30

Linux未來發展

2021-09-14 07:26:26

組合問題循環

2021-07-05 22:11:38

MySQL體系架構

2021-08-26 13:22:46

雪花算法隨機數

2022-09-28 14:33:49

終端工具Linux
點贊
收藏

51CTO技術棧公眾號

男男受被啪到高潮自述| 色噜噜色狠狠狠狠狠综合色一 | 欧美激情一区二区三区| 国产精品旅馆在线| 黑人巨大精品一区二区在线| 欧美国产极品| 欧美蜜桃一区二区三区| 国产一级爱c视频| 在线免费黄色| 高清国产一区二区| 国产精品久久久久久久久久久新郎 | 91在线精品秘密一区二区| 国产精品视频一区国模私拍 | 999视频在线免费观看| 久久久久久久久久久久久久av| 青青草成人影院| 亚洲第一精品福利| 人人爽人人爽av| 高潮一区二区| 香港成人在线视频| 国产高清精品软男同| 免费看男男www网站入口在线| 国产在线播放一区三区四| 欧美性受xxxx白人性爽| 免费麻豆国产一区二区三区四区| 精品国产乱码久久久| 亚洲第一色中文字幕| av在线免费看片| 日韩毛片一区| 色婷婷亚洲一区二区三区| av免费看网址| 宅男在线观看免费高清网站| 国产精品久久久久久久久免费樱桃| 极品日韩久久| 亚洲欧美激情国产综合久久久| 麻豆国产91在线播放| 国产脚交av在线一区二区| 国产精品黄色网| 亚洲视频综合| 欧美精品激情blacked18| 99久久婷婷国产综合| 99久久婷婷| 最近2019中文字幕mv免费看| a天堂中文字幕| 国产91精品对白在线播放| 欧美精品一区二区三区在线| 伊人影院在线观看视频| 免费精品一区| 日韩欧美中文一区| 亚洲女人在线观看| 秋霞一区二区| 日韩免费看网站| 特种兵之深入敌后| y111111国产精品久久久| 欧美成va人片在线观看| 蜜桃色一区二区三区| 1204国产成人精品视频| 精品99999| 亚洲精品乱码久久久久久久| 欧美一级一片| 亚洲女人天堂色在线7777| 国精产品一区一区三区免费视频 | 国内外成人激情免费视频| 国产在线看片| 一区二区三区四区蜜桃| 东北少妇不带套对白| 国产伦子伦对白在线播放观看| 婷婷综合另类小说色区| 波多野结衣家庭教师在线| 韩日精品一区二区| 欧美日韩在线播放三区四区| 一女二男3p波多野结衣| 日韩中文在线| 国产视频亚洲视频| 99国产精品免费| 欧美激情在线| 91高清视频免费观看| 无码人妻精品一区二区三区蜜桃91| 视频一区欧美日韩| 成人黄色在线免费| 蜜桃久久一区二区三区| 久久综合色天天久久综合图片| 色狠狠久久av五月综合| av在线播放观看| 精品久久久久久中文字幕一区奶水| 成人免费xxxxx在线视频| 日韩电影免费观看高清完整版在线观看| 制服丝袜一区二区三区| 性色av蜜臀av浪潮av老女人| 精品久久久久久久久久久下田 | 日韩精品99| 91精品国产综合久久福利软件 | 一区二区三区四区精品在线视频 | 久久综合成人网| 国产精品视区| 91免费的视频在线播放| 神马久久精品| 亚洲男人电影天堂| 免费午夜视频在线观看| 亚洲精品午夜| 中文国产成人精品| 日韩三级一区二区三区| 久久成人久久爱| 精品一区二区日本| 国产日产一区二区三区| 色狠狠综合天天综合综合| 伊人av在线播放| 欧美一区电影| 欧美亚洲成人网| av男人天堂网| 欧美国产丝袜视频| 免费看一级大黄情大片| 国模大尺度视频一区二区| 亚洲欧美自拍一区| 精品成人免费视频| 国产一区二区不卡在线| 亚洲视频精品一区| 成人小电影网站| 欧美精品一区二区三区在线| 卡通动漫亚洲综合| 青椒成人免费视频| 欧美日韩亚洲一区二区三区在线观看 | 精品视频黄色| 91精品国产91久久| www.好吊色| 亚洲三级视频在线观看| 另类小说第一页| 免费精品国产的网站免费观看| 久久久免费精品| av资源免费看| 综合婷婷亚洲小说| 亚洲视频第二页| 欧美日韩第一| 国产成人中文字幕| 男人av在线| 色综合天天综合在线视频| 一级黄色免费视频| 国产精品观看| 国产精品免费观看高清| 欧美性video| 欧美成人午夜电影| 麻豆chinese极品少妇| 久草中文综合在线| 爱爱爱视频网站| 日本欧美在线| 亚洲人成免费网站| 亚洲色图欧洲色图婷婷| 国产福利视频在线播放| 香蕉一区二区| 日本道色综合久久影院| 欧美另类自拍| 色爱区综合激月婷婷| 国产伦理片在线观看| 久久久xxx| 日韩偷拍一区二区| 黄色欧美视频| 久久婷婷国产麻豆91天堂| 国产乱人乱偷精品视频a人人澡| 亚洲欧洲一区二区三区| 日本肉体xxxx裸体xxx免费| 日韩欧美一区二区三区免费看| 国产男人精品视频| 麻豆影视在线观看_| 91精品国产91久久久久久一区二区| 91人妻一区二区三区蜜臀| 国产在线视频不卡二| 草草草视频在线观看| 久久久精品区| 亚洲18私人小影院| 毛片免费在线播放| 欧美日韩国产经典色站一区二区三区| 亚洲不卡的av| 国产91丝袜在线观看| 91专区在线观看| 欧美肉体xxxx裸体137大胆| 国产欧美一区二区三区视频| 呦呦在线视频| 国产视频精品自拍| 亚洲视频在线观看一区二区| 亚洲综合在线观看视频| 波多野结衣影院| 青青草国产成人99久久| 男人天堂新网址| 亚洲精品一级二级三级| 国产欧美日韩高清| 成人影音在线| 中文字幕日韩免费视频| 精品人妻一区二区三区四区不卡| 欧美日韩一区二区精品| 中文字幕在线观看二区| 成人国产精品免费网站| 91国产精品视频在线观看| 欧美激情偷拍| 亚洲精美视频| 日韩高清影视在线观看| 国产精品自拍视频| 男人av在线播放| 久久好看免费视频| 深夜视频在线免费| 日韩视频不卡中文| 中文字幕乱码人妻无码久久| 亚洲一区二区精品3399| 美国美女黄色片| 成人国产在线观看| 午夜福利123| 久久这里有精品15一区二区三区| 警花观音坐莲激情销魂小说 | 久久亚洲免费| 欧美日韩黄色| 国产精品免费看久久久香蕉| www.8ⅹ8ⅹ羞羞漫画在线看| 一区二区日韩精品| 亚洲经典一区二区| 欧美日韩大陆一区二区| 亚洲国产精品无码久久久| 亚洲香蕉伊在人在线观| 91ts人妖另类精品系列| 久久精品亚洲乱码伦伦中文| 污网站免费观看| 国产一区在线观看视频| 亚洲色图久久久| 国产精品外国| 亚洲国产精品成人天堂| 亚洲精彩视频| 致1999电视剧免费观看策驰影院| 国产一区二区三区网| 精品日韩美女| 中文字幕一区二区三区日韩精品 | 免费裸体美女网站| 精品电影一区| 99久久免费观看| 中文字幕一区二区精品区| 亚洲欧美日产图| 欧美理论电影大全| 欧美日韩在线观看一区| 欧美三级午夜理伦三级在线观看| caoporen国产精品| www.久久99| 成人午夜黄色影院| 日韩毛片网站| 国产欧美精品一区二区| 日韩色性视频| 91精品美女在线| 日韩毛片免费看| 成人av在线网址| 久久久加勒比| 国产日产亚洲精品| 欧美亚洲黄色| 91老司机精品视频| 欧美第一在线视频| 99在线观看| 综合中文字幕| 激情小说网站亚洲综合网| 青青久久av| 欧美日韩高清在线一区| 香蕉人人精品| 亚洲国产激情一区二区三区| 日本精品三区| 在线视频福利一区| 91精品精品| 精品少妇人欧美激情在线观看| 亚洲私人影院| 久久久久久久久久久福利| 另类激情亚洲| 在线黄色免费看| 国产乱子伦视频一区二区三区 | 91女人视频在线观看| 大黑人交xxx极品hd| 久久久久国产免费免费| 天天操天天舔天天射| 亚洲色图清纯唯美| 日韩精品国产一区二区| 懂色av中文一区二区三区天美| 国产精品久久久久久久久久精爆| 欧美视频完全免费看| 国产免费叼嘿网站免费| 精品毛片乱码1区2区3区| 三级做a全过程在线观看| 在线观看不卡av| av在线免费观看网址| 午夜免费日韩视频| 国产香蕉久久| 不卡的av一区| 国产一区二区在线| 在线观看18视频网站| 亚洲国产精品一区制服丝袜| 亚洲熟妇av一区二区三区| 美国十次了思思久久精品导航| 俄罗斯女人裸体性做爰| 91麻豆产精品久久久久久 | 精品国内自产拍在线观看视频 | 精品无人区无码乱码毛片国产| 中文一区二区完整视频在线观看| 九九热精品在线观看| 日本韩国一区二区| 99在线精品视频免费观看软件| 日韩av影视综合网| 欧洲美女少妇精品| 国产69精品久久久久久| 亚洲老司机网| 欧美日韩国产免费一区二区三区| 91精品国产自产在线观看永久∴| 久久国产亚洲精品无码| 国产一区二区0| av黄色在线免费观看| 亚洲综合一区二区| 在线不卡免费视频| 日韩精品视频观看| 成人免费在线| 国产成人精品视| 欧美日韩一区二区三区不卡视频| 欧美一级黄色录像片| 日韩av午夜在线观看| 日韩av手机在线播放| 日韩毛片高清在线播放| 日韩手机在线视频| 亚洲精品福利资源站| 国产黄色在线网站| 国产精品久久久久久影视| 先锋影音国产精品| 国产91沈先生在线播放| 久久福利资源站| 国产黄色录像视频| 色综合久久99| 五月婷婷丁香六月| 久久久久久香蕉网| xvideos.蜜桃一区二区| 51xx午夜影福利| 国产一区二区三区免费播放| 能直接看的av| 欧美视频在线观看免费| 污视频在线免费观看| 欧美猛交免费看| 日本超碰一区二区| 欧美aaa在线观看| 久久成人免费网| 国产大屁股喷水视频在线观看| 欧洲精品在线观看| 国产一级网站视频在线| 欧美在线视频在线播放完整版免费观看| 日本在线成人| 免费视频爱爱太爽了| 国产乱码精品一品二品| 国产suv一区二区三区| 欧美一区二区不卡视频| 91视频在线观看| 国产精品亚洲视频在线观看| 三级电影一区| 污污的网站免费| 中文字幕一区二区日韩精品绯色| 曰批又黄又爽免费视频| 精品久久久999| 国产精品美女久久久久人| 三级在线免费观看| 国产成人在线色| 日韩大片免费在线观看| 国产丝袜一区二区三区| 香蕉久久免费电影| 日韩精品久久一区二区三区| 人人超碰91尤物精品国产| 国产三级aaa| 欧美一区二区日韩一区二区| 新版中文在线官网| 狠狠色噜噜狠狠色综合久| 在线亚洲自拍| 美国美女黄色片| 日韩午夜在线影院| 91资源在线观看| 蜜桃成人在线| 男人操女人的视频在线观看欧美| 日韩精品一区二区三区在线视频| 91精品国产福利| 国产调教在线| 日日夜夜精品网站| 韩国v欧美v亚洲v日本v| 久久久久国产精品夜夜夜夜夜| 亚洲国产中文字幕久久网| 深夜成人影院| 中文字幕一区二区三区有限公司 | 久久99精品国产99久久| 老司机久久99久久精品播放免费| 成人性生交大片免费看无遮挡aⅴ| 91精品国产色综合久久久蜜香臀| 男女视频在线| 日韩av大全| 国产99一区视频免费| 日韩一级在线视频| 欧美大尺度激情区在线播放| 牛牛精品成人免费视频| 一级黄色录像在线观看| 亚洲电影激情视频网站| 国产三级视频在线看| 成人xxxxx色| 日韩极品在线观看| 久久久久久久蜜桃| 一区二区三区四区在线观看视频| 精品视频在线播放一区二区三区| 国产精品后入内射日本在线观看| 国产精品久久久久久久久晋中| 欧美自拍偷拍一区二区|