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

淺析因Session導(dǎo)致的ASP.NET網(wǎng)站性能問(wèn)題

開(kāi)發(fā) 后端
你的站點(diǎn)有被客戶(hù)投訴很慢嗎?是不是查了很多遍還是沒(méi)有完全解決?本文將為大家介紹如何解決因?yàn)镾ession導(dǎo)致的ASP.NET網(wǎng)站性能問(wèn)題。

大家是不是有數(shù)據(jù)庫(kù)沒(méi)有發(fā)現(xiàn)異常,CPU也沒(méi)有異常,內(nèi)存占用量沒(méi)有異常,GC計(jì)數(shù)沒(méi)有異常,硬盤(pán)IO也沒(méi)有異常,帶寬沒(méi)有異常,線(xiàn)路沒(méi)有異常,沒(méi)有丟包,但就是被投訴?而且還是陣發(fā)性的,有某個(gè)用戶(hù)投訴慢的時(shí)候,你訪(fǎng)問(wèn)卻很快,本地又復(fù)現(xiàn)不出來(lái)?今天你訪(fǎng)問(wèn)了博客園真是太幸運(yùn)了,也許這里就有你想要的一個(gè)答案——假如你的站點(diǎn)動(dòng)態(tài)處理了圖片或者其他原本不會(huì)動(dòng)態(tài)處理的非網(wǎng)頁(yè)資源的話(huà)。沒(méi)想到吧,造成ASP.NET網(wǎng)站性能下降的正是Session惹的禍!

我們公司某個(gè)站點(diǎn)訪(fǎng)問(wèn)量一直很大,幾年前就已經(jīng)發(fā)現(xiàn)客戶(hù)經(jīng)常投訴說(shuō)很慢,而這個(gè)問(wèn)題我們一直都在排查和解決。從線(xiàn)路問(wèn)題,到數(shù)據(jù)庫(kù)連接泄露,到數(shù)據(jù)庫(kù)死鎖、索引,以及程序的優(yōu)化問(wèn)題,我們都查找過(guò),并且解決過(guò)。然而,這個(gè)問(wèn)題總還是存在。比如說(shuō),在IIS日志中,就會(huì)經(jīng)常看到time-taken大于10秒鐘的訪(fǎng)問(wèn)。而最近我們的KPI要求解決這個(gè)問(wèn)題,不得已,再次踏上這趟艱難的排查之旅。

之所以說(shuō)艱難,是因?yàn)檫@個(gè)現(xiàn)象在本地幾乎無(wú)法復(fù)現(xiàn),一個(gè)是這個(gè)現(xiàn)象是陣發(fā)性的,第二個(gè)是本地訪(fǎng)問(wèn)量或者數(shù)據(jù)量不夠大。我們也嘗試過(guò)在本地加載線(xiàn)上服務(wù)器的數(shù)據(jù)庫(kù),然后拿服務(wù)器的IIS的Log文件重播,結(jié)果確實(shí)是偶爾發(fā)現(xiàn)IIS日志中的time-taken也會(huì)比較長(zhǎng),但是本地服務(wù)器性能不如線(xiàn)上服務(wù)器的,比如說(shuō)IO就差很遠(yuǎn),于是總說(shuō)不清楚到底是什么問(wèn)題。而線(xiàn)上服務(wù)器也不方便用做Dump的形式查找:第一是因?yàn)榫€(xiàn)上一做Dump,站點(diǎn)就會(huì)在幾分鐘內(nèi)失去響應(yīng),這樣我們客服的電話(huà)就會(huì)被打爆;另一個(gè)原因還是陣發(fā)性的問(wèn)題,我們不可能一直盯著性能看,然后在發(fā)生問(wèn)題的瞬間做Dump。再說(shuō)了,看性能也看不出來(lái),因?yàn)槟切╉憫?yīng)時(shí)間很長(zhǎng)的訪(fǎng)問(wèn),其前后附近的響應(yīng)都特別的快。不可避免的,我們只能夠在代碼里面塞入一些調(diào)試和日志的代碼,以期望能夠得到一些有用的信息。

