《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種多粒度鎖的事務并發控制算法
一種多粒度鎖的事務并發控制算法
來源:微型機與應用2012年第5期
張 云,李 嵐
(甘肅聯合大學 電子信息工程學院,甘肅 蘭州 730000)
摘要: 研究了一種基于多粒度鎖的并發控制算法,包括其多粒度鎖鎖、鎖表數據結構及鎖操作的算法步驟。算法可以降低沖突發生的概率和事務的夭折數,減少事務重啟,有利于滿足事務截止期的要求,提高事務的并發度。在驗證算法有效性時,通過測試類對內存數據庫記錄的插入速度、索引查找的速度、記錄的刪除速度三方面的性能進行了測試,結果表明,事務并發控制優化算法對內存數據庫性能的提升是有效可行的。
Abstract:
Key words :

摘  要: 研究了一種基于多粒度鎖的并發控制算法,包括其多粒度鎖鎖、鎖表數據結構及鎖操作的算法步驟。算法可以降低沖突發生的概率和事務的夭折數,減少事務重啟,有利于滿足事務截止期的要求,提高事務的并發度。在驗證算法有效性時,通過測試類對內存數據庫記錄的插入速度、索引查找的速度、記錄的刪除速度三方面的性能進行了測試,結果表明,事務并發控制優化算法對內存數據庫性能的提升是有效可行的。
關鍵詞: 內存數據庫;實時事務;算法;并發控制;粒度

 實時事務處理的算法主要有兩個方面,一方面是實事事務調度算法,主要是事務優先級的確定;另一方面是實時事務的事務并發控制算法,包括悲觀事務并發控制算法和樂觀事務并發控制算法兩種[1]。近年來,在事務的并發控制方面已取得了大量理論研究成果。迄今為止,許多基于鎖、樂觀、時間戳的實時數據庫并發控制方法已提出,如優先級繼承PI(Priority Inheriting)、高優先級夭折HPA(High Priority Abort)、優先級頂PC(Priority Ceiling)等,但很少見有關實時內存數據庫并發控制實現技術的相關論述[2]。實時事務的并發控制實現涉及到實時數據庫的底層技術,而一般的研究和討論只是基于一定的實驗模型進行理論研究和分析。而且,對于不同的實現環境和所選擇的實現策略,實時事務所采用的并發控制技術也不盡相同。本文在研究已有的事務并發控制算法的基礎上,對悲觀事務并發控制算法2PL進行了改進。
 在對算法性能測試時,根據給出的實時內存數據庫的引擎結構,開發出一個實時內存數據庫,以測試類對內存數據庫三個方面的性能進行了測試。測試分為兩次,分別為事務并發控制算法優化前和事務并發控制算法優化后。
1 實時事務的并發控制算法
 內存數據庫的一個重要設計問題是并發控制,它由于既要滿足事務的時間限制還要維護數據庫的一致性而變得復雜[3]。傳統數據庫系統的并發控制協議不適合內存數據庫系統,實時事務是緊急的并且事務調度必須滿足截止期[4]。
 定義1:一個調度S定義在一個事務集合T={T1,T2,...,Tn}的基礎上,它是多個事務執行的操作系列。
 定義2:一個調度S中,各個事務的操作執行時不疊加(即一個接著一個發生),則這個調度是串行的。
 定義3:一個調度S是可串行的,當且僅當S沖突等價于一個串行調度。這種可串行化通常稱為沖突等價可串行化。
 一個并發控制器(或稱調度器)的基本功能是產生一個要執行事務的可串行化調度。多數內存數據庫系統的并發控制協議均基于串行化理論[5]。并發控制協議用于控制數據的調度,主要目標是維持數據的一致性并提供最大化的并發度[1]。在有些情況下,一致性要求可適當放寬。內存數據庫是駐留在內存中的共享數據,在不同線程中同時運行的事務之間可能由于訪問內存數據庫中的同一個數據對象而發生沖突,并發控制協議就是用來解決事務之間沖突的策略[6]。常見的沖突模式有“讀-寫”沖突和“寫-寫”沖突[7]。
 “讀-寫”沖突:對同一個數據對象,一個事務正在執行“讀”操作,同時另一個事務執行“寫”操作而發生沖突;
 “寫-寫”沖突:對同一個數據對象,一個事務正在執行“寫”操作,同時另一個事務也執行“寫”操作而發生沖突。
 內存數據庫中的并發控制協議解決沖突的辦法主要有兩種策略:
