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

單數據庫vs多數據庫,單實例vs多實例 效率測試

運維 數據庫運維 SQL Server
目前壓力測試發現數據庫服務器壓力還不夠大,Web服務器壓力也不是很大的情況下,前臺頁面訪問卻很慢,看有沒有辦法充分利用數據庫服務器的性能,于是做了一個單數據庫,多數據庫,單實例,多實例不同情況下的數據訪問效率測試。

最近公司的項目準備優化一下系統的性能,希望在數據庫方面看有沒有提升的空間,目前壓力測試發現數據庫服務器壓力還不夠大,Web服務器壓力也不是很大的情況下,前臺頁面訪問卻很慢,看有沒有辦法充分利用數據庫服務器的性能,于是做了一個單數據庫,多數據庫,單實例,多實例不同情況下的數據訪問效率測試。

測試環境:

  • CPU:Inter Core2 Quad,Q8300,2.50GHz;
  • 內存:4.00GB
  • 系統:Windows 7 32位系統
  • 數據庫系統:SqlServer 2008,有兩個實例,一個是默認實例,一個是命名實例QE2 

測試數據:

67萬真實的基金收益數據,將這個表的數據放到了3個數據庫中,詳細內容見下面的連接字符串配置:

  1. <add name ="Ins1_DB1" connectionString ="Data Source=.;Initial Catalog=TestDB;Integrated Security=True"/>  
  2. <add name ="Ins1_DB2" connectionString ="Data Source=.;Initial Catalog=LocalDB;Integrated Security=True"/>  
  3. <add name ="Ins2_DB" connectionString ="Data Source=.\QE2;Initial Catalog=TestDB;Integrated Security=True"/>  

測試內容:

首先篩選出表中所有的基金代碼,然后統計每只基金的最新收益率日期,對應的T-SQL代碼如下:

  1.   declare @max_fsrq datetime  
  2.   declare @currJJDM varchar(10)  
  3.   declare @temp table (jjdm2 varchar(10))  
  4.   declare @useTime datetime  
  5.   set @useTime =GETDATE ();  
  6.     
  7.   insert into @temp(jjdm2)  
  8.    select jjdm from [FundYield] group by jjdm order by jjdm asc 
  9.      
  10.   while EXISTS (select jjdm2 from @temp)  
  11.   begin 
  12.     set @currJJDM=(select top 1 jjdm2 from @temp)  
  13.     select @max_fsrq = MAX(fsrq) from [FundYield] where jjdm=@currJJDM  
  14.     delete from @temp where jjdm2 =@currJJDM   
  15.     print @max_fsrq  
  16.   end 
  17.     
  18.  
  19. print 'T-SQL Execute Times(ms):'    
  20.  print datediff(ms,@useTime,getdate())  

直接執行這個T-SQL腳本,在數據庫表沒有索引的情況下,耗費的時間是: 

  1. T-SQL Execute Times(ms):  
  2. 58796 