最開(kāi)始的時(shí)候,我們認(rèn)為最可能的原因是數(shù)據(jù)庫(kù)阻塞,比如正好某一個(gè)訪(fǎng)問(wèn)鎖住某個(gè)數(shù)據(jù)庫(kù)對(duì)象(比如一張表或者某幾行),如果這個(gè)時(shí)候訪(fǎng)問(wèn)特定的頁(yè)面,可能就會(huì)比較慢。于是在數(shù)據(jù)庫(kù)層塞入了一堆代碼,這些代碼會(huì)在數(shù)據(jù)庫(kù)連接數(shù)量多,或者某個(gè)數(shù)據(jù)庫(kù)連接時(shí)間特別長(zhǎng)的時(shí)候,將所有數(shù)據(jù)庫(kù)連接的當(dāng)前訪(fǎng)問(wèn)語(yǔ)句、連接持續(xù)總時(shí)間,以及這些連接當(dāng)前的堆棧情況都輸出到文件中。與此同時(shí),我們還打開(kāi)Sql profiler對(duì)這個(gè)數(shù)據(jù)庫(kù)進(jìn)行監(jiān)視,將持續(xù)時(shí)間超過(guò)1秒鐘的都記錄下來(lái)。然而跑了一天之后,卻發(fā)現(xiàn)什么都沒(méi)有被記錄下來(lái),但I(xiàn)IS日志中仍然在這段時(shí)間內(nèi)出現(xiàn)許多10秒以上的訪(fǎng)問(wèn)。這個(gè)時(shí)候,我們就意識(shí)到,可能方向錯(cuò)了。

接著,我們就開(kāi)始塞另外一段代碼:一個(gè)IHttpModule。這個(gè)模塊就只是截獲每一個(gè)頁(yè)面訪(fǎng)問(wèn)的完整生命周期中的所有事件,比如BeginRequest、PreAuthenticateRequest等。同時(shí)在BeginRequest開(kāi)始的時(shí)候設(shè)置一個(gè)定時(shí)器,每隔一秒鐘就會(huì)出發(fā)一個(gè)事件,來(lái)記錄本次訪(fǎng)問(wèn)過(guò)程中,本模塊收集到的所有線(xiàn)程中當(dāng)前的堆棧情況。最后,在EndRequest的時(shí)候,如果訪(fǎng)問(wèn)時(shí)間超過(guò)5秒,就將之前截獲的所有信息輸出到文件中。這一下子問(wèn)題就變得非常的清晰了,比如說(shuō),下面這種輸出(片斷)就是非常典型的一個(gè)情況:

  1. #Steps:  
  2. #Fields: date time threadId stepName  
  3. #---------------------------------------------------  
  4. 2009-07-09 16:48:01.752 0024 BeginRequest  
  5. 2009-07-09 16:48:01.752 0024 AuthenticateRequest  
  6. 2009-07-09 16:48:01.752 0024 PostAuthenticateRequest  
  7. 2009-07-09 16:48:01.752 0024 AuthorizeRequest  
  8. 2009-07-09 16:48:01.752 0024 PostAuthorizeRequest  
  9. 2009-07-09 16:48:01.752 0024 ResolveRequestCache  
  10. 2009-07-09 16:48:01.752 0024 PostResolveRequestCache  
  11. 2009-07-09 16:48:01.752 0024 PostMapRequestHandler  
  12. 2009-07-09 16:48:06.284 0007 AcquireRequestState  
  13. 2009-07-09 16:48:06.284 0007 PostAcquireRequestState  
  14. 2009-07-09 16:48:06.284 0007 PreRequestHandlerExecute  
  15. 2009-07-09 16:48:06.284 0007 EndRequest  
  16. #---------------------------------------------------  
  17. #End of steps. 