?。?)等待:終止其中一個事務引起沖突的操作,使其停留在等待狀態,直到另一個事務的操作完成為止。在內存數據庫事務并發控制的研究中,等待策略有以下三種派生方法:①不等待(no wait):等待的事務立即夭折,而不是等到另一個事務操作完為止。②損傷等待(wound wait):根據每個事務的達到時間,如果要求得到數據者到達得比較早,則夭折正在使用數據的事務;否則夭折要求得到數據的事務。③等待死亡(wait die):根據每個事務的到達時間,如果要求得到數據者到達得比較早,則該事務可以繼續等待,否則夭折這個事務。
?。?)回滾:撤消事務引起沖突的操作,事務重啟,回到開始時的狀態[1]。
 根據解決“讀寫”操作沖突的不同策略,并發控制算法分為悲觀并發控制協議PCC(Pessimistic Concurrency Control)和樂觀并發控制協議OCC(Optimistic Concurrency Control)兩大類[6]。分類如圖1所示。

  悲觀并發控制算法中最廣泛使用的是基于鎖(Lock)協議的算法,它為數據訪問提供數據鎖,分為讀鎖和寫鎖,讀鎖又稱共享鎖(Shared Lock),被加讀鎖的數據對象只能讀不能寫;寫鎖又稱排它鎖(Exclusive lock),被加鎖的數據對象只能被加鎖事務讀寫,其他事務不能訪問[7]。事務要獲得對數據的訪問,首先要申請得到鎖,操作完成后釋放鎖。一般操作系列為:(1)申請鎖(Lock request);(2)授予鎖(Lock granted);(3)數據庫操作(Database operation);(4)結束操作(End of database operation);(5)釋放鎖(Release locks)。
 兩階段鎖2PL(two phase lock)是悲觀并發控制協議算法的重要內容,為解決優先級倒置,派生出了高優先級法2PL-HP(也叫優先級夭折)、優先級繼承、有條件優先級繼承、數據優先級法PCP及其他衍生協議。
 樂觀并發控制協議認為任何兩個并發事務請求同一個數據對象的概率很低,事務對數據庫的所有操作在請求時即可進行。樂觀并發控制協議的事務處理過程分為:讀、驗證、提交,驗證分為前向驗證和后向驗證,若在驗證階段發現沖突,則進行事務回滾。如果事務頻繁的重啟對于內存數據庫系統來說會是一個負擔并且不利于事務在截止期前完成,因此樂觀并發控制協議算法大多是圍繞如何減少事務重啟而進行改進,派生出了廣播算法OCC-BC、WAIT-50、OCC-TI、OCC-DA、多版本協議MCC等。
 悲觀并發控制協議算法具有節約系統資源的特點,在處理時間限制比較嚴格的硬實時事務時表現優于樂觀并發控制協議,而樂觀并發控制協議有利于提高系統的并發度[8]。研究表明,2PL-HP更適合于分布式內存數據庫系統。根據流程工業大型內存數據庫系統的特點,借鑒分布式兩階段鎖協議2PL的思想,本文提出并設計了多粒度鎖的并發控制算法,其特點是減少沖突事務之間的等待時間。