根據這個功能,寫了一個.net控制臺程序來測試,測試程序沒有使用任何數據訪問框架,直接使用ADO.NET,下面是多線程測試的代碼,其它代碼略:

  1. public static void Test2(string connName1,string connName2)  
  2.        {  
  3.            System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();  
  4.            watch.Start();  
  5.            string allJjdmList = "";  
  6.            string connString = getConnectionString();  
  7.            //SqlConnection conn = new SqlConnection(connString);  
  8.            //conn.Open();  
  9.  
  10.            string sql = "select jjdm from [FundYield] group by jjdm order by jjdm asc";  
  11.            DataSet ds = getData(connString, sql);  
  12.            int allCount = ds.Tables[0].Rows.Count;  
  13.            int p = (int)(allCount * 0.5);  
  14.  
  15.            System.Threading.Thread t1=new System.Threading.Thread (new System.Threading.ParameterizedThreadStart (tp1=>  
  16.                {  
  17.                    for (int i = 0; i < p; i++)  
  18.                    {  
  19.                        string jjdm = ds.Tables[0].Rows[i][0].ToString();  
  20.  
  21.                        object result = getSclar(ConfigurationManager.ConnectionStrings[connName1].ConnectionString,  
  22.                       string.Format("select MAX(fsrq) from [FundYield] where jjdm='{0}'", jjdm));  
  23.                        if (result != DBNull.Value)  
  24.                        {  
  25.                            DateTime dt = Convert.ToDateTime(result);  
  26.                            //Console.WriteLine("Thread 2 No {0} ,jjdm[{1}] last FSRQ is:{2}", i, jjdm, dt);  
  27.                        }  
  28.  
  29.                        allJjdmList = allJjdmList + "," + jjdm;  
  30.                    }  
  31.  
  32.                    Console.WriteLine("Tread 1 used all time is(ms):{0}", watch.ElapsedMilliseconds);  
  33.                }  
  34.            ));  
  35.  
  36.            System.Threading.Thread t2 = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(tp2 =>  
  37.            {  
  38.                for (int i = p; i < allCount; i++)  
  39.                {  
  40.                    string jjdm = ds.Tables[0].Rows[i][0].ToString();  
  41.                    //這里不論使用default還是express,區別不大  
  42.                    object result = getSclar(ConfigurationManager.ConnectionStrings[connName2].ConnectionString,  
  43.                        string.Format("select MAX(fsrq) from [FundYield] where jjdm='{0}'", jjdm));  
  44.                    if (result != DBNull.Value)  
  45.                    {  
  46.                        DateTime dt = Convert.ToDateTime(result);  
  47.                        //Console.WriteLine("Thread 2 No {0} ,jjdm[{1}] last FSRQ is:{2}", i, jjdm, dt);  
  48.                    }  
  49.                      
  50.                    allJjdmList = allJjdmList + "," + jjdm;  
  51.                }  
  52.  
  53.                Console.WriteLine("Tread 2 used all time is(ms):{0}", watch.ElapsedMilliseconds);  
  54.            }  
  55.            ));  
  56.  
  57.            t1.Start();  
  58.            t2.Start();  
  59.            t1.Join();  
  60.            t2.Join();  
  61.  
  62.            Console.WriteLine("====All thread completed!========");  
  63.  
  64.        } 

#p#

下面是測試結果:

第一次,數據庫沒有創建索引,進行全表掃描:

  1. ------單數據庫,單線程測試---------  
  2. used all time is(ms):59916  
  3. ------同一實例,雙數據庫,單線程測試---------  
  4. used all time is(ms):59150  
  5. ------同一實例,雙數據庫,多線程測試---------  
  6. Tread 2 used all time is(ms):51223  
  7. Tread 1 used all time is(ms):58175  
  8. ====All thread completed!========  
  9. ------雙實例,雙數據庫,單線程測試---------  
  10. used all time is(ms):58230  
  11. ------雙實例,雙數據庫,多線程測試---------  
  12. Tread 2 used all time is(ms):52705  
  13. Tread 1 used all time is(ms):58293  
  14. ====All thread completed!======== 

第二次,數據庫響應的字段創建索引,下面是測試結果:

  1. ------單數據庫,單線程測試---------  
  2. used all time is(ms):1721  
  3. ------同一實例,雙數據庫,單線程測試---------  
  4. used all time is(ms):1737  
  5. ------同一實例,雙數據庫,多線程測試---------  
  6. Tread 2 used all time is(ms):1684  
  7. Tread 1 used all time is(ms):1714  
  8. ====All thread completed!========  
  9. ------雙實例,雙數據庫,單線程測試---------  
  10. used all time is(ms):1874  
  11.  
  12.  
  13. ------單數據庫,單線程測試---------  
  14. used all time is(ms):1699  
  15. ------同一實例,雙數據庫,單線程測試---------  
  16. used all time is(ms):1754  
  17. ------同一實例,雙數據庫,多線程測試---------  
  18. Tread 1 used all time is(ms):1043  
  19. Tread 2 used all time is(ms):1103  
  20. ====All thread completed!========  
  21. ------雙實例,雙數據庫,單線程測試---------  
  22. used all time is(ms):1838  
  23. ------雙實例,雙數據庫,多線程測試---------  
  24. Tread 1 used all time is(ms):1072  
  25. Tread 2 used all time is(ms):1139  
  26. ====All thread completed!======== 

測試結論:

綜合全表掃描訪問和有索引方式的訪問,

單線程訪問:

  • 在同一個數據庫實例上,雙數據庫沒有體現出優勢,甚至單數據庫稍微優勝于多數據庫;
  • 在兩個數據庫實例上,雙實例雙實例要落后于單實例單數據庫;

多線程訪問:

  • 雙數據庫實例稍微落后于單數據庫實例;