也就是說(shuō),在PostMapRequestHandler之后,AcquireRequestState之前,有一大段的等待時(shí)間。而這個(gè)報(bào)告后面的堆棧情況,則顯得很奇怪:線(xiàn)程7從第一次截快照的時(shí)候開(kāi)始,一直到結(jié)束都是空白的!甚至在其他的一些報(bào)告中甚至?xí)l(fā)現(xiàn)這個(gè)線(xiàn)程已經(jīng)被分派處理其他頁(yè)面的工作了(堆棧中的調(diào)用很明顯指出是另一個(gè)aspx頁(yè)面的代碼)。結(jié)果一Google“PostMapRequestHandler”和“AcquireRequestState”這兩個(gè)關(guān)鍵字,就找到了國(guó)外另一個(gè)有類(lèi)似ASP.NET網(wǎng)站性能受影響的受害者:

  1. http://forums.iis.net/t/1147300.aspx 

這個(gè)樓主是一個(gè)aspx頁(yè)面里面有好幾個(gè)iframe,并且每一個(gè)iframe里面都是訪(fǎng)問(wèn)同一個(gè)Web應(yīng)用下的Aspx頁(yè)面。現(xiàn)象就是iframe內(nèi)的頁(yè)面會(huì)一個(gè)個(gè)蹦出來(lái),尤其是這些頁(yè)面都比較慢的時(shí)候。和我這里截獲到的情況一樣,也是PostMapRequestHandler事件到AcquireRequestState之間有很長(zhǎng)的空白時(shí)間。順藤摸瓜,又找到了這么一個(gè)帖子:

http://www.microsoft.com/communities/newsgroups/en-us/default.aspx?dg=microsoft.public.dotnet.framework.aspnet&mid=7f56033f-caac-47c2-bd9c-95512aa14b47

原來(lái),在A(yíng)cquireRequestState之前,需要等待上一個(gè)同SessionId的頁(yè)面處理完畢之后,才會(huì)繼續(xù)處理當(dāng)前頁(yè)面。其根本原因是:同一個(gè)SessionId下面的Session對(duì)象不應(yīng)該被同時(shí)寫(xiě)入,否則就會(huì)全亂套了,原理和多線(xiàn)程競(jìng)爭(zhēng)是一樣的。因此在設(shè)計(jì)上,同一個(gè)SessionId的頁(yè)面(或者IHttpHandler)就會(huì)順序執(zhí)行。

好了,到這里真相又一次大白了!(指不定還有別的問(wèn)題,還會(huì)有下一次大白的時(shí)候)在我們的系統(tǒng)中,由于特殊的原因,對(duì)圖片的輸出我們會(huì)通過(guò)Asp.Net來(lái)處理,比如說(shuō)加上一些合適的緩存標(biāo)記,甚至?xí)?dòng)態(tài)生成圖片輸出(令人驚訝的是,這個(gè)動(dòng)態(tài)輸出的總時(shí)間消耗甚至不到100毫秒,所以不要說(shuō)動(dòng)態(tài)生成是一種不好的實(shí)施方式)。但是,由于沒(méi)有經(jīng)過(guò)特殊處理,Asp.Net底層認(rèn)為這些訪(fǎng)問(wèn)時(shí)需要對(duì)Session進(jìn)行寫(xiě)操作的,于是就在A(yíng)cquireRequestState之前掛起,等待上一次同SessionId訪(fǎng)問(wèn)結(jié)束。可想而知,圖片多了就會(huì)導(dǎo)致排隊(duì),甚至排很長(zhǎng)的隊(duì)。如果在排隊(duì)結(jié)束之前訪(fǎng)問(wèn)下一個(gè)頁(yè)面,正好系統(tǒng)又沒(méi)有丟掉之前的隊(duì)列,則這次訪(fǎng)問(wèn)就會(huì)變得比較漫長(zhǎng)了。那么怎么做呢? 在一次順藤摸瓜,找到了確切的說(shuō)法:

http://msdn.microsoft.com/en-us/library/ms178581.aspx

注意下面的這段話(huà):