2 兩階段鎖2PL
 數據鎖分為讀鎖(也稱共享鎖)和寫鎖(也稱獨占鎖):(1)共享鎖Shared lock:只允許讀,簡稱“S鎖”;(2)獨占鎖Exclusive lock:允許讀和修改鎖住的數據對象,簡稱“X鎖”。一般使用鎖的方式是用完即釋放,如以下代碼所示:
 LOCK  S(A); //對數據對象A加共享鎖
 read(A); //讀數據對象A
 UNLOCK(A);//釋放鎖
 LOCK  S(B); //對數據對象B加共享鎖
 read(B); //讀數據對象B
 UNLOCK(B); //釋放鎖
 display(A+B); //顯示結果
 這種使用鎖的方式可能會導致不可串行化,而可串行化(serializability)是并發控制最普遍的正確性準則,各個事務對數據對象的操作不交叉存?。疵總€事務對數據對象的操作是連續的)[9]。因為在這種方式中,當事務T1釋放鎖時,事務T2獲得了數據對象A的獨占鎖LOCK  X(A)而執行write(A)的操作,就會導致事務T1的執行結果不正確。采用兩階段鎖來解決此問題,所謂兩階段指的是封鎖階段和解鎖階段。封鎖階段也稱為生長階段(Growing phase),事務獲得鎖并存取數據;解鎖階段也叫枯萎階段(Shrinking phase),事務的鎖不斷減少。
 兩階段鎖算法的規則是:(1)如果事務T想讀(修改)一個對象,它首先要獲得一個共享(獨占)鎖;(2)對事務已經持有的封鎖,不得重復申請;(3)一個事務必須注意到其他事務所做的封鎖;(4)每個事務分做兩段:生長期和枯萎期。生長期申請封鎖,枯萎期解除封鎖,在枯萎期不得申請新封鎖;(5)調度器在數據管理器完成對數據對象橢操作后才能釋放鎖;(6)事務結束時,解除所有封鎖。
 兩階段鎖算法規則保證了事務執行的可串行化,鎖管理器LM (Lock Manager)在存取結束時即刻釋放鎖,提高了事務的并發度。但它存在的問題是可能導致級聯退出,所以需要使用嚴格2PL(strict two-phase locking,簡稱S2PL), S2PL在數據存取完成的最后階段釋放所有鎖。
3 基于多粒度鎖的并發控制
 內存數據庫中,兩階段鎖封鎖對象的大小稱為封鎖的粒度,一般情況下,加鎖的粒度越大,加鎖的次數就越少,系統資源的開銷小,事務之間沖突發生的概率就越高,系統的并發度越低;多粒度鎖封鎖就是在一個系統中同時支持多種封鎖粒度供不同的事務進行選擇。采取多粒度鎖封鎖策略,可以降低沖突發生的概率和事務的夭折數,減少事務重啟,有利于滿足事務截止期的要求,提高事務的并發度。
3.1 多粒度鎖并發控制鎖
 參考關系數據庫的概念,內存數據庫中鎖的粒度可定義為:數據庫DataBase (如果多于一個庫,數據庫也可以作為粒度的元素)、表Table、頁Page、記錄Record、元組Tuple。從前到后是一種順序包含的關系,展開以后其層次結構形成了一棵樹。多粒度鎖封鎖允許對樹上的每一個數據項進行封鎖。由于節點的這種包含關系,除S鎖和X鎖外,多粒度鎖鎖時需要引入以下的意向鎖:
 (1)IS(Intent Share Lock):意向共享鎖。如果對一個數據對象加IS鎖,表示它的子結點擬加S鎖。
 (2)IX(Intent Exclusive Lock):意向排它鎖。如果對一個數據對象加IX鎖,表示它的子結點擬加X鎖。