綜合結論,看來不論是雙數據庫還是雙實例,對比與單實例或者單數據庫,都沒有體現出優勢,看來前者的優勢不在于訪問效率,一位朋友說,數據庫實例是不同的服務,控制粒度更小,維護影響比較低。但我想,雙數據庫實例,雙數據庫,多核CPU,應該跟兩臺數據庫服務器差不多的性能吧,怎么沒有體現優勢呢?也許是我的測試機器僅僅有一個磁盤,這里磁盤IO成了瓶頸。

這個測試有沒有意義,或者這個結果的原因,還請大牛們多多指教!

意外發現:

1,有人說頻繁的查詢在完全數據庫中進行效率最高,測試發現,在查詢分析器上直接運行上面的那個T-SQL腳本,跟程序從數據庫取出數據,再加工計算查詢,效率上沒有明顯的區別,所以哪些支持“將復雜的業務邏輯寫在存儲過程中效率最高的觀點是站不住腳的!”  ,ADO.NET從數據庫來回操作數據一樣有效率,如果加上復雜的字符函數計算和大批量的循環操作,存儲過程的效率不一定高。

2,在使用程序進行頻繁的數據庫操作的時候,使用一個連接對象還是在每個方法中使用新的連接對象,一直是很糾結的問題,心想頻繁的數據操作還是用一個連接對象快吧?在本文給出的測試代碼中,有下列語句:

  1. //SqlConnection conn = new SqlConnection(connString);  
  2.             //conn.Open(); 

注釋掉這些語句,在被調用的方法中使用自己的連接對象,與取消注釋,全部使用一個連接對象,效率上沒有任何區別!

究其原因,可能是ADO.NET自動使用了連接池,實際上程序在不同的情況下,使用的都是一個連接,所以操作上效率沒有區別。

后續測試

在真正的服務器上進行測試,發現測試結論又不一樣,我們有服務器A,擁有16個核,32G內存,另外一臺服務器B,擁有8個核,16G內存。在服務器A上有一個SqlServer實例,兩個一樣的數據庫;在在服務器B上有一個SqlServer實例,一個數據庫,下面是測試結果:

  1. ------單數據庫,單線程測試---------  
  2. used all time is(ms):650  
  3. ------同一實例,雙數據庫,單線程測試---------  
  4. used all time is(ms):418  
  5. ------同一實例,雙數據庫,多線程測試---------  
  6. Tread 2 used all time is(ms):221  
  7. Tread 1 used all time is(ms):223  
  8. ====All thread completed!========  
  9. ------雙實例,雙數據庫,單線程測試---------  
  10. used all time is(ms):1283  
  11. ------雙實例,雙數據庫,多線程測試---------  
  12. Tread 1 used all time is(ms):228  
  13. Tread 2 used all time is(ms):542  
  14. ====All thread completed!======== 

可以看到,同一實例,多數據庫,還是有明顯的優勢,而多線程優勢更大;由于兩臺服務器性能差距較大,雙實例測試沒有顯示出優勢,但多線程下還是比單實例單數據庫好!

為什么PC機跟服務器測試的結論不一致?也許還是跟計算能力相關,PC機的計算負載太大,已經失去了測試的意義。

原文鏈接:http://www.cnblogs.com/bluedoctor/archive/2011/06/28/2092113.html

【編輯推薦】

  1. 說說Top子句對查詢計劃的影響
  2. SQL Server復災 你懂了嗎?
  3. SQL Server管理 這些你懂嗎?
  4. 手把手教你建立SQL數據庫的表分區
  5. 如何設計合理的多表關聯的表分區
責任編輯:艾婧 來源: 博客園
相關推薦

2011-08-04 09:08:09

Vertica多數據庫實例端口

2019-10-12 16:15:13

MySQL數據庫多實例

2020-11-19 07:11:13

數據庫專用數據庫多模數據庫

2021-09-09 09:28:08

面向列數據庫面向行

2010-11-29 11:47:26

連接Sybase數據庫

2011-05-19 13:25:14

Oracle數據庫

2011-06-21 15:11:04

QT 數據庫

2010-04-01 09:45:38

NoSQL

2011-04-01 12:58:46

ASPACCESS數據庫

2011-07-05 10:16:16

Qt 數據庫 SQLite

2011-06-27 13:49:43

Qt 數據庫 QSqlQueryM

2011-07-05 16:08:10

2010-04-23 09:32:39

Oracle數據庫實例

2021-02-17 13:52:35