Concurrent Requests and Session State
Access to ASP.NET session state is exclusive per session, which means that if two different users make concurrent requests, access to each separate session is granted concurrently. However, if two concurrent requests are made for the same session (by using the same SessionID value), the first request gets exclusive access to the session information. The second request executes only after the first request is finished. (The second session can also get access if the exclusive lock on the information is freed because the first request exceeds the lock time-out.) If theEnableSessionState value in the @ Page directive is set to ReadOnly, a request for the read-only session information does not result in an exclusive lock on the session data. However, read-only requests for session data might still have to wait for a lock set by a read-write request for session data to clear.

也就是說(shuō),對(duì)于頁(yè)面,我們可以簡(jiǎn)單的在A(yíng)spx上的<% @Page %>內(nèi)設(shè)置EnableSessionState=”false”,或者EnableSessionState=”ReadOnly”,就可以減輕這種問(wèn)題的癥狀。前一種設(shè)置將會(huì)禁止對(duì)Session的訪(fǎng)問(wèn),而后一種設(shè)置則只能允許只讀訪(fǎng)問(wèn)(你不能夠?qū)ession進(jìn)行寫(xiě)操作)。正好,我們剛才提到的IHttpHandler中,對(duì)圖片進(jìn)行處理的部分,是不需要對(duì)Session進(jìn)行寫(xiě)操作的,但是卻需要讀取Session(根據(jù)狀態(tài)不同,而需要獲取一些特殊信息),因此可以采取上述的措施來(lái)解決問(wèn)題。

上述參考文獻(xiàn)中,并沒(méi)有說(shuō)明如何對(duì)不是Page的IHttpHandler如何設(shè)置,這里我特別說(shuō)明一下。對(duì)于自定義的一個(gè)實(shí)現(xiàn)了IHttpHandler接口的類(lèi),只要同時(shí)實(shí)現(xiàn)IReadOnlySessionState,即可達(dá)到EnableSessionState="ReadOnly"的效果。同時(shí),如果沒(méi)有實(shí)現(xiàn)IRequiresSessionState,則等價(jià)于EnableSessionState=”false”的效果。

注意:本文所說(shuō)的,不是說(shuō)你在代碼里面有沒(méi)有用到Session,ASP.NET不會(huì)掃描你的代碼看看有沒(méi)有訪(fǎng)問(wèn)Session,或者在你第一次訪(fǎng)問(wèn)Session的時(shí)候才會(huì)加鎖。ASP.NET是在A(yíng)cquireRequestState事件之前就首先申請(qǐng)這個(gè)鎖——只要你的頁(yè)面沒(méi)有設(shè)置EnableSessionState=”false”或EnableSessionState=”ReadOnly”,或者你的IHttpHandler實(shí)現(xiàn)了IRequiresSessionState卻沒(méi)有實(shí)現(xiàn)IReadOnlySessionState接口就會(huì)這樣。回復(fù)中有很多同學(xué)說(shuō)“只要我不用Session不就行了嗎?”或者“我從來(lái)不用Session”,這么想完全是錯(cuò)誤的,只能說(shuō)你沒(méi)有理解這背后的機(jī)制,甚至可能連Asp.net生命周期都不太清楚。Asp.Net之所以在你的頁(yè)面代碼開(kāi)始執(zhí)行之前就鎖定,是要保證整個(gè)環(huán)境的完整性,避免部分執(zhí)行的情況。當(dāng)然,也正如上面的一些引用中所提到的,你可以自己寫(xiě)一個(gè)SessionProvider而不做任何的鎖工作,但這樣做肯定有不確定性的風(fēng)險(xiǎn),到時(shí)候只能你自己承擔(dān),并且更難復(fù)現(xiàn)和調(diào)試。

ASP.NET網(wǎng)站性能分析后記:

可能有不少人都知道Session是什么,也有很多人知道ASP.NET的生命周期都包含哪些,比如一搜索"PostMapRequestHandler AcquireRequestState",就會(huì)出來(lái)很多中文的頁(yè)面介紹HttpApplication類(lèi)都有哪些事件,以及生命周期等等。而說(shuō)到Session會(huì)造成特殊情況下站點(diǎn)性能問(wèn)題的,似乎中文界我這還真是第一篇。當(dāng)然了,這個(gè)問(wèn)題可能比較偏,因?yàn)橐话愦蠹叶贾粫?huì)處理Aspx頁(yè)面而不會(huì)處理圖片,甚至用Aspx頁(yè)面來(lái)動(dòng)態(tài)輸出圖片的機(jī)會(huì)都比較少,英文的似乎也只有文中提到的唯一一個(gè)同志提出來(lái)了。