?。?)SIX(Share Intent Exclusive Lock):共享意向排它鎖。如果對一個數據對象加SIX鎖,表示對它加S鎖,再加IX鎖,即SIX=S+IX。例如,對某個表加SIX鎖,則表示該事務要讀整個表(對該表加S鎖),同時會更新個別元組(對該表加IX鎖)。
多粒度鎖鎖協議準則:
?。?)從層次結構的根節點開始封鎖;
?。?)子節點要獲得S或IS鎖,它的父節點必須持有IS或IX鎖;
?。?)子節點要獲得X或IX或SIX鎖,它的父節點必須持有IX或SIX鎖;
?。?)必須從由底向上的順序釋放鎖。
3.2 粒度并發控制算法步驟
 本文提出的多粒度鎖的并發控制協議中,采用S2PL-HP算法解決沖突。如果低優先級事務試圖申請高優先級事務持有的鎖,則阻塞優先級低的事務;如果優先級高的事務到達時申請低優先級事務持有的鎖,則將低優先級事務回滾。
 兩階段鎖算法需要構造鎖管理器LM,鎖管理器管理的鎖存放在散列表(Hash Table)一類的數據結構中,數據結構中的元素可定義如下:
typedef lock_type{
DATAID data_id: //被鎖定的數據對象ID
vector trans_id; //持有鎖的事務ID向量
int lt://鎖類型:S、X、1S、IX,SIX
int lg;//鎖粒度:db,table,page,record,Tuple
}lock_item
 定義4:RTDB={DT1,DT2,…,DTn},其中, DTi為數據庫中第i個的數據表,DTi={DR1,DR2,…,DRn}:DRj為數據表中第j條記錄,DRj={DF1,DF2,…,DFn};DFk為記錄中的第k個元組。
 定義5:數據的全局標識為GID=f(DB,DTi,DRj,DFk);conflict(Ti,Tj)為事務Ti和Tj的沖突;lock(Ti,Di)表示事務Ti對數據對象Di加鎖。
LM:Lock Manager,即鎖表管理器;DM:Data Manager,即數據管理器。當事務Ti到達時,多粒度鎖并發控制算法步驟為:
 (1)進行事務預分析,根據一定的算法規則計算Ti所操作的數據對象的數據標識;并填寫lock_item中的其他項;將鎖粒度lg初始化設置為table。
?。?)查看鎖表管理器,找到事務Tj的數據對象ID:
?、賂i和Tj不沖突,則鎖表管理器將Ti的信息加入鎖表中,lock(Ti,Di),轉到第(3)步;
?、谌绻鸗i和Tj發生沖突,若它們的鎖類型相容,則鎖表管理器將Ti的trans_id加入向量中,轉到第(3)步;
?、廴绻i粒度是元組,即最小加鎖粒度,則跳到第(5)步,否則調整Ti和Tj的加鎖粒度,并返回第(2)步;
?。?)處理事務,調用數據管理器進行數據讀寫操作;
(4)數據管理器處理完畢,鎖表管理器更新對應鎖表中的信息,跳到第(6)步;
(5)如果有沖突發生,調用S2PL—HP算法規則解決沖突;
(6)結束。
4 算法測試
4.1 內存數據庫引擎結構設計

 內存數據庫 Engine是內存數據庫的核心,它對實時/歷史數據進行管理,它的本質是一個實時事務處理器。
 關系型數據庫采用二維關系表來進行數據的存儲,基于磁盤的存儲結構,數據存取過程中要進行頻繁的磁盤I/O操作。由于磁盤I/O操作時間不確定性,要引入內存數據庫中是不現實的。內存數據庫將實時數據常駐內存,訪問實時數據時無需進行I/O操作,保證了運行速度,有利于滿足實時事務截止期的要求。
4.2 事務并發控制優化算法測試結果
 測試系統環境為:Win7+JDK+NetBeans6.7。
 事務并發控制算法優化前測試結果如圖2所示。

 事務并發控制算法優化后測試結果如圖3所示。

 與傳統數據庫不同,內存數據庫系統事務的并發擦控制除需保證共享數據的一致性外,還要考慮事務的定時限制。因此,其并發控制機制比傳統數據庫要復雜。本文給出了一個基于多粒度鎖的并發控制機制,通過驗證,該方法成功且有效地解決了內存數據庫的事務并發問題。從內存數據庫的測試結果可知,算法優化后系統的各項性能都有所提升,證明了算法優化的可行性和必要性。