數據庫group byMySQL

2010-06-09 17:36:45

MySQL數據庫同步

2022-04-05 11:24:17

CyberDB內存數據庫Python

2010-04-14 15:45:49

Oracle 數據庫

2011-07-12 16:41:14

mysql處理異常

2011-06-27 13:32:21

Qt 數據庫 QSqlQueryM

2011-08-02 16:08:52

NoSQLMongoDBCassandra
點贊
收藏

51CTO技術棧公眾號

亚洲理论在线观看| 国产一区二区三区蝌蚪| 亚洲乱码一区二区| 日韩av卡一卡二| av中文字幕在线观看| 成人精品一区二区三区四区| 欧美性在线观看| 91免费在线看片| 欧美五码在线| 欧美军同video69gay| 欧美一级片免费播放| yourporn在线观看中文站| 国产99久久久国产精品免费看| 欧日韩不卡在线视频| 超碰在线国产97| 精品精品99| 亚洲国产小视频| 美女被艹视频网站| 午夜无码国产理论在线| 亚洲国产一区在线观看| 一本久久a久久精品vr综合 | 欧美一区二区不卡视频| 69堂免费视频| 欧美xxx黑人xxx水蜜桃| 国产精品免费久久久久| 欧美日韩国产一二| 色网站免费观看| 国产精品一区一区三区| 国产精品老牛影院在线观看| 麻豆国产尤物av尤物在线观看| 欧美成人精品一区二区三区在线看| 日韩成人网免费视频| 日本人妻一区二区三区| 国产精品99久久久久久董美香| 五月天久久比比资源色| 国内自拍中文字幕| 在线免费观看a视频| 中文字幕中文乱码欧美一区二区| 欧美亚洲爱爱另类综合| 色婷婷av一区二区三| 国产成人自拍在线| 99re视频在线| 99国产精品久久久久99打野战| 免费一级片91| 国产精品视频大全| 少妇又紧又色又爽又刺激视频| 国产美女一区| 亚洲少妇30p| 可以免费在线观看的av| 国产99久久精品一区二区300| 精品精品欲导航| 日韩精品――色哟哟| 国产精品中文| 日韩一二在线观看| 佐山爱在线视频| 麻豆视频久久| 日韩欧美的一区二区| 亚洲AV无码久久精品国产一区| 亚洲资源在线| 日韩欧美亚洲另类制服综合在线| 亚洲AV成人精品| 在这里有精品| 日韩电影网在线| 公侵犯人妻一区二区三区| 国产亚洲第一伦理第一区| 国产亚洲日本欧美韩国| 超碰人人人人人人人| 久久综合国产| 欧美成人黄色小视频| 麻豆疯狂做受xxxx高潮视频| 最新国产拍偷乱拍精品| 日韩免费黄色av| 中文字幕观看在线| 国产一区二区三区日韩| 国产欧美日韩亚洲| 日本韩国精品一区二区| 欧美国产精品v| 一本色道久久88亚洲精品综合 | 国产欧美精品日韩区二区麻豆天美| 日本一区二区精品| 久草中文在线| 欧美日韩国产黄| 五月婷婷丁香综合网| 99热这里有精品| 亚洲国产欧美一区| 2017亚洲天堂| 在线视频精品| 国产日韩欧美自拍| 日本精品久久久久| 中文av字幕一区| 成人免费在线视频播放| 美女一区网站| 日韩精品一区二区三区三区免费| 亚洲av无码一区二区二三区| 久久久久久久久久久妇女| 高清视频欧美一级| 亚洲中文字幕在线观看| 成年人网站91| 自拍亚洲欧美老师丝袜| 超碰一区二区| 日韩精品一区二区三区老鸭窝| 双性尿奴穿贞c带憋尿| 综合久久婷婷| 国产成人福利网站| 内射无码专区久久亚洲| 国产精品女上位| 六月丁香激情网| 日韩精品视频中文字幕| 一个人看的www久久| 久久免费在线观看视频| 九一久久久久久| 欧美三日本三级少妇三99| 色av手机在线| 91精品婷婷国产综合久久性色| 熟女少妇一区二区三区| 欧美精品导航| 91香蕉电影院| 在线日本视频| 在线看国产一区| 国产熟妇搡bbbb搡bbbb| 亚洲一级特黄| 91网免费观看| av电影免费在线观看| 欧美亚洲国产一区二区三区 | 99久久精品国产成人一区二区| 久久久777精品电影网影网 | 狠狠狠色丁香婷婷综合久久五月| 欧美一区1区三区3区公司| 久久青青色综合| 日韩网站在线看片你懂的| 三级黄色片在线观看| 丝袜亚洲精品中文字幕一区| 久久国产精品亚洲va麻豆| 国产探花在线观看| 欧美成人一区二区三区| 国产日韩欧美在线观看视频| 麻豆精品视频在线| 一本一道久久a久久精品综合| 蜜桃视频成人m3u8| 影音先锋日韩有码| 在线观看免费黄色小视频| 国产精品网曝门| 蜜臀av免费观看| 欧洲杯什么时候开赛| 国产成人一区二区三区| 久久电影中文字幕| 91福利精品视频| 青青青视频在线播放| 美女视频黄a大片欧美| 亚洲最大免费| 国产精品久久免费视频| 欧美成人中文字幕在线| 国产刺激高潮av| 精品欧美激情精品一区| 丰满少妇一区二区| 日韩制服丝袜av| 视频在线一区二区三区| 欧美成人家庭影院| 欧美乱妇40p| 色窝窝无码一区二区三区成人网站| 亚洲一区二区视频| 亚洲国产果冻传媒av在线观看| 国产视频欧美| 台湾成人av| 成人动漫视频在线观看| 欧美激情欧美激情| 污视频在线免费观看| 91国内精品野花午夜精品| av在线免费播放网址| 国产精品99久久久久久宅男| 久操网在线观看| 亚洲精品亚洲人成在线| 国产精品视频久久久| 在线黄色网页| 亚洲欧美在线磁力| 国产免费av电影| 午夜一区二区三区视频| 精品欧美一区二区久久久| 老司机精品视频导航| 99国产精品白浆在线观看免费| 欧美激情影院| 国产精品一区二区三区免费视频| www久久日com| 精品亚洲一区二区三区四区五区 | 在线看片国产福利你懂的| 亚洲人午夜精品免费| 亚洲最大成人av| 亚洲二区在线观看| 国产三级在线观看完整版| 国产黄色精品视频| 777久久久精品一区二区三区| 日韩高清欧美| 精品国产乱码久久久久久108| 91tv亚洲精品香蕉国产一区| 欧美国产日韩一区二区| 国产精品一区在线看| 精品国产乱码久久久久久蜜臀| 黄色av一区二区| 亚洲国产精品自拍| 中文字幕乱码av| 久久蜜桃av一区精品变态类天堂| 青青草原播放器| 日韩精品久久理论片| 妞干网视频在线观看| 日韩av有码| 麻豆传媒一区二区| 亚洲一区二区三区日本久久九| 国产精品成人一区二区三区吃奶| 国产丝袜视频在线播放| 深夜精品寂寞黄网站在线观看| 性xxxx18| 精品国产精品一区二区夜夜嗨| 亚洲一区二区三区高清视频| 欧美日韩在线视频首页| 青青青在线免费观看| 国产女人aaa级久久久级| 日本三级日本三级日本三级极| 久草精品在线观看| 亚洲国产日韩欧美在线观看| 六月天综合网| 又粗又黑又大的吊av| 国产精品大片| 青青在线免费视频| 久久中文字幕二区| 亚洲精品高清国产一线久久| 欧美美女在线观看| 久久精品一二三区| 久久久伦理片| 国产日韩二区| 国产成人av毛片| 国产精品sss| 日韩一区二区三区精品| 亚洲一区二区免费| 精品久久亚洲| 成人18视频| 91综合久久爱com| 成人动漫在线观看视频| 日韩一二三区| 国产偷国产偷亚洲高清97cao| 18国产精品| 国产91视觉| 国产区精品视频在线观看豆花| 国产成人精品福利一区二区三区 | 亚洲第一av在线| 日批视频在线播放| 亚洲精品成人久久电影| 天堂а√在线8种子蜜桃视频| 亚洲精品二三区| 日本福利片在线| 国产亚洲精品91在线| av女优在线| 超碰日本道色综合久久综合| a在线免费观看| 久久免费国产视频| 欧亚av在线| 日韩av色综合| 国产黄色精品| 成人欧美一区二区三区在线观看| 成人三级毛片| 欧美影视一区二区| 久久中文字幕二区| 日韩欧美猛交xxxxx无码| 在线看片一区| 不卡影院一区二区| 免费在线观看视频一区| 99国产精品免费视频| aa级大片欧美| 国产又粗又硬视频| 一区二区在线观看不卡| 日韩污视频在线观看| 一本一道久久a久久精品| 97超碰国产在线| 精品国产91亚洲一区二区三区婷婷| 欧美自拍偷拍第一页| 亚洲情综合五月天| 麻豆传媒在线完整视频| 久久97精品久久久久久久不卡| av岛国在线| 国产综合色香蕉精品| 国产成人精品福利| 日本午夜精品一区二区三区| 亚洲午夜精品一区二区国产| 福利视频一区二区三区四区| 日韩国产在线观看| 国产成人精品一区二区三区在线观看 | 蜜芽tv福利在线视频| 俺去亚洲欧洲欧美日韩| 爱啪啪综合导航| 成人国产精品久久久久久亚洲| 国内精品麻豆美女在线播放视频| 日韩在线国产| 亚洲欧洲午夜| 手机精品视频在线| 91女神在线视频| 一区二区在线观看免费视频| 色国产综合视频| 国产 日韩 欧美 精品| 色噜噜国产精品视频一区二区| 国语对白在线刺激| 国产精品男女猛烈高潮激情| 国偷自产视频一区二区久| 制服诱惑一区| 日韩国产欧美三级| 久久久老熟女一区二区三区91| 中文字幕欧美一| 国产精品免费精品一区| 欧美一级艳片视频免费观看| 国产午夜精品一区理论片| 欧美激情免费在线| 成人综合日日夜夜| 日韩欧美第二区在线观看| 91久久在线| 欧美一级片在线免费观看| 国产精品午夜在线| 国产伦精品一区二区三区视频我| 精品国产1区2区3区| 老司机在线永久免费观看| 青青久久av北条麻妃黑人| 国产精品欧美大片| 日本天堂免费a| 狠狠色丁香久久婷婷综| 成人性视频免费看| 91传媒视频在线播放| 成人午夜福利视频| 久久不射电影网| 日本午夜精品久久久久| 日本中文不卡| 亚洲欧美日韩专区| 中文字幕乱码一区| 亚洲成人免费看| 欧美在线 | 亚洲| 亚洲18私人小影院| 久久中文字幕导航| 欧美精品久久久久久久久久久| 成人h动漫精品| 国产精品第108页| 欧美精品一区在线观看| 国产一线二线在线观看| 国产精品久久久久久久久久久久午夜片 | 岛国大片在线播放| 成人午夜激情在线| 国产乡下妇女做爰| 亚洲高清色综合| 九色porny自拍视频在线观看 | 91高清视频免费| 欧美丝袜足交| 情侣黄网站免费看| 欧美极品少妇xxxxⅹ高跟鞋| 久久人人爽人人爽人人片av免费| 一区二区成人av| 日韩欧国产精品一区综合无码| 在线日韩av永久免费观看| 久久99国内精品| 真实国产乱子伦对白在线| 精品国产三级a在线观看| 老色鬼在线视频| 日本在线高清视频一区| 免费一级欧美片在线观看| 手机av在线看| 精品国精品国产| 亚洲一二三四| 亚洲综合视频一区| 成年人国产精品| 成人午夜精品视频| 久久天天躁狠狠躁老女人| xxxxxhd亚洲人hd| 东京热加勒比无码少妇| 国产精品乱码妇女bbbb| 国产高清视频免费观看| 性色av一区二区三区免费| 精品国精品国产自在久国产应用| 亚洲最大天堂网| 亚洲国产精品一区二区尤物区| 日产精品久久久久久久性色| 国产精品久久久久久久久影视| 88国产精品视频一区二区三区| 扒开伸进免费视频| 欧美午夜精品久久久久久孕妇| 2020国产在线视频| 免费在线观看一区二区| 国产在线观看免费一区| 国产污污视频在线观看| 中文字幕欧美专区| 丁香综合av| 尤物国产在线观看| 天天亚洲美女在线视频| 黄色av电影在线播放| 精品欧美一区二区久久久伦 | 亚洲av成人无码一二三在线观看| 在线观看网站黄不卡| 国产色婷婷在线| 亚洲一区二区三区免费观看| 99久久久国产精品免费蜜臀| 中文字幕精品在线观看| 97精品久久久| 亚洲色图国产| 国产欧美小视频| 精品五月天久久| 国产精品久av福利在线观看| 182午夜在线观看|