不過(guò),有一個(gè)很常見(jiàn)的場(chǎng)景會(huì)受這個(gè)問(wèn)題的影響,那就是“驗(yàn)證碼”。如果驗(yàn)證碼生成速度很慢,同時(shí)客戶(hù)端瀏覽器選擇長(zhǎng)連接而服務(wù)器也接受長(zhǎng)連接,則可能會(huì)影響在輸出驗(yàn)證碼完畢之前訪(fǎng)問(wèn)下一個(gè)頁(yè)面的速度。反過(guò)來(lái),我們也經(jīng)常可以體驗(yàn)到,驗(yàn)證碼出來(lái)的速度總是特別慢,總是“蹦”出來(lái)的,尤其是當(dāng)前頁(yè)面特別復(fù)雜的時(shí)候,似乎頁(yè)面沒(méi)有加載完就總不會(huì)出現(xiàn)驗(yàn)證碼。估計(jì)我說(shuō)的問(wèn)題就是原因之一。

不過(guò)驗(yàn)證碼的問(wèn)題還不是特別好解決,因?yàn)闉榱吮苊庑畔⑿孤兜膯?wèn)題,驗(yàn)證碼的答案通常是存在在Session里面的,而通常的設(shè)計(jì)也是一訪(fǎng)問(wèn)驗(yàn)證碼圖片,就會(huì)將驗(yàn)證碼答案寫(xiě)到Session里面。所以,很不幸,文中提到的那個(gè)解決辦法是行不通的,至少不是能夠直接行得通的。這個(gè)問(wèn)題有沒(méi)有救藥?有,當(dāng)然有了。怎么救?哈,那就有勞你自己開(kāi)動(dòng)腦筋了,我這里算是點(diǎn)到即止了。

【編輯推薦】

  1. ASP.NET的錯(cuò)誤處理機(jī)制
  2. ASP.NET多附件上傳和附件編輯的實(shí)現(xiàn)
  3. ASP.NET中性能和擴(kuò)展性的秘密
  4. ASP.NET 3.5圖表控件親密接觸
  5. 詳解ASP.NET的四種狀態(tài)
責(zé)任編輯:彭凡 來(lái)源: cnblogs
相關(guān)推薦

2009-07-31 18:16:09

ASP.NET中的Se

2009-08-03 10:07:20

ASP.NET Ses

2009-07-22 18:02:26

ASP.NET Ses

2009-07-27 10:18:12

TypeResolveASP.NET

2009-07-27 15:34:11

MembershipASP.NET

2009-08-05 15:50:13

ASP.NET優(yōu)點(diǎn)

2009-07-31 12:43:59

ASP.NET MVC

2009-08-05 18:36:12

ASP.NET Che

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 15:10:04

ASP.NET網(wǎng)站設(shè)置

2011-06-28 15:14:10

ASP.NET性能優(yōu)化

2009-07-22 18:03:00

ASP.NET ASP

2009-07-29 10:19:48

Session StaASP.NET

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設(shè)計(jì)

2009-07-28 16:57:50

ASP.NET Ses

2010-08-06 08:50:21

ASP.NET

2009-08-04 17:00:16

ASP.NET代碼分離

2009-07-28 10:59:13

ASP.NET IIS

2009-07-29 14:12:45

ASP.NET tra

2009-07-23 14:31:20

ASP.NET MVC
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