參考文獻
[1] 納永良.大型實時數據庫關鍵技術及應用研究[D].北京:北京化工大學,2010.
[2] 祁鑫,王文海.內存數據庫系統并發控制機制綜述[J].計算機技術,2006.33(1):47-50.
[3] 陳小艷.嵌入式主動內存數據庫ARTs.EDB的并發控制[D].武漢:華中科技人學,2009.
[4] 桑楠.嵌入式應用原理及應用開發技術[M].北京:北京航空航天大學出版社,2003.
[5] 夏家莉.嵌入式數據庫系統中無沖突并發控制協議CCCP[J].計算機研究與發展,2004,41(11):1936-1941.
[6] 廖國瓊,劉云生,等.嵌入式內存數據庫事務的并發控制[J].計算機工程,2005(9).
[7] 趙文潔.基于OPC技術的實時數據庫的研究與設計[D].太原:太原理工大學,2007.
[8] 廖國瓊,劉云生,等.嵌入式實時數據庫事務的并發控制[J].計算機工程,2005,32(5):12-18.
[9] LAM K W, LAM K Y, HUNG S L.Optimistic concurrency controlprotocol for real-time databases[J]. SYSTEMS SOFTWARE, 2007,11:34-39.

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国产日本精品| 欧美日韩1080p| 亚洲欧美日韩在线| 在线观看欧美日韩| 亚洲一区视频在线观看视频| 国产在线一区二区三区四区| 亚洲免费在线视频一区 二区| 久久国产高清| 激情久久久久久久| 国产亚洲欧美一级| 亚洲精品国产视频| 欧美国产在线电影| 亚洲综合社区| 欧美福利电影网| 久久手机免费观看| 欧美精品一区三区| 欧美片在线观看| 免费在线观看日韩欧美| 国产精品久久久久久久久久久久久久| 亚洲欧美综合精品久久成人| 欧美一级二区| 亚洲欧美日韩一区在线观看| 亚洲一二区在线| 美玉足脚交一区二区三区图片| 亚洲韩国日本中文字幕| 久久精品视频免费播放| 一区二区亚洲精品国产| 国产欧美日韩专区发布| 国产一区二区三区久久悠悠色av| 亚洲午夜av| 欧美高清视频| 精品福利av| 亚洲激情视频在线观看| 日韩视频精品在线| 国产亚洲一区在线播放| 亚洲激情av在线| 亚洲一级片在线观看| 欧美顶级艳妇交换群宴| 鲁大师成人一区二区三区| 欧美精品一区二区三区蜜臀| 欧美成人精精品一区二区频| 国产日韩欧美综合| 亚洲少妇中出一区| 国产精品综合不卡av| 性做久久久久久久免费看| 一区二区在线不卡| 欧美日韩国产综合一区二区| 欧美激情2020午夜免费观看| 亚洲国产免费看| 在线观看日韩www视频免费| 亚洲精品久久视频| 99re成人精品视频| 亚洲无线一线二线三线区别av| 国产综合久久| 久久五月婷婷丁香社区| 欧美亚洲综合久久| 欧美激情一区二区三区全黄| 久久精品夜色噜噜亚洲a∨| 在线亚洲激情| 亚洲人成在线观看一区二区| 国产午夜精品视频| 欧美人与禽性xxxxx杂性| 国产欧美一区二区在线观看| 久久国产精品亚洲77777| 亚洲欧美另类国产| 亚洲丝袜av一区| 久久九九久精品国产免费直播| 欧美福利一区二区| 欧美日韩中国免费专区在线看| 免费毛片一区二区三区久久久| 欧美午夜精品久久久久久浪潮| 欧美韩日一区二区三区| 国产精品久久久久久久久久免费| 亚洲另类在线一区| 亚洲人线精品午夜| 欧美激情视频在线播放| 麻豆成人在线播放| 亚洲一区在线观看免费观看电影高清| 国产精品一区三区| 国产精品久久久久久久久久久久久| 亚洲人成在线播放网站岛国| 国产视频丨精品|在线观看| 欧美一区二区三区免费观看| 国产欧美一区二区精品仙草咪| 久久成人免费| 久久久91精品国产| 日韩一二在线观看| 久久久精彩视频| 亚洲桃花岛网站| 欧美成人日本| 亚洲欧美日韩在线播放| 欧美大片一区二区三区| 亚洲经典视频在线观看| 久久综合给合| 中文成人激情娱乐网| 国产中文一区| 欧美一区二区三区免费观看视频| 国产精品一区二区久久久久| 欧美一区免费视频| 国产小视频国产精品| 国产精品久久久久久久一区探花| 欧美天堂亚洲电影院在线观看| 亚洲电影免费在线| 国产午夜精品在线观看| 国产一区二区三区高清播放| 国产精品少妇自拍| 欧美韩日一区二区| 亚洲综合久久久久| 亚洲人成人一区二区三区| 久久综合中文| 老色批av在线精品| 久久久国产成人精品| 久久久亚洲影院你懂的| 久久影视精品| 国产色产综合产在线视频| 欧美.日韩.国产.一区.二区| 国产日韩欧美在线观看| 亚洲精品色婷婷福利天堂| 国产一区二区视频在线观看| 欧美亚洲免费高清在线观看| 免费一级欧美在线大片| 久久综合九色99| 久久久久国产精品午夜一区| 在线观看国产欧美| 国产一区二区三区黄| 欧美日韩另类在线| 亚洲第一福利在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 亚洲影视在线播放| 亚洲国产精品尤物yw在线观看| 精品99一区二区| 免费精品99久久国产综合精品| 久久成人资源| 国产三级精品三级| 亚洲国产经典视频| 亚洲一区二区不卡免费| 亚洲欧洲精品成人久久奇米网| 欧美经典一区二区| 欧美福利精品| 免费日韩成人| 在线成人亚洲| 狠狠入ady亚洲精品| 国产精品久久久久99| 欧美一区二区三区四区在线观看地址| 亚洲一区激情| 欧美日本一区二区三区| 欧美一区二区三区日韩视频| 国产精品久久久久久久久免费桃花| 国产精品久久久久一区二区三区| 欧美日韩一区二| 亚洲免费一在线| 国产亚洲欧美日韩一区二区| 欧美激情成人在线| 久久久久女教师免费一区| 亚洲国产人成综合网站| 美女亚洲精品| 亚洲天堂av在线免费观看| 国产亚洲精品高潮| 久久se精品一区精品二区| 久久精品男女| 午夜精品福利在线观看| 一本色道久久综合亚洲精品按摩| 亚洲国产精品黑人久久久| 欧美精品久久久久久久免费观看| 国产精品va在线播放| 欧美在线播放一区| 亚洲国产精品美女| 欧美天天视频| 亚洲色图综合久久| 亚洲激情视频在线播放| 欧美激情小视频| 国产一区清纯| 国产欧美在线| 欧美国产精品| 免费观看日韩av| 欧美日韩不卡| 欧美性片在线观看| 国产欧美va欧美va香蕉在| 欧美亚州韩日在线看免费版国语版| 久久人人超碰| 午夜精彩视频在线观看不卡| 国产精品腿扒开做爽爽爽挤奶网站| 国产精品视频99| 国产伦精品免费视频| 亚洲一区免费网站| 欧美黄色日本| 精品99一区二区三区| 亚洲免费小视频| 国产精品第三页| 欧美日本一区二区视频在线观看| 欧美一级久久久| 亚洲视频axxx| 国产精品国产三级欧美二区| 国内精品国产成人| 欧美三级视频在线播放| 亚洲图片欧美一区| 韩日精品中文字幕| 亚洲久久一区二区| 免费看av成人| 欧美视频网址| 欧美va天堂| 韩日精品视频一区| 亚洲欧美另类国产| 欧美日本亚洲| 伊人狠狠色j香婷婷综合| 亚洲国产乱码最新视频| 亚洲精选一区| 亚洲国产精品一区制服丝袜| 亚洲私人影院在线观看| 在线视频免费在线观看一区二区| 亚洲一区在线观看免费观看电影高清| 国产精品色一区二区三区| 黄色亚洲网站| 蜜臀久久99精品久久久久久9| 狠狠综合久久av一区二区小说| 国产精品久久久久9999高清| 欧美伊人精品成人久久综合97| 欧美亚男人的天堂| 国产精品亚洲аv天堂网| 亚洲国产激情| 欧美成年人视频网站| 亚洲精品日韩激情在线电影| 激情六月婷婷综合| 亚洲精品极品| 欧美精品久久99| 欧美日韩福利视频| 亚洲丁香婷深爱综合| 国产综合色一区二区三区| 狼人天天伊人久久| 亚洲天堂激情| 男同欧美伦乱| 欧美精品一区二区三区一线天视频| 午夜视频精品| 欧美日韩日本网| 国产精品国色综合久久| 欧美成在线视频| 亚洲欧美另类在线观看| 麻豆成人小视频| 久久久久天天天天| 亚洲精品一区二区三区在线观看| 最新69国产成人精品视频免费| 国产精品白丝黑袜喷水久久久| 欧美视频在线免费看| 亚洲欧美视频在线| 久久人人爽人人| 国产日韩精品一区二区| 欧美日韩国产影院| 免费观看成人www动漫视频| 欧美亚洲一区| 欧美日韩国产二区| 欧美激情第一页xxx| 午夜精品成人在线| 国产精品久久久久9999高清| 亚洲在线电影| 欧美日韩亚洲一区在线观看| 国产亚洲成av人在线观看导航| 亚洲无玛一区| 国产日韩欧美三区| 狠狠色狠狠色综合日日五| 午夜精品福利在线| 欧美亚洲综合在线| 欧美激情中文字幕乱码免费| av不卡免费看| 久久久久国产精品厨房| 在线观看亚洲视频啊啊啊啊| 亚洲精品国产无天堂网2021| 亚洲第一二三四五区| 在线欧美电影| 亚洲国产精品久久久久婷婷884| 欧美午夜久久久| 久久天天躁狠狠躁夜夜爽蜜月| 一区二区国产精品| 国产精品人人爽人人做我的可爱| 欧美视频在线免费| 亚洲国产美女| 羞羞色国产精品| 午夜精品美女久久久久av福利| 欧美福利电影网| 亚洲午夜未删减在线观看| 久久国产免费| 欧美日韩亚洲一区二区三区在线| 在线精品在线| 99精品国产99久久久久久福利| 在线视频你懂得一区二区三区| 午夜免费久久久久| 一区二区三区毛片| 久久久国产精品一区二区中文| 亚洲国产一区二区三区a毛片| 国产精品毛片a∨一区二区三区|国| 欧美三日本三级少妇三2023| 国产精品一区免费视频| 久久精精品视频| 欧美日韩视频第一区| 一二三区精品| 欧美视频在线免费| 国产精品麻豆成人av电影艾秋| 激情综合网址| 欧美护士18xxxxhd| 亚洲一区二区三区欧美| 亚洲精品网站在线播放gif| 亚洲一级网站| 欧美午夜久久久| 午夜精品影院| 久久久久9999亚洲精品| 久久视频免费观看| 亚洲欧洲在线看| 国产精品久久久久久久久免费桃花| 欧美成人在线免费观看| 一区二区三区三区在线| 国产亚洲精品久久久久婷婷瑜伽| 亚洲一区二区三| 国内精品久久久| 免费人成精品欧美精品| 国产精品一二三| 免费在线亚洲欧美| 亚洲美女91| 欧美亚洲免费| 欧美亚洲专区| 韩日视频一区| 欧美国产一区视频在线观看| 久久亚洲午夜电影| 欧美日韩中国免费专区在线看| 久久露脸国产精品| 亚洲精品国产品国语在线app| 海角社区69精品视频| 欧美日韩国产三级| 欧美日韩精品在线观看| 欧美日韩精品一区二区天天拍小说|