精品国产免费一区二区三区| 中文字幕欧美日韩在线| 自慰无码一区二区三区| 国产小视频在线| 韩日精品视频一区| 国模视频一区二区| 欧美成人久久久免费播放| 911精品国产| 欧美日韩一本到| 女人色极品影院| 网友自拍视频在线| 久久嫩草精品久久久精品| 成人欧美在线视频| 黄色污污网站在线观看| 国产精品99免费看| 日日噜噜噜夜夜爽亚洲精品 | 亚洲美女av在线| 91 视频免费观看| 欧美一区久久久| 亚洲一区二区不卡免费| 在线播放 亚洲| 欧美zozo| 91免费视频网址| 成人9ⅰ免费影视网站| 中文字幕日产av| 先锋影音久久久| 午夜精品理论片| 久久久久久av无码免费网站| 水蜜桃久久夜色精品一区| 亚洲精品在线看| 日本少妇xxxx| 国产精品22p| 日韩欧美亚洲一区二区| 久久6免费视频| 素人啪啪色综合| 色偷偷88欧美精品久久久| 男人添女人下面高潮视频| 婷婷色在线资源| 亚洲精品成人精品456| 一区二区三区不卡在线| www.亚洲视频| 日本一区二区三区在线观看| 欧美二区三区在线| 日韩av资源| 2019国产精品| 欧美二区三区| 国产大学生校花援交在线播放 | 日韩欧美电影在线| 波多野结衣在线免费观看| 亚洲精品成人一区| 欧美区一区二区三区| 亚洲综合婷婷久久| 欧美亚洲人成在线| 欧美日本一区二区| 国内自拍第二页| 国产日韩在线观看视频| 欧美一区二区三区精品| 少妇愉情理伦片bd| 国产suv精品一区二区四区视频| 欧美videofree性高清杂交| 女人扒开双腿让男人捅| 91精品尤物| 亚洲国产精品久久91精品| 国产熟女高潮一区二区三区| 欧美aaaaa级| 亚洲欧美国产视频| 永久免费观看片现看| 国产精品久久久久久久免费观看 | 五月天丁香激情| 欧美激情电影| 欧美日本高清视频| 日韩精品视频播放| 日韩中文字幕区一区有砖一区| 国产精品88a∨| 一区二区三区午夜| 成人免费看的视频| 久久久久久久久久久久久久一区 | 国产精品中文字幕亚洲欧美| 在线成人激情黄色| 欧美精品成人久久| 亚洲免费在线| 成人欧美在线视频| 午夜性色福利视频| 日韩美女精品在线| 伊人成色综合网| 久久久久伊人| 欧美精品一区二区久久久| 亚洲图片另类小说| 日韩欧美一区二区三区在线视频| 欧美日韩国产999| 天干夜夜爽爽日日日日| 日本在线播放一区二区三区| 91亚洲精华国产精华| 天天干天天爱天天操| 亚洲国产成人午夜在线一区 | 久久aⅴ国产紧身牛仔裤| 国产精品美女呻吟| 欧美自拍偷拍一区二区| 中文字幕免费不卡| 波多野结衣综合网| 精品福利在线| 日韩高清人体午夜| 老司机成人免费视频| 香蕉成人久久| 99在线看视频| 午夜激情视频在线| 色综合色狠狠天天综合色| 韩国一区二区在线播放| 国产亚洲精品美女久久久久久久久久| 久久香蕉频线观| 国产99久久久久久免费看| 国产在线视频一区二区| 欧美另类网站| 肉体视频在线| 欧美男女性生活在线直播观看| 国产肉体xxxx裸体784大胆| 亚洲最大黄网| 国产免费一区二区三区香蕉精| 手机在线观看毛片| 一区二区三区四区在线免费观看| 日本在线观看免费视频| 亚洲精品播放| 91精品国产高清自在线| 国内精品久久久久久久久久久| 国产清纯美女被跳蛋高潮一区二区久久w| 麻豆映画在线观看| 91九色成人| 中文字幕亚洲一区二区三区五十路| 欧美成人aaaaⅴ片在线看| 国产精品1024| 中文字幕乱码免费| 玖玖精品在线| 日韩在线视频网| 国产日韩在线免费观看| 久久―日本道色综合久久| 黄色一级视频片| 嫩草国产精品入口| 午夜精品福利在线观看| 亚洲精品国产精品乱码不卡| 亚洲欧洲av一区二区三区久久| 不卡影院一区二区| 九九久久婷婷| 国产不卡精品视男人的天堂| 每日更新在线观看av| 黑人与娇小精品av专区| 一本加勒比波多野结衣| 日韩视频在线一区二区三区| 国产精品v欧美精品∨日韩| 中文在线观看免费| 精品国产凹凸成av人网站| 久久精品视频6| 91视频www| 女性隐私黄www网站视频| 精品日韩在线| 国产精品视频在线播放| 国产三区在线观看| 欧美α欧美αv大片| 国产一级二级三级| 99亚偷拍自图区亚洲| 青青草原成人网| 国产精品欧美在线观看| 国产精品男女猛烈高潮激情| 中文字幕在线播放| 制服丝袜av成人在线看| 欧美另类视频在线观看| 99在线精品一区二区三区| 中国丰满人妻videoshd| 国产精品日韩精品中文字幕| 国产精品自产拍在线观| av网站网址在线观看| 亚洲精品一区二区在线观看| 国产午夜免费福利| 亚洲国产精华液网站w| 波多野结衣免费观看| 亚洲激情精品| 午夜免费电影一区在线观看| 国产精品一级在线观看| 性日韩欧美在线视频| 久久久久久青草| 3atv一区二区三区| 国产成人愉拍精品久久| 国产日韩精品视频一区| 免费欧美一级片| 国产欧美一级| 综合视频在线观看| 欧美三级午夜理伦三级在线观看 | 欧美成人亚洲成人日韩成人| 手机av在线免费观看| 欧美专区日韩专区| 久久久一二三区| 日本一区二区成人在线| 亚洲一级Av无码毛片久久精品| 久久久久久夜| 国产成人一区二区三区别| 亚洲国产合集| 69堂成人精品视频免费| 日韩av一级| 久久久在线免费观看| 在线日本视频| 亚洲美女自拍视频| 亚洲av无码片一区二区三区| 在线视频一区二区免费| 国产无码精品在线播放| 国产精品日日摸夜夜摸av| 天天躁日日躁狠狠躁av麻豆男男| 日本视频一区二区| 性欧美大战久久久久久久| 99久久99视频只有精品| 欧美日韩一区二区三| 在线精品国产亚洲| 国产欧美精品xxxx另类| 久久电影tv| 久久久中精品2020中文| 男人天堂手机在线| 一区二区亚洲精品国产| 五月天激情婷婷| 精品国内二区三区| 国产suv精品一区二区69| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 亚洲九九爱视频| 卡一卡二卡三在线观看| 91亚洲精品久久久蜜桃网站| 亚洲国产日韩在线一区| 六月丁香综合在线视频| 五月天婷婷激情视频| 国产精品毛片在线| 久久久性生活视频| 亚洲图片在线| a级片一区二区| 综合激情婷婷| a级网站在线观看| 99久久夜色精品国产亚洲狼| 日韩电影免费观看在| 亚洲人成网站77777在线观看| 国产嫩草一区二区三区在线观看| 1769国产精品视频| 国产日韩久久| 精品淫伦v久久水蜜桃| 痴汉一区二区三区| eeuss鲁片一区二区三区| 99国产在线观看| 亚洲三级av| 国产精品xxxx| 日本欧美三级| 欧美日韩国产不卡在线看| 国产一区二区观看| 亚洲欧洲一区二区| 色一区二区三区四区| 黄色www在线观看| 亚洲影视一区二区三区| 国产精品av免费| 午夜久久久久| 夜夜添无码一区二区三区| 亚洲茄子视频| 日韩毛片在线免费看| 日本系列欧美系列| 久久国产这里只有精品| 精品一区二区日韩| 国产精品二区视频| 99久久免费视频.com| 日本少妇色视频| 中文欧美字幕免费| 日韩激情综合网| 一区二区三区精密机械公司| 天堂资源在线播放| 一本在线高清不卡dvd| 国产九色91回来了| 欧美精品免费视频| 亚洲第一页综合| 亚洲欧美日韩一区二区在线| www.在线播放| 欧美精品精品精品精品免费| 久久影院午夜精品| 国产精品狼人色视频一区| 欧美国产中文高清| 精品视频第一区| 日韩欧美不卡| 成人免费观看在线| 蜜臀av在线播放一区二区三区| 五月花丁香婷婷| av网站一区二区三区| 国产一二三四区在线| 一区二区三区免费看视频| 亚洲免费在线观看av| 欧美日韩高清一区二区不卡| 亚洲国产精品成人久久蜜臀| 精品视频在线播放免| 麻豆影视在线观看_| 97在线观看视频| 亚洲一区二区三区久久久| 国产99在线免费| 欧美午夜精彩| 日韩精品在线中文字幕| 老司机免费视频久久| 色哟哟免费视频| 中文字幕欧美日韩一区| 中文字幕第28页| 欧美日韩精品免费| 亚洲日本在线播放| 不用播放器成人网| 欧美性猛交xxx高清大费中文| 亚洲最大福利视频网| 精品盗摄女厕tp美女嘘嘘| 国产青草视频在线观看| 日韩国产一区二| theav精尽人亡av| 一区二区三区四区精品在线视频 | 欧美一级片在线看| 国产在线黄色| 97精品在线视频| 欧美成年网站| 亚洲视频sss| 久久一日本道色综合久久| 精品国产aⅴ一区二区三区东京热| 欧美国产一区视频在线观看| 日韩女同强女同hd| 7777精品伊人久久久大香线蕉的 | 中文字幕欧美激情| 亚洲天堂一区在线观看| 精品捆绑美女sm三区| 免费日本一区二区三区视频| 国产suv精品一区二区三区88区| 91免费精品国偷自产在线在线| 永久久久久久| 免费高清不卡av| 亚洲自拍偷拍图| 色婷婷亚洲精品| 精华区一区二区三区| 韩剧1988免费观看全集| 成人精品动漫一区二区三区| 国产日韩欧美大片| 精品一区二区免费在线观看| 欧美美女性生活视频| 欧洲精品中文字幕| 风间由美一区| 国产免费观看久久黄| 日韩一区欧美| 欧美特黄aaa| 亚洲色图20p| www.久久久久久久久久| 欧美成人sm免费视频| 精品一区二区三区四区五区| 亚洲av综合色区| 国产激情偷乱视频一区二区三区| 黄视频网站免费看| 日韩精品一区二区三区四区| 在线观看中文| 国产精品一区视频| 99精品视频免费观看| av网站有哪些| 在线日韩国产精品| 天堂资源在线中文| 91丨九色丨国产在线| 欧美一区激情| 97人妻精品一区二区三区免费| 欧美日韩久久久久| 国产一级网站视频在线| 国产精品丝袜久久久久久高清 | 欧美激情在线看| 一级特黄aa大片| 欧美黑人国产人伦爽爽爽| 国产一区二区三区不卡av| 18禁男女爽爽爽午夜网站免费| 久久久影视传媒| 一级全黄少妇性色生活片| 久久影视电视剧免费网站| 国产精品成人自拍| av免费网站观看| 亚洲码国产岛国毛片在线| 乱色精品无码一区二区国产盗| 欧美一级片免费在线| 成人情趣视频网站| 久久久久亚洲av无码网站| 色综合亚洲欧洲| 免费在线毛片网站| 国产精品一级久久久| 日韩一区欧美二区| 欧美日韩人妻精品一区二区三区| 亚洲国产福利在线| 国产91精品在线| 69sex久久精品国产麻豆| 国产视频一区二区在线| 国内毛片毛片毛片毛片| 欧美专区国产专区| 天天插综合网| a视频免费观看| 日韩一区二区三区视频在线| 特黄毛片在线观看| 日本久久高清视频| 国产亚洲成aⅴ人片在线观看| 国产高清免费av| 国产精品91久久久久久| 欧美在线免费一级片| 性欧美精品中出| 日韩精品中文字幕在线不卡尤物 | 欧美日韩中文国产| 美女尤物在线视频| 特级毛片在线免费观看| 91在线丨porny丨国产| 国产成人三级在线播放|