久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微软建议的ASP性能优化28条守则

發(fā)布時間:2023/12/9 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微软建议的ASP性能优化28条守则 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

二十八條改善 ASP 性能和外觀的技巧
Len Cardinal,高級顧問,Microsoft Consulting Services George V. Reilly
Microsoft IIS Performance Lead

改編自Nancy Cluts 的文章 開發(fā)人員技術工程師
Microsoft Corporation
2000 年 4 月

摘要:本文介紹優(yōu)化 ASP 應用程序和 VBScript 的技巧。

目錄
技巧 1:將經(jīng)常使用的數(shù)據(jù)緩存在 Web 服務器上
技巧 2:將經(jīng)常使用的數(shù)據(jù)緩存在 Application 或 Session 對象中
技巧 3:將數(shù)據(jù)和 HTML 緩存在 Web 服務器的磁盤上
技巧 4:避免將非敏捷的組件緩存在 Application 或 Session 對象中
技巧 5:不要將數(shù)據(jù)庫連接緩存在 Application 或 Session 對象中
技巧 6:合理地使用 Session 對象
技巧 7:將代碼封裝在 COM 對象中
技巧 8:遲一點獲得資源,早一點釋放資源
技巧 9:進程外執(zhí)行過程以性能換取可靠性
技巧 10:使用顯式選項
技巧 11:在子例程和函數(shù)中使用局部變量
技巧 12:將經(jīng)常使用的數(shù)據(jù)復制到腳本變量中
技巧 13:避免重新確定數(shù)組的維數(shù)
技巧 14:使用響應緩沖
技巧 15:批處理內(nèi)嵌腳本和 Response.Write 語句
技巧 16:如果頁面需要很長時間才能完成,那么執(zhí)行前使用 Response.IsClientConnected
技巧 17:使用 <OBJECT> 標記例示對象
技巧 18:對于 ADO 和其它組件使用 TypeLib 綁定
技巧 19:利用瀏覽器的驗證功能
技巧 20:避免在循環(huán)語句中使用字符串串聯(lián)
技巧 21:啟用瀏覽器和代理緩存
技巧 22:盡可能使用 Server.Transfer 代替 Response.Redirect
技巧 23:在目錄 URL 中使用后斜杠
技巧 24:避免使用服務器變量
技巧 25:升級到最新和最出色的
技巧 26:優(yōu)化 Web 服務器
技巧 27:進行性能測試
技巧 28:閱讀資源鏈接
引言
性能是一個特征。您必須預先設計性能,否則您以后就得重寫應用程序。就是說,有哪些好的策略可使 Active Server Pages (ASP) 應用程序性能達到最佳?

本文介紹了優(yōu)化 ASP 應用程序和 Visual Basic? Scripting Edition (VBScript) 的技巧。本文討論了許多陷阱。本文列出的建議已經(jīng)在 http://www.microsoft.com 和其它站點中進行了測試,效果十分顯著。本文假定您已經(jīng)對 ASP 開發(fā),包括 VBScript 和/或 JScript、ASP Application、ASP Session 和其它 ASP 固有對象(Request、Response 和 Server)有了基本了解。

通常,ASP 性能主要取決于 ASP 代碼本身以外的很多因素。我們不在一篇文章中羅列出所有的信息,在本文結尾處我們列出了與性能有關的資源。這些鏈接涵蓋了 ASP 和非 ASP 主題,包括 ActiveX? 數(shù)據(jù)對象 (ADO)、組件對象模型 (COM)、數(shù)據(jù)庫和 Internet Information Server (IIS) 配置。這些都是我們喜歡的一些鏈接 - 一定要去看看。

技巧 1:將經(jīng)常使用的數(shù)據(jù)緩存在 Web 服務器上
典型的 ASP 頁從后端數(shù)據(jù)存儲中檢索數(shù)據(jù),然后將結果轉換成超文本標記語言 (HTML)。無論數(shù)據(jù)庫的速度如何,從內(nèi)存中檢索數(shù)據(jù)總要比從后端數(shù)據(jù)存儲中檢索數(shù)據(jù)快得多。從本地硬盤讀取數(shù)據(jù)通常也比從數(shù)據(jù)庫中檢索數(shù)據(jù)更快。因此,通常可以將數(shù)據(jù)緩存在 Web 服務器上(存儲在內(nèi)存或磁盤中),來提高性能。

緩存是傳統(tǒng)的以空間換取時間的做法。如果您緩存的內(nèi)容正確,那么您可以看到性能會有顯著的提高。為使緩存有效,必須保存那些經(jīng)常重復使用的數(shù)據(jù),且要重新計算這些數(shù)據(jù)需要(適度)大的開銷。如果緩存的都是些陳舊的數(shù)據(jù),就會造成內(nèi)存浪費。

不經(jīng)常發(fā)生改變的數(shù)據(jù)是很好的緩存候選數(shù)據(jù),因為您不必擔心隨著時間的遷移該數(shù)據(jù)與數(shù)據(jù)庫同步的問題。組合框列表、引用表、DHTML 碎片、擴展標記語言 (XML) 字符串、菜單項和站點配置變量(包括數(shù)據(jù)源名稱 (DSN)、Internet 協(xié)議 (IP) 地址和 Web 路徑)都是很好的緩存候選內(nèi)容。注意您可以緩存數(shù)據(jù)的“表示”,而不緩存數(shù)據(jù)本身。如果 ASP 頁很少更改,且緩存的開銷也很大(例如,整個產(chǎn)品目錄),則應考慮事先產(chǎn)生 HTML,而不是在響應每個請求時重新顯示。

應將數(shù)據(jù)緩存在哪里,有哪些緩存策略?通常,數(shù)據(jù)緩存在 Web 服務器的內(nèi)存或磁盤中。下兩個技巧講述了這兩個方法。

技巧 2: 將經(jīng)常使用的數(shù)據(jù)緩存在 Application 或 Session 對象中
ASP Application 和 Session 對象為將數(shù)據(jù)緩存在內(nèi)存中提供了方便的容器。您可以將數(shù)據(jù)指派到 Application 和 Session 對象中,這些數(shù)據(jù)在 HTTP 調(diào)用之間保留在內(nèi)存中。Session 數(shù)據(jù)是按每個用戶分別存儲的,而 Application 數(shù)據(jù)則在所有用戶之間共享。

什么時候將數(shù)據(jù)裝載到 Application 或 Session 中呢?通常,數(shù)據(jù)是在啟動 Application 或 Session 時裝載。要在 Application 或 Session 啟動過程中裝載數(shù)據(jù),應將適當?shù)拇a分別添加到 Application_OnStart() 或 Session_OnStart() 中。這些函數(shù)應在 Global.asa 中,如果沒有,則可以添加這些函數(shù)。還可以在第一次需要時裝載該數(shù)據(jù)。為此,在 ASP 頁中添加一些代碼(或編寫一個可重復使用的腳本函數(shù)),以檢查數(shù)據(jù)是否存在,如果不存在,就裝載數(shù)據(jù)。這是一個傳統(tǒng)的性能技術,稱為“惰性計算” - 在您知道需要某一個值以前不計算該值。例如:

<%
Function GetEmploymentStatusList
Dim d
d = Application(“EmploymentStatusList”)
If d = ““ Then
' FetchEmploymentStatusList function (not shown)
' fetches data from DB, returns an Array
d = FetchEmploymentStatusList()
Application(“EmploymentStatusList”) = d
End If
GetEmploymentStatusList = d
End Function
%>


可以為所需要的每個數(shù)據(jù)塊編寫類似的函數(shù)。

應以什么格式存儲數(shù)據(jù)?可以存儲任何變體類型,因為所有腳本變量都是變體型。例如,您可以存儲字符串、整數(shù)或數(shù)組。通常,您將以這些變量類型之一存儲 ADO 記錄集的內(nèi)容。要從 ADO 記錄集獲取數(shù)據(jù),您可以手工將數(shù)據(jù)復制到 VBScript 變量,一次一個字段。使用一個 ADO 記錄集持久函數(shù) GetRows()、GetString() 或 Save()(ADO 2.5),可加快速度且更容易一些。其詳細情況已超出本文所討論的范圍,但下面給出了一個函數(shù)舉例,說明使用 GetRows() 返回記錄集數(shù)據(jù)的一個數(shù)組:

' Get Recordset, return as an Array
Function FetchEmploymentStatusList
Dim rs
Set rs = CreateObject(“ADODB.Recordset”)
rs.Open “select StatusName, StatusID from EmployeeStatus”, _
“dsn=employees;uid=sa;pwd=;”
FetchEmploymentStatusList = rs.GetRows() “ Return data as an Array
rs.Close
Set rs = Nothing
End Function


對上面舉例做更進一步改進,可以將 HTML 緩存為列表,而不是數(shù)組。下面是簡單的示例:

' Get Recordset, return as HTML Option list
Function FetchEmploymentStatusList
Dim rs, fldName, s
Set rs = CreateObject(“ADODB.Recordset”)
rs.Open “select StatusName, StatusID from EmployeeStatus”, _
“dsn=employees;uid=sa;pwd=;”
s = “<select name=““EmploymentStatus”“>“ & vbCrLf
Set fldName = rs.Fields(“StatusName”) ' ADO Field Binding
Do Until rs.EOF
' Next line violates Don't Do String Concats,
' but it's OK because we are building a cache
s = s & “ <option>“ & fldName & “</option>“ & vbCrLf
rs.MoveNext
Loop
s = s & “</select>“ & vbCrLf
rs.Close
Set rs = Nothing ' See Release Early
FetchEmploymentStatusList = s ' Return data as a String
End Function


在適當?shù)臈l件下,可以將 ADO 記錄集本身緩存在 Application 或 Session 作用域中。有兩個警告:

必須將 ADO 標記為自由線程
必須使用斷開連接的記錄集。
如果不能保證滿足這兩個要求,則不要緩存 ADO 記錄集。在下面的“非敏捷組件”和“不要緩存連接”技巧中,我們將討論將 COM 對象存儲在 Application 或 Session 作用域中的危險性。

當您將數(shù)據(jù)存儲在 Application 或 Session 作用域時,數(shù)據(jù)將保留在那里,直到您以編程方式改變它、Session 過期或 Web 應用程序重新啟動為止。如果數(shù)據(jù)需要更新怎么辦?要手工強制對 Application 數(shù)據(jù)進行更新,您可以訪問只有管理員才可訪問的 ASP 頁來更新數(shù)據(jù)。或者,您可以通過函數(shù)定期自動刷新數(shù)據(jù)。下面例子存儲帶有緩存數(shù)據(jù)的時間戳,并隔一段時間后刷新數(shù)據(jù)。

<%
' error handing not shown...
Const UPDATE_INTERVAL = 300 ' Refresh interval, in seconds

' Function to return the employment status list
Function GetEmploymentStatusList
UpdateEmploymentStatus
GetEmploymentStatusList = Application(“EmploymentStatusList”)
End Function

' Periodically update the cached data
Sub UpdateEmploymentStatusList
Dim d, strLastUpdate
strLastUpdate = Application(“LastUpdate”)
If (strLastUpdate = ““) Or _
(UPDATE_INTERVAL < DateDiff(“s”, strLastUpdate, Now)) Then

' Note: two or more calls might get in here. This is okay and will simply
' result in a few unnecessary fetches (there is a workaround for this)

' FetchEmploymentStatusList function (not shown)
' fetches data from DB, returns an Array
d = FetchEmploymentStatusList()

' Update the Application object. Use Application.Lock()
' to ensure consistent data
Application.Lock
Application(“EmploymentStatusList”) = Events
Application(“LastUpdate”) = CStr(Now)
Application.Unlock
End If
End Sub


請參見 World's Fastest ListBox with Application Data,上面還有一個例子。

要知道在 Session 或 Application 對象中緩存大的數(shù)組不是一個好的做法。在訪問數(shù)組的任何元素之前,腳本語言的語法要求必須臨時復制整個數(shù)組。例如,如果將由字符串組成的有 100,000 個元素的數(shù)組(該數(shù)組將美國郵政編碼映射到當?shù)氐臍庀笳?#xff09;緩存在 Application 對象中,ASP 必須先將所有的 100,000 個氣象站復制到臨時數(shù)組中,然后才能提取一個字符串。在這種情況下,用自定義方法建立一個自定義組件來存儲氣象站 - 或使用一個詞典組件會更好。

再警告大家一下,不要將嬰兒與洗澡水一起倒掉:數(shù)組能快速查尋和存儲在內(nèi)存中是鄰近的關鍵數(shù)據(jù)對。索引一個詞典比索引一個數(shù)組要慢得多。應針對您的實際情況,選擇提供最佳性能的數(shù)據(jù)結構。

技巧 3:將數(shù)據(jù)和 HTML 緩存在 Web 服務器的磁盤上
有時,數(shù)據(jù)可能太多,無法都緩存在內(nèi)存中。“太多”只是一個說法,這要看您想消耗多少內(nèi)存,以及需緩存的項目數(shù)和檢索這些項目的頻率。在任何情況下,如果數(shù)據(jù)太多而無法都緩存在內(nèi)存中,則考慮將數(shù)據(jù)以文本或 XML 文件緩存在 Web 服務器的硬盤上。可以同時將數(shù)據(jù)緩存在磁盤和內(nèi)存中,為您的站點建立最適宜的緩存策略。

注意當測量單個 ASP 頁的性能時,檢索磁盤上的數(shù)據(jù)可能不一定要比從數(shù)據(jù)庫檢索數(shù)據(jù)更快。但緩存會降低數(shù)據(jù)庫和網(wǎng)絡上的負載。在高負載的情況下,這樣做可大大改善總體吞吐量。當緩存開銷很大的查詢結果(如多表聯(lián)接或復合存儲過程)或大的結果集時,這是非常有效的。與往常一樣,要測試一下幾種方案的優(yōu)劣。

ASP 和 COM 提供一些建立基于磁盤的緩存方案的工具。ADO 記錄集 Save() 和 Open() 函數(shù)保存和裝載磁盤中的記錄集。可以使用這些方法重新編寫上面 Application 數(shù)據(jù)緩存技巧中的代碼示例,用文件的 Save() 代替寫到 Application 對象中的代碼。

有一些其它組件可以用于文件:

Scripting.FileSystemObject 可使您創(chuàng)建、讀和寫文件。
與 Internet Explorer 一起提供的 Microsoft? XML 解析器 (MSXML) 支持保存和裝載 XML 文檔。
LookupTable 對象(例如,用在 MSN 上)是從磁盤裝載簡單列表的最好選擇。
最后,應考慮將數(shù)據(jù)的表示緩存在磁盤上,而不是數(shù)據(jù)本身。預先轉換的 HTML 可以用 .htm 或 .asp 文件存儲在磁盤上,超級鏈接可以直接指向這些文件。可以使用商用工具,如 XBuilder,或 Microsoft? SQL Server? Internet 發(fā)布功能將產(chǎn)生 HTML 的過程自動化。或者,您可以將 HTML 代碼片斷放在 .asp 文件中。還可以使用 FileSystemObject 從磁盤讀取 HTML 文件,或使用 XML 盡早轉換。

技巧 4:避免將非敏捷的組件緩存在 Application 或 Session 對象中
盡管將數(shù)據(jù)緩存在 Application 或 Session 對象中是一個好的做法,但緩存 COM 對象卻有嚴重的陷阱。通常,人們傾向于將經(jīng)常使用的 COM 對象緩存到 Application 或 Session 對象中。很遺憾,許多 COM 對象(包括所有以 Visual Basic 6.0 或更低版本編寫的對象)當存儲在 Application 或 Session 對象時,會引起嚴重的瓶頸。

具體來講,當任何不敏捷的組件緩存在 Session 或 Application 對象時,將引起性能瓶頸。敏捷的組件是被標記為 ThreadingModel=Both 的組件,它聚集 Free-threaded marshaler (FTM);或被標記為 ThreadingModel=Neutral 的組件。(Neutral 模型是 Windows? 2000 和 COM+ 的新增模型。) 下列組件不是敏捷的:

自由線程的組件(除非它們聚集 FTM)。
單元線程組件。
單線程組件。
配置的組件(Microsoft Transaction Server (MTS)/COM+ 庫和服務器程序包/應用程序)不是敏捷的,除非它們是 Neutral 線程。單元線程組件和其它非敏捷的組件在頁作用域內(nèi)是最適合的(即,它們在單個 ASP 頁上創(chuàng)建和銷毀)。

在 IIS 4.0 中,被標記為 ThreadingModel=Both 的組件被認為是敏捷的。在 IIS 5.0 中,只有這一點還不夠。組件必須不僅被標記 Both,還必須聚集 FTM。有關敏捷性的文章講述了如何使以 Active Template Library 編寫的 C++ 組件聚集 FTM。要注意如果組件緩存界面指針,那么那些指針本身必須是敏捷的,或必須存儲在 COM 共用界面表 (GIT) 中。如果您不能重新編譯 Both 線程組件以聚集 FTM,那么您可以將組件標記為 ThreadingModel=Neutral。或者,如果您不想讓 IIS 執(zhí)行敏捷性檢查(因此,您可以允許非敏捷的組件存儲在 Application 或 Session 作用域中),您可以在配置數(shù)據(jù)庫中將 AspTrackThreadingModel 設置為 True。不建議更改 AspTrackThreadingModel。

如果您想將以 Server.CreateObject 創(chuàng)建的非敏捷的組件存儲在 Application 對象中,IIS 5.0 將出現(xiàn)一個錯誤。您可以在 Global.asa 中使用 <object runat=server scope=application ...> 避免這一錯誤,但不建議這樣做,因為這會導致匯集和串行化,關于這一點將在下面講述。

如果您緩存非敏捷的組件會出現(xiàn)什么毛病?緩存在 Session 對象中的非敏捷的組件將 Session 鎖定于 ASP 工作者線程。ASP 維護一個工作者線程池來處理請求。通常情況下,一個新請求總是由第一個可用的工作者線程來處理。如果 Session 被鎖定于一個線程,那么請求必須等到其相關的線程可用為止。這里有一個類比,也許會有所幫助:您去一家超級市場,挑選了一些商品,并在 #_3 收款臺付款。其后,每當您在那家超級市場為商品付款時,您總是必須在 #_3 收款臺付款,即使其它收款臺前排隊的人較少或者沒有人排隊,也是如此。

將非敏捷的組件存儲在 Application 作用域對性能的影響甚至更壞。ASP 必須創(chuàng)建一個特殊的線程運行存儲在 Application 作用域中的非敏捷組件。這會有兩個結果:所有調(diào)用都必須匯集到此線程,且所有調(diào)用都排成長隊。“匯集”的意思是參數(shù)必須存儲在內(nèi)存的共享區(qū)域;執(zhí)行一個開銷很大的到特殊線程的上下文切換;執(zhí)行組件的方法;將結果匯集到共享區(qū)域;執(zhí)行另一個開銷很大的上下文切換,將控制返回到原始的線程。“串行化”意思是指每次只運行一個方法。兩個不同的 ASP 工作者線程不能同時在共享組件上執(zhí)行多個方法。這樣就杜絕了并發(fā)性,特別是在多處理器計算機上。更糟的是,所有非敏捷的 Application 作用域的組件共享一個線程(主機 STA),因此串行化的影響甚至更顯著。

如之奈何?下面是一些一般的規(guī)則。如果您使用 Visual Basic (6.0) 或更早版本編寫對象,那么不要將它們緩存在 Application 或 Session 對象中。如果您不知道對象的線程模型,不要緩存它。不要緩存非敏捷的對象,而應在每個頁面創(chuàng)建和釋放它們。對象直接在 ASP 工作者線程上運行,因此沒有匯集或串行化。如果 COM 對象在 IIS 服務器上運行,且如果它們不花長時間初始化和刪除,性能尚可。注意單線程對象不應該這樣使用。小心 - VB 可創(chuàng)建單線程對象!如果您必須這樣使用單線程對象(如 Microsoft Excel 電子表格),別指望會有很高的吞吐量。

當 ADO 被標記為自由線程,ADO 記錄集可以安全地緩存。要將 ADO 標記為自由線程,使用 Makfre15.bat 文件,該文件通常位于目錄 \\Program Files\Common\System\ADO 中。

警告 如果您使用 Microsoft Access 作為數(shù)據(jù)庫,不應將 ADO 標記為自由線程的。ADO 記錄集也必須切斷連接。一般來說,如果您不能控制站點中的 ADO 配置(例如,您是一個獨立的軟件廠商 [ISV],向管理他們自己的配置客戶銷售 Web 應用程序),最好不要緩存記錄集。

詞典組件也是敏捷的對象。LookupTable 從數(shù)據(jù)文件中裝載其數(shù)據(jù),可用于組合框數(shù)據(jù)和配置信息。Duwamish Books 中的 PageCache 對象可提供詞典語法,Caprock Dictionary 也可提供。這些對象或其派生對象可以構成有效緩存策略的基礎。注意 Scripting.Dictionary 對象不是敏捷的,不應該存儲在 Application 或 Session 作用域中。

技巧 5:不要將數(shù)據(jù)庫連接緩存在 Application 或 Session 對象中
緩存 ADO 連接通常是很糟糕的策略。如果一個 Connection 對象存儲在 Application 對象中,并在所有的頁面中使用,那么所有頁面將爭搶這一連接。如果 Connection 對象存儲在 ASP Session 對象中,那么將為每個用戶創(chuàng)建數(shù)據(jù)庫連接。這就會使連接池的優(yōu)勢蕩然無存,并給 Web 服務器和數(shù)據(jù)庫帶來不必要的壓力。

可以不緩存數(shù)據(jù)庫連接,而是在使用 ADO 的每個 ASP 頁面中創(chuàng)建和刪除 ADO 對象。這是很有效的,因為 IIS 內(nèi)嵌了數(shù)據(jù)庫連接池。更準確地說,IIS 自動啟用 OLEDB 和 ODBC 連接池。這就能確保在每個頁面上創(chuàng)建和刪除連接將是有效的。

因為連接的記錄集存儲一個到數(shù)據(jù)庫連接的引用,所以您不應將連接的記錄集緩存在 Application 或 Session 對象中。但是,您可以安全地緩存斷開連接的記錄集,它們不保存到其數(shù)據(jù)連接的引用。要斷開記錄集連接,執(zhí)行下面的兩個步驟:

Set rs = Server.CreateObject(“ADODB.RecordSet”)
rs.CursorLocation = adUseClient ' step 1

' Populate the recordset with data
rs.Open strQuery, strProv

' Now disconnect the recordset from the data provider and data source
rs.ActiveConnection = Nothing ' step 2


有關連接池的更詳細信息,可以在 ADO 和 SQL Server 參考資料中找到。

技巧 6:合理地使用 Session 對象
既然我們已經(jīng)討論了緩存在 Application 和 Session 中的優(yōu)點,現(xiàn)在開始討論避免使用 Session 對象的問題。正如下面所討論的,當與忙的站點一起使用時,Session 有幾個缺點。“忙”的意思一般是指一秒鐘要求幾百頁面或成千上萬同時用戶的站點。這個技巧對于必須水平擴展的站點 - 即,那些利用多臺服務器以處理負載或實現(xiàn)容錯的站點 - 甚至更重要。對于較小的站點,諸如 Intranet 站點,要想實現(xiàn) Session 帶來的方,必然增大系統(tǒng)開銷。

簡言之,ASP 自動為每個訪問 Web 服務器的用戶創(chuàng)建一個 Session。每個 Session 大約需要 10 KB 的內(nèi)存開銷(最主要的是數(shù)據(jù)存儲在 Session 中),這就使所有的請求都減慢。在配置的超時時段(通常是 20 分鐘)結束以前,Session 一直保留有效。

Session 的最大的問題不是性能,而是可擴展性。Session 不能跨越幾臺 Web 服務器,一旦在一臺服務器上創(chuàng)建 Session,其數(shù)據(jù)就留在那兒。這就意味著如果您在一個 Web 服務器群使用 Session,您必須設計一個策略,將每個用戶請求始終發(fā)到用戶 Session 所在的那臺服務器上。這被稱為將用戶“粘”在 Web 服務器上。術語“粘性會話”就是從這里派生而來的。如果 Web 服務器崩潰,被“粘住的”用戶將丟失他們的會話狀態(tài),因為會話不是粘到磁盤上。

實現(xiàn)粘性會話的策略包括硬件和軟件解決方案。諸如 Windows 2000 Advanced Server 中的網(wǎng)絡負載平衡和 Cisco 的 Local Director 之類的解決方案都可以實現(xiàn)粘性會話,代價是要損失一定程度的可擴展性。這些解決方案是不完善的。不建議此時部署您自己的軟件解決方案(我們過去常常使用 ISAPI 篩選器和 URL 轉換等等)。

Application 對象也不跨越多臺服務器,如果您必須跨越 Web 服務器群共享和更新 Application 數(shù)據(jù),您必須使用后端數(shù)據(jù)庫。但是,只讀 Application 數(shù)據(jù)在 Web 服務器群中仍是有用的。

如果只是因為要增加運行時間(處理故障轉移和服務器維護),大多數(shù)關鍵任務站點至少需部署兩臺 Web 服務器。因此,在設計關鍵任務應用程序時,必須實現(xiàn)“粘性會話”,或干脆避免使用 Session,以及任何其它將用戶狀態(tài)存儲在單個 Web 服務器上的狀態(tài)管理技術。

如果您不使用 Session,一定要將它們關閉。您可以通過 Internet Services Manager,為應用程序執(zhí)行此操作(參見 ISM 文檔)。如果您決定使用 Session,您可以采用一些方法減輕它們對性能的影響。

您可以將不需要 Session 的內(nèi)容(如幫助屏幕,訪問者區(qū)域等等)移到另一個關閉了 Session 的 ASP 應用程序中。您可以逐頁提示 ASP,您不再需要該頁面上的 Session 對象,使用以下放在 ASP 頁面最上面的指令:

<% @EnableSessionState=False %>


使用這一指令有一個很好的理由是,這些 Session 在框架集方面存在一個有意思的問題。ASP 保證任何時候 Session 只有一個請求執(zhí)行。這樣就確保如果瀏覽器為一個用戶請求多個頁面,一次只有一個 ASP 請求接觸 Session,這樣就避免了當訪問 Session 對象時發(fā)生的多線程問題。很遺憾,一個框架集中的所有頁面將以串行方式顯示,一個接一個,而不是同時顯示。用戶可能必須等候很長時間,才能看到所有的框架。該故事的寓意:如果某些框架集頁面不依靠 Session,一定要使用 @EnableSessionState=False 指令告訴 ASP。

有許多管理 Session 狀態(tài)的方法,可替代 Session 對象的使用。對于少量的狀態(tài)(少于 4 KB),我們通常建議使用 Cookies、QueryString 變量和隱式變量。對于更大數(shù)據(jù)量,如購物小車,后端數(shù)據(jù)庫是最適合的選擇。有關 Web 服務器群中狀態(tài)管理技術的文章很多。有關詳細信息,請參見 Session 狀態(tài)參考資料。

技巧 7: 將代碼封裝在 COM 對象中
如果您有許多 VBScript 或 JScript,您可以經(jīng)常將代碼移到編譯的 COM 對象中,從而可改善性能。編譯的代碼通常比解釋的代碼運行得更快。編譯的 COM 對象可以通過“早綁定”訪問其它 COM 對象,與腳本使用的“晚綁定”相比,“早綁定”是調(diào)用 COM 對象的更有效方法。

將代碼封裝在 COM 對象中還有一些優(yōu)點(除性能之外):

COM 對象有利于將表示邏輯與業(yè)務邏輯分開。
COM 對象可以保證代碼重復使用。
許多開發(fā)人員發(fā)現(xiàn)以 VB、C++ 或 Visual J++ 編寫的代碼比 ASP 更容易調(diào)試。
COM 對象也有缺點,包括初始開發(fā)時間和需要不同的程序設計技巧。注意封裝少量的 ASP 可能引起性能下降,而不會得到性能改進。這種情況通常在少量的 ASP 代碼被封裝進 COM 對象時發(fā)生。在這種情況下,創(chuàng)建和調(diào)用 COM 對象的系統(tǒng)開銷超過了編譯的代碼的優(yōu)點。應反復地試驗,以確定什么樣的 ASP 腳本和 COM 對象代碼的組合產(chǎn)生最好的性能。注意,與 Microsoft Windows NT? 4.0/IIS 4.0 相比,Windows 2000/IIS 5.0 中在腳本和 ADO 性能方面有了很大的改進。因此,隨著 IIS 5.0 的推出,編譯代碼比 ASP 代碼的性能優(yōu)勢有所降低。

有關在 ASP 中使用 COM 的優(yōu)點和缺點的詳細討論,參見 ASP Component Guidelines and Programming Distributed Applications with and Microsoft Visual Basic 6.0。如果您部署 COM 組件,以負荷對它們進行測試特別重要。事實上,理所當然應對所有的 ASP 應用程序進行負荷測試。

技巧 8:遲一點獲得資源,早一點釋放資源
這里是一個小技巧供您參考。一般來說,最好遲一點獲得資源,早一點釋放資源。這適用于 COM 對象以及文件句柄和其它資源。

這種優(yōu)化方法主要用于 ADO 連接和記錄集。當您使用完記錄集,比方說在顯示一個表及其數(shù)據(jù)之后,應立即釋放它,而不是等到頁面結束時再釋放。將 VBScript 變量設置為 Nothing 是最好的做法。不要讓記錄集超出作用域之外。而且,要釋放任何相關的 Command 或 Connection 對象(在將記錄集或連接設置為 = Nothing 之前,不要忘記調(diào)用 Close())。這會縮短數(shù)據(jù)庫必須為您準備資源的時間,并盡快釋放數(shù)據(jù)庫到連接池的連接。

技巧 9:進程外執(zhí)行過程以性能換取可靠性
ASP 和 MTS/COM+ 兩者都有配置選項,可使您兼顧可靠性和性能。當建立和部署應用程序時,應知道如何兼顧兩者的性能。

ASP 選項
可以配置 ASP 應用程序,以便以三種方法之一運行。在 IIS 5.0 中,引入了“隔離級”這一術語以說明這些選項。這三個隔離級分別是低級、中級和高級:

低級隔離。這在 IIS 的所有版本中都得到支持,且是最快的。它在 Inetinfo.exe 中運行 ASP,Inetinfo.exe 是主要 IIS 進程。如果 ASP 應用程序崩潰,IIS 也會崩潰。(要在 IIS 4.0 下重新啟動 IIS,Web 站點管理員應使用諸如 InetMon 之類的工具監(jiān)視站點,如果服務器發(fā)生故障,應啟用批處理文件以重新啟動服務器。IIS 5.0 引入了可靠的重新啟動,該方法可使發(fā)生故障的服務器自動重新啟動。)
中級隔離。IIS 5.0 引入了這個新的級別,它被稱為進程外級別,因為 ASP 在 IIS 進程之外運行。在中級隔離中,被配置作為中級隔離運行的所有 ASP 應用程序都共享一個進程空間。這就減少了在一臺服務器運行多個進程外 ASP 應用程序所需要的進程數(shù)量。中級隔離是 IIS 5.0 中的默認隔離級別。
高級隔離。在 IIS 4.0 和 IIS 5.0 中支持這一級別,高級隔離也是進程外的。如果 ASP 崩潰,Web 服務器并不會崩潰。下次 ASP 請求時,ASP 應用程序就會自動重新啟動。在高級隔離中,配置作為高級隔離運行的每個 ASP 應用程序都在其自有進程空間中運行。這樣做可保護 ASP 應用程序彼此之間不相互干擾。其缺點是它要求每個 ASP 應用程序都要有一個單獨的進程。當在一臺服務器上必須運行許多應用程序時,系統(tǒng)開銷就會大大增加。
哪個選項最好的呢?在 IIS 4.0 中,進程外運行將顯著降低性能。在 IIS 5.0 中,做了許多改進,將進程外運行 ASP 應用程序所產(chǎn)生的開銷降到最低限度。事實上,在絕大多數(shù)測試中,IIS 5.0 中的 ASP 進程外應用程序比 IIS 4.0 中的進程內(nèi)應用程序運行得更快。不管怎樣,在兩個平臺上,進程內(nèi)(低隔離級)性能最佳。但是,如果訪問率相對較低或最大吞吐量較低,低隔離級的優(yōu)勢不太明顯。因此,在您每一 Web 服務器每秒鐘需要數(shù)百或成千上萬頁面時,才會覺得有必要設置低隔離級。與往常一樣,應對多種配置進行測試,確定您要采取哪一種折衷方案。

注意 當您運行 ASP 進程外應用程序時(中級或高級隔離),它們在 NT4 中的 MTS 和在 Windows 2000 中的 COM+ 中運行。即,在 NT4 中它們在 Mtx.exe 中運行;而在 Windows 2000 中,它們在 DllHost.exe 中運行。您可以在任務管理器中看到這些進程在運行。您還可以看到 IIS 如何為進程外 ASP 應用程序配置 MTS 程序包或 COM+ 應用程序。

COM 選項
COM 組件也有三種配置選項,雖然與 ASP 選項不完全類似。COM 組件可以是“未配置的”、配置為庫應用程序或配置為服務器應用程序。“未配置的”意思是指組件沒有注冊 COM+。組件將在調(diào)用程序的進程空間運行,那就是說,它們是“進程內(nèi)的”。庫應用程序也是進程內(nèi)的,但使用 COM+ 的服務,包括安全、事務和上下文支持。服務器應用程序被配置為在它們自有的進程空間內(nèi)運行。

您可以看到未配置的組件比庫應用程序略有一些優(yōu)勢。庫應用程序比服務器應用程序的性能優(yōu)點更大。這是因為庫應用程序與 ASP 在同一進程內(nèi)運行,而服務器應用程序在它們的自有進程內(nèi)運行。進程間的調(diào)用比進程內(nèi)調(diào)用開銷更大。而且,當在進程之間傳遞諸如記錄集之類的數(shù)據(jù)時,必須在兩個進程之間復制所有的數(shù)據(jù)。

陷阱!當使用 COM 服務器應用程序時,如果您在 ASP 和 COM 之間傳遞對象,要確保對象執(zhí)行“按值匯集”或 MBV。執(zhí)行 MBV 的對象將它們自己從一個進程復制到另一個進程。這比下面一種方法好,采用這種方法時,對象仍在創(chuàng)建者的進程中,另外一個進程反復地調(diào)用創(chuàng)建進程以使用該對象。切斷連接的 ADO 記錄集將“按值匯集”,連接的記錄集則不然。Scripting.Dictionary 不執(zhí)行 MBV,且不在進程之間傳遞。最后,VB 程序員請注意:MBV 不通過傳遞參數(shù) ByVal 獲得。MBV 由原始的組件作者執(zhí)行。

怎么辦?
如果讓我們建議一個兼顧性能與可靠性的合理配置,它們應是如下的配置:

在 IIS 4.0 中,使用 ASP 低隔離級別,使用 MTS 服務器程序包。
在 IIS 5.0 上,使用 ASP 的中隔離級,并使用 COM+ 庫應用程序。
這些是非常一般的原則,主機服務公司一般情況下以中或高隔離級運行 ASP,而單用途的 Web 服務器可以以低隔離級運行。衡量各種利弊,并自己決定哪個配置更能符合您的需要。

技巧 10:使用顯式選項
在 .asp 文件中應使用 Option Explicit。此指令放在 .asp 文件的最上面,它強制開發(fā)人員聲明要使用到的所有變量。許多程序員認為這種方法對于調(diào)試應用程序很有幫助,因為這種方法避免了鍵錯變量名和誤建新變量的可能性(例如,將 MyXMLString=) 錯寫成 MyXLMString=...。

更重要的一點也許是,聲明的變量比未聲明的變量速度更快。由此,腳本在運行時每次用到未聲明的變量時,按名稱引用它。另一方面,聲明的變量是有順序的,要么以編譯時間,要么以運行時間。以后,聲明的變量都按此順序引用。因為 Option Explicit 強制變量聲明,它能確保聲明所有變量,因此訪問的速度也很快。

技巧 11:在子例程和函數(shù)中使用局部變量
局部變量是那些在子例程和函數(shù)內(nèi)聲明的變量。在函數(shù)或子例程內(nèi),局部變量訪問比全局變量訪問更快。局部變量的使用也會使代碼更清晰,因此應盡量使用局部變量。

技巧 12:將經(jīng)常使用的數(shù)據(jù)復制到腳本變量中
當訪問 ASP 中的 COM 對象時,應將經(jīng)常使用的對象數(shù)據(jù)復制到腳本變量中。這樣做可減少 COM 方法調(diào)用,因為 COM 方法調(diào)用與訪問腳本變量相比,開銷相對較大。當訪問 Collection 和 Dictionary 對象時,這種技術也會減少開銷很大的查找。

一般來說,如果您打算不止一次訪問對象數(shù)據(jù),那么就應將數(shù)據(jù)放到腳本變量中。這種優(yōu)化的主要目標是 Request 變量(Form 和 QueryString 變量)。例如,您的站點可傳遞一個名為 UserID 的 QueryString 變量。假設此 UserID 在特定頁面上被引用 12 次。可以無須調(diào)用 Request(“UserID”) 12 次,而是在 ASP 頁面最上面將 UserID 指派到一個變量。然后在該頁面自始至終使用該變量。這樣就省去了 11 次 COM 方法調(diào)用。

實際上,訪問 COM 屬性或方法的開銷并沒有那么大。下面舉一個例子,說明某相當常見的代碼(從語法上講):

Foo.bar.blah.baz = Foo.bar.blah.qaz(1)
If Foo.bar.blah.zaq = Foo.bar.blah.abc Then ' ...


當此代碼運行時,下面是發(fā)生的情況:

變量 Foo 被解析為全局對象。
變量 bar 被解析為 Foo 的成員。這實際就是一次 COM 方法調(diào)用。
變量 blah 被解析為 Foo.bar 的成員。這又是一次 COM 方法調(diào)用。
變量 qaz 被解析為 foo.bar.blah 的成員。沒有錯,這還是一次 COM 方法調(diào)用。
調(diào)用 Foo.bar.blah.quaz(1)。再一次 COM 方法調(diào)用。懂了嗎?
再次執(zhí)行步驟 1 至步驟 3 以解析 baz。系統(tǒng)并不知道調(diào)用 qaz 是否改變對象模型,因此必須再次執(zhí)行步驟 1 至 3 以解析 baz。
將 baz 解析為 Foo.bar.blah 的成員。賦予屬性。
再次執(zhí)行步驟 1 至步驟 3 以解析 zaq。
再次執(zhí)行步驟 1 至步驟 3 以解析 abc。
正如您可看到的,效率相當差(且慢)。以 VBScript 寫此代碼的快速方法是:

Set myobj = Foo.bar.blah ' do the resolution of blah ONCE
Myobj.baz = myobj.qaz(1)
If Myobj.zaq = Myobj.abc Then '...


如果您使用 VBScript 5.0 或更高版本,您可以使用 With 語句寫此代碼:

With Foo.bar.blah
.baz = .qaz(1)
If .zaq = .abc Then '...
...
End With


注意此技巧也適用于 VB 程序設計。

技巧 13:避免重新確定數(shù)組的維數(shù)
應盡量避免 Redim 數(shù)組。就性能而言,如果計算機的物理內(nèi)存大小有限,最好將數(shù)組的初始維數(shù)設置為其最不利的情況 - 或將維數(shù)設置為其最佳的情況,然后再按需要重新確定維數(shù)。這并非意味著,如果知道您不需要內(nèi)存時,就隨便分配幾兆字節(jié)的內(nèi)存。

下面的代碼給您顯示使用 Dim 和 Redim 不當?shù)那樾巍?

<%
Dim MyArray()
Redim MyArray(2)
MyArray(0) = “hello”
MyArray(1) = “good-bye”
MyArray(2) = “farewell”
...
' some other code where you end up needing more space happens, then ...
Redim Preserve MyArray(5)
MyArray(3) = “more stuff”
MyArray(4) = “even more stuff”
MyArray(5) = “yet more stuff”
%>


最好一開始就將數(shù)組的初始大小 Dim 正確(在本例中,是 5)比 Redim 數(shù)組使其更大好得多。您可能浪費一些內(nèi)存(如果您沒有使用所有的元素),但獲得的好處是速度變得更快。

技巧 14:使用響應緩沖
您可以通過啟用“響應緩沖”,將要輸出的一整頁緩沖起來。這樣就將寫到瀏覽器的量減到最少,從而改善總體性能。每個寫操作都會產(chǎn)生很大的系統(tǒng)開銷(在 IIS 中以及在通過網(wǎng)絡發(fā)送的數(shù)據(jù)量方面),因此寫操作越少越好。由于其啟動慢且使用 Nagling 算法(用來減輕網(wǎng)絡塞車情況),TCP/IP 在發(fā)送一些大的數(shù)據(jù)塊時比必須發(fā)送許多小的數(shù)據(jù)塊時的效率高得多。

有兩個方法啟用響應緩沖。第一種,您可以使用 Internet Services Manager 為整個應用程序啟用響應緩沖。我們建議采用這種方法,在 IIS 4.0 和 IIS 5.0 中默認為新的 ASP 應用程序啟用響應緩沖。第二種,可以在每個 ASP 頁面的接近頂端的地方加入下面的代碼行,從而啟用響應緩沖:

<% Response.Buffer = True %>


此代碼行必須在任何響應數(shù)據(jù)被寫到瀏覽器之前執(zhí)行(即,在任何 HTML 出現(xiàn)在 ASP 腳本之前以及在使用 Response.Cookies 集合設置任何 Cookies 之前)。一般來說,最好為整個應用程序啟用響應緩沖。這樣,您就不必在每個頁面最上面寫入上述的代碼行。

Response.Flush
關于響應緩沖有一個常見的抱怨,就是用戶感覺到 ASP 頁面的響應速度很慢(即使整個響應時間得到改進),因為他們必須等到整個頁面生成,然后他們才能看到東西。對于運行時間長的頁面,您可以設置 Response.Buffer = False,禁用響應緩沖。但是,一個更好的策略是利用 Response.Flush 方法。這種方法將 ASP 轉換的所有 HTML 送到瀏覽器。例如,在轉換 1,000 行的表的前 100 行之后,ASP 可以調(diào)用 Response.Flush,強制將轉換的結果送到瀏覽器,這樣可使用戶在其余的行準備好之前看到頭 100 行。這種技術可以將響應緩沖與瀏覽器逐漸顯示數(shù)據(jù)完美地結合在一起。

(注意在上面的 1,000 行表的舉例中,許多瀏覽器在它們看到關閉 </table> 標記之前不會開始顯示表。檢查您的目標瀏覽器是否支持。為避免這種情況,將表分成多個具有較少行的表,并在每個表之后調(diào)用 Response.Flush。較新版本的 Internet Explorer 在表完全下載之前就開始顯示表,如果您指定表列寬,顯示速度就會特別快,這樣做可避免強制 Internet Explorer 通過測量每個單元格的內(nèi)容寬度來計算列寬。)

另一個關于響應緩沖的常見的抱怨是,當產(chǎn)生非常大的頁面時,將占用許多服務器內(nèi)存。撇開產(chǎn)生大頁面的方法不談,這種問題也可通過巧妙使用 Response.Flush 來加以解決。

技巧 15:批處理內(nèi)嵌腳本和 Response.Write 語句
VBScript 語法 <% = expression %> 將“expression”的值寫到 ASP 輸出流中。如果響應緩沖未啟用,那么執(zhí)行其中的每一條語句,都會以許多小的數(shù)據(jù)包通過網(wǎng)絡將數(shù)據(jù)寫到瀏覽器中。這樣速度很慢。而且穿插執(zhí)行少量的腳本和 HTML,將引起腳本引擎和 HTML 之間的切換,從而降低性能。因此,使用下面的技巧:使用 Response.Write 調(diào)用代替捆綁緊密的內(nèi)嵌表達式。例如,在下面的示例中,在每一行的每一字段對響應流有一次寫操作,每一行在 VBScript 和 HTML 之間有許多切換:

<table>
<% For Each fld in rs.Fields %>
<th><% = fld.Name %></th>
<%
Next
While Not rs.EOF
%>
<tr>
<% For Each fld in rs.Fields %>
<td><% = fld.Value %></td>
<% Next
</tr>
<% rs.MoveNext
Wend %>
</table>


下面的代碼更有效,每一行對響應流有一次寫操作。所有的代碼都包含在一個 VBScript 塊內(nèi):

<table>
<%
For each fld in rs.Fields
Response.Write (“<th>“ & fld.Name & “</th>“ & vbCrLf)
Next
While Not rs.EOF
Response.Write (“<tr>“)
For Each fld in rs.Fields %>
Response.Write(“<td>“ & fld.Value & “</td>“ & vbCrLf)
Next
Response.Write “</tr>“
Wend
%>
</table>


當禁用響應緩沖時,這一技巧的效果特別大。最好啟用響應緩沖,然后看批處理 Response.Write 是否有助于提高性能。

(在這一特定舉例中,建立表主體的嵌套循環(huán) (While Not rs.EOF...) 可以用仔細構建的 GetString 調(diào)用來替代。)

技巧 16:如果頁面需要很長時間才能完成,那么執(zhí)行前使用 Response.IsClientConnected
如果用戶性急,他們可能會在您開始執(zhí)行他們的請求之前,就會放棄 ASP 頁面。如果他們單擊刷新或移到服務器上的另一個頁面,在 ASP 請求隊列的末尾就有一個新的請求等候,在隊列的中間有一個斷開連接的請求。當服務器的負載很高時(因此請求隊列就會很長,響應時間也會相應地變長),就會經(jīng)常發(fā)生這種情況,這樣只能使情況變得更糟。如果用戶不再連接,執(zhí)行 ASP 頁面(特別是慢的、大的 ASP 頁面)已沒有任何意義。您可以使用 Response.IsClientConnected 屬性檢查這一情況。如果它返回 False,則應調(diào)用 Response.End 并放棄頁的其余部分。事實上,IIS 5.0 已將這一做法編為程序 - 每當 ASP 即將執(zhí)行新請求時,它就會檢查請求在隊列中已等候了多長時間。如果已經(jīng)在那里等候了多于 3 秒鐘,ASP 將檢查客戶機是否仍處于連接狀態(tài),如果沒有連接,就立即終止請求。您可以在配置數(shù)據(jù)庫中使用 AspQueueConnectionTestTime 設置將超時時間由 3 秒調(diào)整為其它值。

如果頁面要花很長時間才能執(zhí)行完,也可以不時地檢查 Response.IsClientConnected。當啟用了響應緩沖時,最好不時地執(zhí)行 Response.Flush,以用戶知道,正在發(fā)生什么事。

注意 在 IIS 4.0 上,除非先執(zhí)行了 Response.Write,否則 Response.IsClientConnected 就不能正常工作。如果啟用了緩沖,您也必須執(zhí)行 Response.Flush。在 IIS 5.0 上,卻沒有必要這樣做,- Response.IsClientConnected 工作正常。在任何情況下,Response.IsClientConnected 都會有一些開銷,因此只有在一個操作至少要花(比方說) 500 毫秒(如果您想維持每秒鐘數(shù)十頁的吞吐量,這是一個很長的時間)才使用它。經(jīng)驗表明,不要每次重復執(zhí)行緊密循環(huán)時都調(diào)用它,如顯示表的許多行時 - 每隔二十或五十行調(diào)用一次可能比較合適。

技巧 17:使用 <OBJECT> 標記例示對象
如果要引用不在所有代碼路徑(特別是服務器或應用程序作用域的對象)中使用的對象,使用 Global.asa 中 <object runat=server id=objname> 標記聲明它們,而不使用 Server.CreateObject 方法。Server.CreateObject 能立即創(chuàng)建對象。如果以后不再使用該對象,您就浪費了資源。<object id=objname> 標記聲明 objname,但在其方法或屬性第一次使用以前,不會創(chuàng)建 objname。

這又是一個惰性計算的例子。

技巧 18:對于 ADO 和其它組件使用 TypeLib 聲明
當使用 ADO 時,開發(fā)人員經(jīng)常加入 adovbs.txt,以訪問 ADO 的各種常量。在要使用常量的每個頁面中必須包含此文件。此常量文件相當大,給每個 ASP 頁面的編譯時間和腳本大小增加了許多系統(tǒng)開銷。

IIS 5.0 引入了綁定到組件類型庫的功能。這可使您引用類型庫一次,并將其用在每個 ASP 頁面上。每個頁面不會產(chǎn)生編譯常量文件的開銷,且組件開發(fā)人員不必建立 VBScript#_include 文件以在 ASP 上使用。

要訪問 ADO TypeLib,將下面一條語句放在 Global.asa 中。

<!-- METADATA NAME="Microsoft ActiveX Data Objects 2.5 Library"
TYPE="TypeLib" UUID="{00000205-0000-0010-8000-00AA006D2EA4}" -->




<!-- METADATA TYPE="TypeLib"
FILE="C:\Program Files\Common Files\system\ado\msado15.dll" -->


技巧 19: 利用瀏覽器的驗證功能
現(xiàn)今的瀏覽器對一些高級功能如 XML、DHTML、Java 小程序和遠程數(shù)據(jù)服務提供支持。盡可能使用這些功能。所有這些技術都可以執(zhí)行客戶機端驗證和數(shù)據(jù)緩存,免去了到 Web 服務器的往返。如果您在運行一個智能瀏覽器,那么瀏覽器就能為您進行一些驗證(例如,在執(zhí)行 POST 之前,檢查信用卡校驗和是否有效)。盡可能使用這一功能。通過減少客戶-服務器之間的往返,可降低 Web 服務器上的負載,并能減少網(wǎng)絡通信量(雖然發(fā)送到瀏覽器的第一個頁面可能比較大)以及服務器訪問的任何后端資源。此外,用戶不必像住常一樣讀取新頁,從而用戶的感覺會好一些。這樣做并不意味著您可以不進行服務器端驗證 - 您還應始終進行服務器端驗證。這可以防止由于某種原因(如黑客,或瀏覽器不運行客戶機端驗證例程)客戶機產(chǎn)生錯誤的數(shù)據(jù)。

人們已經(jīng)進行了大量的工作,開發(fā)“獨立于瀏覽器”的 HTML。正是由于這種憂慮,開發(fā)人員不愿再使用流行的瀏覽器功能,但這些功能本可以改善性能。對于一些真正的高性能站點,必須關心瀏覽器“訪問”問題,一個好的策略是優(yōu)化頁面,使其適應流行的瀏覽器。使用瀏覽器功能組件,可以在 ASP 中方便地檢測到瀏覽器功能。Microsoft FrontPage 等工具有助于設計適合于瀏覽器和指定 HTML 版本的代碼。參見 When is Better Worse?Weighing the Technology Trade-Offs,以了解更進一步的討論。

技巧 20:避免在循環(huán)語句中使用字符串串聯(lián)
許多人在循環(huán)語句中建立一個字符串,如下所示:

s = "<table>" & vbCrLf
For Each fld in rs.Fields
s = s & " <th>" & fld.Name & "</th> "
Next

While Not rs.EOF
s = s & vbCrLf & " <tr>"
For Each fld in rs.Fields
s = s & " <td>" & fld.Value & "</td> "
Next
s = s & " </tr>"
rs.MoveNext
Wend

s = s & vbCrLf & "</table>" & vbCrLf
Response.Write s


采用這種方法會出現(xiàn)一些問題。第一個問題是反復串聯(lián)字符串需要花兩次方的時間,更通俗地說,運行這種循環(huán)語句所花的時間與記錄數(shù)乘以字段數(shù)所得值的平方成正比。舉一個更簡單的例子,就可以更清楚地說明這一問題。

s = ""
For i = Asc("A") to Asc("Z")
s = s & Chr(i)
Next


在第一次迭代中,您獲得了一個字符的字符串 "A"。在第二次迭代中,VBScript 必須重新分配字符串并將兩個字符 ("AB") 復制到 s 中。在第三次迭代中,它還必須再次重新分配 s 并將三個字符復制到 s 中。在 N 次(第 26 次)迭代中,它必須重新分配并將 N 個字符復制到 s 中。總共就是 1+2+3+...+N,即 N*(N+1)/2 次復制。

在上面的記錄集舉例中,如果有 100 個記錄和 5 個字段,內(nèi)循環(huán)將執(zhí)行 100*5 = 500 次,所有的復制和重新分配所花的時間與 500*500 = 250,000 成正比。這對于中等大小的記錄集來說復制操作太多了。

在本例中,代碼可以用 Response.Write() 或內(nèi)嵌腳本 (<% = fld.Value %>) 替代字符串串聯(lián)來改進。如果啟用了響應緩沖的話(應該的),這樣做就會更快,因為 Response.Write 只將數(shù)據(jù)附加到響應緩沖的末尾。并不涉及重新分配,因此效率很高。

在將 ADO 記錄集轉換為 HTML 表的特定情況下,應考慮使用 GetRows 或 GetString。

如果在 JScript 中串聯(lián)字符串,特別建議使用 += 運算符,即,使用 s += "某字符串",而不使用 s = s + "某字符串"。

技巧 21:啟用瀏覽器和代理緩存
在默認情況下,ASP 禁止在瀏覽器和代理中進行緩存。這是有意義的,因為就實質(zhì)而言 ASP 頁面是動態(tài)的,上面有隨時間不斷變化的潛在信息。如果頁面不要求在每個視圖上進行刷新,您應啟用瀏覽器和代理緩存。這可使瀏覽器和代理在一定的時間內(nèi)使用頁面的“緩存”副本,您可以控制時間的長短。緩存可以大大減輕服務器上的負載,縮短用戶的等待時間。

哪一種動態(tài)頁面可作為要緩存的頁面呢?下面舉一些例子:

天氣預報頁面,在此頁面上,每隔 5 分鐘更新一次天氣預報。
列出新聞條目或新聞稿的主頁,它一天更新兩次。
共同基金業(yè)績列表,在此列表中,基本統(tǒng)計信息每隔幾小時更新一次。
注意,在使用瀏覽器或代理緩存的情況下,Web 服務器上記錄的訪問次數(shù)減少了。如果您想準確地測量所有頁面視圖或張?zhí)?#xff0c;您就不希望使用瀏覽器和代理緩存。

瀏覽器緩存由 HTTP“過期”報頭控制,該報頭由 Web 服務器發(fā)送給瀏覽器。ASP 提供兩個簡單的機制發(fā)送此報頭。要設置頁面使其過多少分鐘后到期,則應設置 Response.Expires 屬性。下面的例子告訴瀏覽器內(nèi)容在 10 分鐘內(nèi)過期:

<% Response.Expires = 10 %>


若將 Response.Expires 設置為負數(shù)或 0,則禁用緩存。一定要使用大的負數(shù),如 -1000(略多于一天),以避免服務器和瀏覽器時鐘之間的不匹配。第二個屬性 Response.ExpiresAbsolute 將使您設置內(nèi)容過期的具體時間:

<% Response.ExpiresAbsolute = #May 31,2001 13:30:15# %>


您可以不使用 Response 對象設置過期時間,而將 <META> 標記寫進 HTML,通常寫在 HTML 文件的 <HEAD> 部分。一些瀏覽器將遵照此指令,而代理則不然。

<META HTTP-EQUIV="Expires" VALUE="May 31,2001 13:30:15">


最后,您可以使用 Response.CacheControl 屬性,指示其內(nèi)容是否可以讓 HTTP 代理緩存。若將此屬性設置為“Public”,代理就可以緩存此內(nèi)容。

<% Response.CacheControl = "Public" %>


在默認情況下,此屬性被設置為“Private”。注意,對于顯示某用戶特定數(shù)據(jù)的頁面,不應啟用代理緩存,因為代理可能給用戶提供屬于其他用戶的頁面。

技巧 22:盡可能使用 Server.Transfer 代替 Response.Redirect
Response.Redirect 讓瀏覽器請求另一個頁面。此函數(shù)常用來將用戶重定向到一個登錄或錯誤頁面。因為重定向強制請求新頁面,結果是瀏覽器必須到 Web 服務器往返兩次,且 Web 服務器必須多處理一個請求。IIS 5.0 引入了一個新的函數(shù) Server.Transfer,它將執(zhí)行轉移到同一臺服務器上的另一個 ASP 頁。這樣就避免多余的瀏覽器-Web-服務器的往返,從而改善了總體系統(tǒng)性能以及縮短了用戶的響應時間。檢查“重定向”中的“新的方向”,上面應該是 Server.Transfer 和 Server.Execute。

另請參見 Leveraging ASP in IIS 5.0,了解 IIS 5.0 和 ASP 3.0 新功能的完整列表。

技巧 23:在目錄 URL 中使用后斜杠
一個相關的技巧是確保在指向目錄的 URL 中使用后斜杠 (/)。如果您省略了后斜杠,瀏覽器就會向服務器發(fā)出請求,只是為了告訴服務器,它在請求目錄。瀏覽器就會發(fā)出第二個請求,將斜杠附加到 URL 后面,只有此后,服務器才能以該目錄的默認文檔或目錄列表(如果沒有默認文檔且啟用了目錄瀏覽的話)響應。附加斜杠可省去第一個、無用的住返。為便于用戶閱讀,可以省略顯示名稱中的后斜杠。

例如,寫:

<a href="http://msdn.microsoft.com/workshop/"; title="MSDN Web
Workshop">http://msdn.microsoft.com/workshop<;/a>


這也適用于指向 Web 站點上主頁的 URL:使用下面的:<a href="http://msdn.microsoft.com/";>,而不使用 <a href="http://msdn.microsoft.com";>。

技巧 24:避免使用服務器變量
訪問服務器變量會使 Web 站點向服務器發(fā)出一個特殊請求,并收集所有服務器變量,而不只是您請求的那個變量。這種情況類似于,在發(fā)霉的閣樓上,在一個文件夾中查找某個文件。當您想要找那個文件時,您必須去閣樓上,先找到文件夾,然后才能找到這份文件。當您請求服務器變量時,發(fā)生的情況是一樣的 - 您第一次請求服務器變量時,就會使性能受到影響。后面的對其它服務器變量的請求,則不會對性能產(chǎn)生影響。

決不要訪問非限定的 Request 對象(例如,Request("Data"))。對于不在 Request.Cookies、Request.Form、Request.QueryString 或 Request.ClientCertificate 中的項目,則隱式調(diào)用 Request.ServerVariables。Request.ServerVariables 集合比其它集合慢得多。

技巧 25:升級到最新和最出色的
系統(tǒng)組件是恒定的,我們建議您將它們升級到最新和最好的配置。最好升級到 Windows 2000(因此,也應升級到 IIS 5.0、ADO 2.5、MSXML 2.5、Internet Explorer 5.0、VBScript 5.1 和 JScript 5.1)。在多處理器計算機上,實施 IIS 5.0 和 ADO 2.5 可顯著改善性能。在 Windows 2000 下,ASP 可以很好地擴展到四個處理器或更多,而在 IIS 4.0 下,ASP 的擴展性不能超出兩個處理器。在應用程序中使用的腳本代碼和 ADO 越多,升級到 Windows 2000 之后,性能的改善就會越多。

如果目前還不能升級到 Windows 2000,您可以升級到 SQL Server、ADO、VBScript 和 JScript、MSXML、Internet Explorer 和 NT 4 Service Packs 的最新版本。它們均可提高性能和可靠性。

技巧 26:優(yōu)化 Web 服務器
有多種 IIS 優(yōu)化參數(shù)可以改善站點性能。例如,對于 IIS 4.0,我們常常發(fā)現(xiàn),增加 ASP ProcessorThreadMax 參數(shù)(參見 IIS 文檔)可以顯著改善性能,特別是在傾向于等待后端資源(如數(shù)據(jù)庫)或其它中間產(chǎn)品(如屏幕刷)的站點上。在 IIS 5.0 中,您可能發(fā)現(xiàn)啟用 ASP Thread Gating 比查找一個 AspProcessorThreadMax 最佳設置效率更高,這一點現(xiàn)在已為大家所熟知。

有關較好的參考資料,參見下面的優(yōu)化 IIS。

最佳的配置設置取決于(其中一些因素)應用程序代碼、運行所在的系統(tǒng)硬件和客戶機工作負荷。找到最佳設置的唯一方法是進行性能測試,這是我們在下一個技巧中所要討論的。

技巧 27:進行性能測試
正如我們在前面已經(jīng)講過,性能是一個特征。如果您想要改善站點的性能,那么就制定一個性能目標,然后逐步改進,直到達到目標為止。不要,就不進行任何性能測試。通常,在項目結束時,再作必需的結構調(diào)整已經(jīng)為時太晚,您的客戶將為此感到失望。將性能測試作為您日常測試的一部分來進行。可以對單個組件分別進行性能測試,如針對 ASP 頁或 COM 對象,或將站點作為一個整體來測試。

許多人使用單個瀏覽器請求頁面,來測試 Web 站點的性能。這樣做就會給您一個感覺,即站點的響應能力很好,但這樣做實際上并不能告訴您在負載條件下站點的性能如何。

一般情況下,要想準確地測試性能,您需要一個專門的測試環(huán)境。此環(huán)境應包括硬件,其處理器速度、處理器數(shù)量、內(nèi)存、磁盤、網(wǎng)絡配置等方面與生產(chǎn)環(huán)境的硬件相似。其次,您必須指定客戶機的工作負荷:有多少同時的用戶,他們發(fā)出請求的頻率,他們點擊頁面的類型等等。如果您沒有站點實際使用情況的數(shù)據(jù),您必須估計一下使用的情況。最后,您需要一個可以模擬預期客戶機工作負荷的工具。有了這些工具,您就可以開始回答諸如“如果我有 N 個同時的用戶,那么需要多少服務器?”之類的問題。您還可以找出出現(xiàn)瓶頸的原因,并以此為目標進行優(yōu)化。

下面列出了一些好的 Web 負載測試工具。我們特別推薦 Microsoft Web Application Stress (WAS) 工具包。WAS 可使您記錄測試腳本,然后模擬數(shù)百或成千上萬個用戶訪問 Web 服務器。WAS 報告很多統(tǒng)計信息,包括每秒鐘的請求數(shù),響應時間分布情況和錯誤計數(shù)。WAS 有豐富的客戶機界面和基于 Web 的界面兩種,Web 界面可使您進行遠程測試。

一定要閱讀 IIS 5.0 Tuning Guide。

技巧 28:閱讀資源鏈接
下面是一些與性能有關的出色的資源鏈接。如果您想了解有關信息,請閱讀 Developing Scalable Web Applications。

資源
優(yōu)化 ASP 腳本

優(yōu)化 IIS

ADO 和 SQL Server


ASP 組件和線程模型

詞典組件

會話狀態(tài)


性能和可擴展性

工具

書目


ASP Web 站點

ASP 樣式

XML



優(yōu)化 ASP 腳本
Developing Scalable Web Applications

Got Any Cache" Nancy Winnick Cluts 著

Maximizing the Performance of Your Active Server Pages,Nancy Winnick Cluts 著

15 Seconds: Performance Section

Enhancing Performance in ASP - Part I,Wayne Plourde 著

When is Better Worse" Weighing the Technology Trade-Offs,Nancy Winnick Cluts 著

Speed and Optimization Resources,Charles Carroll 著

優(yōu)化 IIS
The Art and Science of Web Server Tuning with Internet Information Services 5.0

Leveraging ASP in IIS 5.0,J.D. Meier 著

Tuning IIS 4.0 for High Volume Sites,Michael Stephenson 著

Tuning Internet Information Server Performance,Mike Moore 著

Navigating the Maze of Settings for Web Server Performance Optimization,Todd Wanke 著

Managing Internet Information Server 4.0 for Performance,Hans Hugli 著

ADO 和 SQL Server
Top Ten Tips: Accessing SQL Through ADO and ASP,J.D. Meier 著

Improve the Performance of your MDAC Application,Suresh Kannan 著

Pooling in the Microsoft Data Access Components,Leland Ahlbeck 和 Don Willits 合著

SQL Server: Performance Benchmarks and Guides

Improving the Performance of Data Access Components with IIS 4.0,Leland Ahlbeck 著

Microsoft Data Access Components (MDAC) and ActiveX Data Objects (ADO) Performance Tips,Leland Ahlbeck 著

Microsoft SQL Server 7.0 Practical Performance Tuning and Optimization - The Server Perspective,Damien Lindauer 著

Microsoft SQL Server 7.0 Practical Performance Tuning and Optimization - The Application Perspective,Damien Lindauer 著

Accessing Recordsets over the Internet,Dino Esposito 著

ASP 組件和線程模型
ASP Component Guidelines,J.D. Meier 著

Q243548: INFO: Design Guidelines for VB Components under ASP

Threading Models Explained,Nancy Winnick Cluts 著

So Happy Together" Using ActiveX components with Active Server Pages,Nancy Winnick Cluts 著

Developing Active Server Components with ATL,George Reilly 著

Agility in Server Components,Neil Allain 著

Building High-Performance Middle-Tier Components with C++,Jon Flanders 著

Active Server Pages and COM Apartments,Don Box 著

House of COM: Active Server Pages,Don Box 著

House of COM: Contexts,Don Box 著

House of COM: Performance Trade-offs of the Windows 2000 Component Execution Environment,Don Box 著

Building COM Components That Take Full Advantage of Visual Basic and Scripting,Ivo Salmre 著

Component Design Principles for MTS

詞典組件
Creating a Page Cache Object,Robert Coleridge 著

Abridging the Dictionary Object: The ASP Team Creates a Lookup-Table Object,Robert Carter 著

Caprock Dictionary

Site Server Commerce Edition includes a dictionary component

會話狀態(tài)
Q175167: HOWTO: Persisting Values Without Sessions

Q157906: HOWTO: How To Maintain State Across Pages with VBScript

XML-based Persistence Behaviors Fix Web Farm Headaches,Aaron Skonnard 著

House of COM: Stateless Programming,Don Box 著

性能和擴展性
Blueprint for Building Web Sites Using the Microsoft Windows DNA Platform

Server Performance and Scalability Killers,George Reilly 著

Microsoft Visual Studio Scalability Center

Fitch & Mather Stocks 2000

Tuning the FMStocks Application

High-Performance Visual Basic Apps,Ken Spencer 著

Duwamish Books,Phase 4

Top Windows DNA Performance Mistakes and How to Prevent Them,Gary Geiger 和 Jon Pulsipher 合著

Building from Static HTML to High-Performance Web-Farms,Shawn Bice 著

工具
Microsoft Web Application Stress Tool

I Can't Stress It Enough -- Load Test Your ASP Application,J.D. Meier 著

Windows DNA Performance Kit

Monitoring Events in Distributed Applications Using Visual Studio Analyzer,Mai-lan Tomsen 著

書目
Professional Active Server Pages 3.0,Wrox Press(特別是第 26 章:Optimizing ASP Performance,George Reilly 和 Matthew Gibbs 合著)。

Microsoft Internet Information Services 5.0 Resource Guide(與 Windows 2000 Server Resource Kit 在一起),Microsoft Press。

Microsoft Internet Information Server Resource Kit(用于 IIS 4.0),Microsoft Press。

Programming Distributed Applications with COM and Microsoft Visual Basic 6.0,Ted Pattison 著,Microsoft Press。

Effective COM,Don Box、Keith Brown、Tim Ewald 和 Chris Sells 合著;Addison-Wesley。

Developing Web Usability: The Practice of Simplicity,Jakob Nielsen 著,New Riders。

ASP Web 站點
Microsoft TechNet for IIS

LearnASP.com

4GuysFromRolla.com

15Seconds.com

AspToday.com

Asp101.com

AspLists.com。許多專業(yè)的郵件列表包括:

Fast Code!
ASP Advanced
Not NewbieState Management
Scalability
Visual Basic Components
XML
C++/ATL Component Building
UseIt.com: Web 可用性

ASP 樣式
ASP Best Practices,George Reilly 著

ASP Quick Lessons,Charles Carroll 著

Planning for ASP,John Meade 著

ASP Guidelines,J.D. Meier 著

XML
Inside XML Performance,Chris Lovett 著

Inside MSXML3 Performance,Chris Lovett 著

轉載于:https://www.cnblogs.com/swordzj/archive/2005/02/28/2034810.html

總結

以上是生活随笔為你收集整理的微软建议的ASP性能优化28条守则的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

亚洲熟妇色xxxxx欧美老妇 | 久久人人爽人人人人片 | 精品国产青草久久久久福利 | 欧美性色19p | 久久精品国产日本波多野结衣 | 亚洲a无码综合a国产av中文 | 丰满少妇女裸体bbw | 久久久av男人的天堂 | 精品久久久久香蕉网 | 国产亚洲精品久久久久久大师 | 国产成人无码午夜视频在线观看 | 成人精品天堂一区二区三区 | 无码人妻丰满熟妇区毛片18 | 日日摸夜夜摸狠狠摸婷婷 | 欧美成人家庭影院 | 麻豆国产丝袜白领秘书在线观看 | 国语自产偷拍精品视频偷 | 国产成人精品无码播放 | 亚洲成av人片在线观看无码不卡 | 国产色xx群视频射精 | 久久天天躁狠狠躁夜夜免费观看 | 狂野欧美性猛交免费视频 | 中文字幕色婷婷在线视频 | 无码人妻出轨黑人中文字幕 | 亚洲无人区午夜福利码高清完整版 | 无码午夜成人1000部免费视频 | 野狼第一精品社区 | 亚洲欧美精品伊人久久 | 国产黄在线观看免费观看不卡 | aⅴ在线视频男人的天堂 | 亚洲伊人久久精品影院 | 国产成人精品久久亚洲高清不卡 | 大地资源网第二页免费观看 | 国产在线精品一区二区高清不卡 | 国产精品久免费的黄网站 | 精品乱码久久久久久久 | 乱人伦人妻中文字幕无码 | 国产精品久久久久无码av色戒 | 国内丰满熟女出轨videos | 国产成人av免费观看 | 亚洲精品一区二区三区四区五区 | 高潮毛片无遮挡高清免费视频 | 波多野结衣 黑人 | 国产真实夫妇视频 | 亚洲中文字幕在线无码一区二区 | 久久综合给久久狠狠97色 | 色综合久久久久综合一本到桃花网 | 7777奇米四色成人眼影 | 色综合视频一区二区三区 | 蜜臀aⅴ国产精品久久久国产老师 | 亚洲高清偷拍一区二区三区 | 久久久久99精品成人片 | 久久综合给合久久狠狠狠97色 | 国产精品成人av在线观看 | 无套内射视频囯产 | 老头边吃奶边弄进去呻吟 | 中文字幕无码免费久久9一区9 | 亚洲天堂2017无码中文 | 国产suv精品一区二区五 | 综合网日日天干夜夜久久 | 亚洲狠狠婷婷综合久久 | 精品国产福利一区二区 | 久久伊人色av天堂九九小黄鸭 | 亚洲综合在线一区二区三区 | 俄罗斯老熟妇色xxxx | 久久综合网欧美色妞网 | 亚洲人成人无码网www国产 | 亚洲国产成人a精品不卡在线 | 久激情内射婷内射蜜桃人妖 | 俺去俺来也在线www色官网 | 久久久久久av无码免费看大片 | 成在人线av无码免观看麻豆 | 国产精品第一国产精品 | 国精产品一品二品国精品69xx | 国产高清不卡无码视频 | 特级做a爰片毛片免费69 | 日本护士xxxxhd少妇 | 图片区 小说区 区 亚洲五月 | 成人亚洲精品久久久久软件 | 亚洲精品欧美二区三区中文字幕 | 久久99精品国产麻豆蜜芽 | 人人爽人人澡人人高潮 | 5858s亚洲色大成网站www | 国产凸凹视频一区二区 | 骚片av蜜桃精品一区 | 2020久久超碰国产精品最新 | 日本精品少妇一区二区三区 | 婷婷色婷婷开心五月四房播播 | 国语自产偷拍精品视频偷 | 欧美激情综合亚洲一二区 | 色妞www精品免费视频 | 丰满人妻一区二区三区免费视频 | 一本久道高清无码视频 | 国产一区二区三区影院 | 久久国产精品精品国产色婷婷 | 午夜理论片yy44880影院 | 无码人中文字幕 | 一个人看的视频www在线 | 色一情一乱一伦 | 久久综合香蕉国产蜜臀av | 亚洲乱亚洲乱妇50p | 精品国产青草久久久久福利 | 亚洲色欲久久久综合网东京热 | 99久久久无码国产精品免费 | 国产乱人偷精品人妻a片 | 成人精品视频一区二区三区尤物 | 日日夜夜撸啊撸 | 国产真实伦对白全集 | 日日天日日夜日日摸 | 色综合久久88色综合天天 | 日本乱偷人妻中文字幕 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 300部国产真实乱 | 色情久久久av熟女人妻网站 | 亚洲综合精品香蕉久久网 | 国产麻豆精品精东影业av网站 | 日本大乳高潮视频在线观看 | 国产成人无码a区在线观看视频app | 欧美怡红院免费全部视频 | 无套内谢的新婚少妇国语播放 | 无码一区二区三区在线 | 内射欧美老妇wbb | www国产精品内射老师 | 97无码免费人妻超级碰碰夜夜 | 在线欧美精品一区二区三区 | 国模大胆一区二区三区 | 丰满少妇人妻久久久久久 | 国产av久久久久精东av | 性色欲情网站iwww九文堂 | 国产免费久久精品国产传媒 | 精品人妻人人做人人爽 | 亚洲精品国产第一综合99久久 | 红桃av一区二区三区在线无码av | 真人与拘做受免费视频一 | 一本久道久久综合婷婷五月 | 丰满肥臀大屁股熟妇激情视频 | 99久久人妻精品免费二区 | 欧美国产日韩亚洲中文 | 九九在线中文字幕无码 | 三上悠亚人妻中文字幕在线 | 丰满人妻一区二区三区免费视频 | 无码精品国产va在线观看dvd | 精品水蜜桃久久久久久久 | 欧美自拍另类欧美综合图片区 | 亚洲s码欧洲m码国产av | 99久久精品无码一区二区毛片 | 性做久久久久久久免费看 | 色综合久久久无码中文字幕 | 久久精品中文字幕一区 | 给我免费的视频在线观看 | 伊人久久大香线蕉午夜 | 亚洲欧美国产精品专区久久 | 国内揄拍国内精品人妻 | 老司机亚洲精品影院无码 | 国产成人无码a区在线观看视频app | 曰韩少妇内射免费播放 | 丰满少妇女裸体bbw | 国产熟妇高潮叫床视频播放 | 精品国产精品久久一区免费式 | 无码国产色欲xxxxx视频 | 国产精品福利视频导航 | 成人精品天堂一区二区三区 | 国产另类ts人妖一区二区 | 狂野欧美性猛交免费视频 | 狠狠色噜噜狠狠狠7777奇米 | 午夜福利不卡在线视频 | 伊人久久婷婷五月综合97色 | 夜夜夜高潮夜夜爽夜夜爰爰 | 一本色道久久综合狠狠躁 | 亚洲精品一区二区三区婷婷月 | 亚洲综合精品香蕉久久网 | www国产亚洲精品久久网站 | 黑人大群体交免费视频 | 亚洲一区二区三区偷拍女厕 | 无遮无挡爽爽免费视频 | 东北女人啪啪对白 | 午夜时刻免费入口 | 全黄性性激高免费视频 | 中文字幕色婷婷在线视频 | 蜜桃臀无码内射一区二区三区 | 领导边摸边吃奶边做爽在线观看 | 人妻少妇精品无码专区二区 | 中文字幕无码免费久久99 | 国产精品18久久久久久麻辣 | 亚洲一区二区三区播放 | 四虎国产精品一区二区 | 97无码免费人妻超级碰碰夜夜 | 在线看片无码永久免费视频 | 国产精品亚洲а∨无码播放麻豆 | 少妇人妻av毛片在线看 | 亚洲狠狠色丁香婷婷综合 | 亚洲中文字幕无码中字 | 久久久久99精品国产片 | 人妻人人添人妻人人爱 | 中文精品无码中文字幕无码专区 | 女人被爽到呻吟gif动态图视看 | 无码午夜成人1000部免费视频 | 美女极度色诱视频国产 | √天堂资源地址中文在线 | 久久这里只有精品视频9 | 色婷婷综合中文久久一本 | 又大又黄又粗又爽的免费视频 | 日本熟妇大屁股人妻 | 老头边吃奶边弄进去呻吟 | 未满小14洗澡无码视频网站 | 99久久精品无码一区二区毛片 | 无码帝国www无码专区色综合 | 久久久久se色偷偷亚洲精品av | 亚洲の无码国产の无码步美 | 大地资源中文第3页 | 日韩无码专区 | 熟女俱乐部五十路六十路av | 色一情一乱一伦一区二区三欧美 | 中文字幕人妻丝袜二区 | 日本熟妇大屁股人妻 | 成在人线av无码免费 | 日本精品人妻无码77777 天堂一区人妻无码 | 中文字幕av无码一区二区三区电影 | 成人一区二区免费视频 | 亚洲精品美女久久久久久久 | 国产在线无码精品电影网 | 少妇性l交大片 | 久久久av男人的天堂 | 亚洲乱亚洲乱妇50p | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | a在线亚洲男人的天堂 | 综合激情五月综合激情五月激情1 | 精品国产麻豆免费人成网站 | 中文字幕无码热在线视频 | 亚洲精品成人av在线 | 色婷婷久久一区二区三区麻豆 | 国产午夜亚洲精品不卡 | 精品成在人线av无码免费看 | 亚洲精品国产第一综合99久久 | 丁香花在线影院观看在线播放 | 色综合久久久久综合一本到桃花网 | 日韩亚洲欧美中文高清在线 | 97夜夜澡人人爽人人喊中国片 | 性色欲网站人妻丰满中文久久不卡 | 国产精品无码久久av | 成人无码影片精品久久久 | 亚洲色欲久久久综合网东京热 | 永久免费观看美女裸体的网站 | 午夜不卡av免费 一本久久a久久精品vr综合 | 小鲜肉自慰网站xnxx | 波多野结衣av一区二区全免费观看 | 国内精品人妻无码久久久影院蜜桃 | 久久久久国色av免费观看性色 | 欧美肥老太牲交大战 | 久久婷婷五月综合色国产香蕉 | 人人超人人超碰超国产 | 亚洲人交乣女bbw | 国产综合久久久久鬼色 | 欧美国产日韩亚洲中文 | 97夜夜澡人人双人人人喊 | 国产手机在线αⅴ片无码观看 | 国产国语老龄妇女a片 | 精品国产国产综合精品 | 成年女人永久免费看片 | 亚洲人亚洲人成电影网站色 | 午夜福利一区二区三区在线观看 | 伊在人天堂亚洲香蕉精品区 | 久久久久免费看成人影片 | 麻豆av传媒蜜桃天美传媒 | 无码成人精品区在线观看 | 波多野结衣av一区二区全免费观看 | 暴力强奷在线播放无码 | 亚洲精品成人av在线 | 99久久久无码国产精品免费 | 小鲜肉自慰网站xnxx | 最近中文2019字幕第二页 | 蜜桃无码一区二区三区 | 成 人 网 站国产免费观看 | 午夜福利一区二区三区在线观看 | 国产午夜视频在线观看 | 亚洲中文字幕在线无码一区二区 | 亚洲欧美日韩国产精品一区二区 | 色婷婷综合中文久久一本 | 性做久久久久久久久 | 丰满妇女强制高潮18xxxx | 亚洲 欧美 激情 小说 另类 | 国产精品无码一区二区桃花视频 | 人人澡人人透人人爽 | 亚洲人成人无码网www国产 | 亚洲中文字幕成人无码 | 国产色视频一区二区三区 | 中文字幕人成乱码熟女app | 人妻互换免费中文字幕 | 激情亚洲一区国产精品 | 国产精品国产三级国产专播 | 久久精品人人做人人综合试看 | 亚洲大尺度无码无码专区 | 久久久精品456亚洲影院 | 国产乱人无码伦av在线a | 无码人妻精品一区二区三区下载 | 国产99久久精品一区二区 | av无码电影一区二区三区 | 日日噜噜噜噜夜夜爽亚洲精品 | 久久综合给合久久狠狠狠97色 | 一本加勒比波多野结衣 | 亚洲热妇无码av在线播放 | 日韩欧美群交p片內射中文 | 国产精品对白交换视频 | 成人三级无码视频在线观看 | 国产精品无码mv在线观看 | 熟妇激情内射com | 日本免费一区二区三区最新 | 亚洲乱码国产乱码精品精 | 亚洲人成影院在线无码按摩店 | 久热国产vs视频在线观看 | 午夜精品久久久久久久 | 少妇性l交大片欧洲热妇乱xxx | 国产精品国产三级国产专播 | 狠狠色色综合网站 | 欧美黑人乱大交 | 天天av天天av天天透 | 97精品人妻一区二区三区香蕉 | 精品国产aⅴ无码一区二区 | 亚洲欧洲日本综合aⅴ在线 | 男女性色大片免费网站 | 免费人成在线观看网站 | 中文字幕无码热在线视频 | 国产精品va在线播放 | 性开放的女人aaa片 | 婷婷五月综合缴情在线视频 | 激情内射日本一区二区三区 | 日韩欧美中文字幕在线三区 | 国产精品久久久久久无码 | 日韩欧美中文字幕公布 | 久久精品中文字幕大胸 | 无码国内精品人妻少妇 | 久久久久久久女国产乱让韩 | 性欧美牲交xxxxx视频 | 国产精品视频免费播放 | 欧美亚洲国产一区二区三区 | 天堂无码人妻精品一区二区三区 | 人妻少妇精品久久 | 欧洲熟妇精品视频 | 国产成人人人97超碰超爽8 | 又大又硬又黄的免费视频 | 超碰97人人做人人爱少妇 | 亚洲精品午夜国产va久久成人 | 好爽又高潮了毛片免费下载 | 人人妻人人澡人人爽精品欧美 | 日韩av无码中文无码电影 | 1000部啪啪未满十八勿入下载 | 欧美 丝袜 自拍 制服 另类 | 亚洲精品久久久久久久久久久 | 国产乱人偷精品人妻a片 | 久久午夜无码鲁丝片午夜精品 | 午夜无码区在线观看 | 国产精品久久国产三级国 | 精品人妻人人做人人爽夜夜爽 | 伊人久久大香线蕉av一区二区 | 国内精品人妻无码久久久影院蜜桃 | 女高中生第一次破苞av | 成在人线av无码免观看麻豆 | 一二三四社区在线中文视频 | 色老头在线一区二区三区 | 久久国产精品萌白酱免费 | 成 人 网 站国产免费观看 | 欧美精品在线观看 | 久久99精品久久久久久动态图 | 夫妻免费无码v看片 | 久久亚洲中文字幕精品一区 | 国产av人人夜夜澡人人爽麻豆 | 亚洲成av人综合在线观看 | 最新国产乱人伦偷精品免费网站 | 亚洲精品一区二区三区四区五区 | 精品国产一区二区三区四区在线看 | 丰满少妇高潮惨叫视频 | 欧美刺激性大交 | 少妇的肉体aa片免费 | 国产69精品久久久久app下载 | 熟妇人妻中文av无码 | 欧美老妇与禽交 | 精品国偷自产在线 | 99久久亚洲精品无码毛片 | 午夜嘿嘿嘿影院 | 久久99精品久久久久婷婷 | 两性色午夜视频免费播放 | 亚洲国产精品久久人人爱 | 无码人妻丰满熟妇区五十路百度 | 久久无码中文字幕免费影院蜜桃 | 内射老妇bbwx0c0ck | 国产熟女一区二区三区四区五区 | 亚洲男人av天堂午夜在 | 无码人妻丰满熟妇区毛片18 | 亚洲精品国偷拍自产在线麻豆 | 久久精品丝袜高跟鞋 | 国产av久久久久精东av | 天堂久久天堂av色综合 | av在线亚洲欧洲日产一区二区 | 中文字幕久久久久人妻 | 亚洲精品成人av在线 | 亚洲人成网站色7799 | 精品人妻人人做人人爽夜夜爽 | 亚洲人成影院在线观看 | 粉嫩少妇内射浓精videos | 日日摸天天摸爽爽狠狠97 | а√天堂www在线天堂小说 | 又大又硬又爽免费视频 | 国产乡下妇女做爰 | 国产超碰人人爽人人做人人添 | 中文字幕av日韩精品一区二区 | 三上悠亚人妻中文字幕在线 | 久久精品国产亚洲精品 | 国产情侣作爱视频免费观看 | 内射欧美老妇wbb | 亚洲熟熟妇xxxx | 亚洲va中文字幕无码久久不卡 | 免费无码av一区二区 | 老司机亚洲精品影院无码 | 装睡被陌生人摸出水好爽 | 1000部啪啪未满十八勿入下载 | 亚洲熟悉妇女xxx妇女av | 成熟妇人a片免费看网站 | 性做久久久久久久免费看 | 午夜福利不卡在线视频 | 久久久久久久久888 | 麻豆成人精品国产免费 | 国产午夜精品一区二区三区嫩草 | 伊在人天堂亚洲香蕉精品区 | 永久免费观看美女裸体的网站 | 久久精品国产亚洲精品 | 免费人成网站视频在线观看 | 久久精品国产精品国产精品污 | 国产午夜视频在线观看 | 精品国产av色一区二区深夜久久 | 国产成人无码区免费内射一片色欲 | 99久久久无码国产精品免费 | 久久久久国色av免费观看性色 | 国产真人无遮挡作爱免费视频 | 日欧一片内射va在线影院 | 精品国产麻豆免费人成网站 | 久久久久av无码免费网 | 亚洲 欧美 激情 小说 另类 | 亚洲午夜无码久久 | 内射爽无广熟女亚洲 | 亚洲а∨天堂久久精品2021 | 久久亚洲日韩精品一区二区三区 | 97久久精品无码一区二区 | 免费中文字幕日韩欧美 | 亚洲欧洲无卡二区视頻 | 久久99精品久久久久久 | 亚洲精品欧美二区三区中文字幕 | 国产9 9在线 | 中文 | 麻豆人妻少妇精品无码专区 | 久久久久亚洲精品男人的天堂 | 国产精品无码一区二区三区不卡 | 最近的中文字幕在线看视频 | 中文毛片无遮挡高清免费 | 亚洲理论电影在线观看 | 亚洲日韩av一区二区三区中文 | 性欧美疯狂xxxxbbbb | 天堂亚洲免费视频 | 美女毛片一区二区三区四区 | 中文字幕久久久久人妻 | 亚洲最大成人网站 | 亚洲熟妇色xxxxx欧美老妇y | 中文字幕+乱码+中文字幕一区 | 亚洲a无码综合a国产av中文 | 精品人妻人人做人人爽夜夜爽 | 夜精品a片一区二区三区无码白浆 | 国产成人无码av在线影院 | 亚洲综合在线一区二区三区 | 国产精品久久久久9999小说 | 蜜臀aⅴ国产精品久久久国产老师 | 在线观看免费人成视频 | 色妞www精品免费视频 | 免费观看激色视频网站 | 狠狠cao日日穞夜夜穞av | 国产三级久久久精品麻豆三级 | 精品偷拍一区二区三区在线看 | 无码帝国www无码专区色综合 | 日本一区二区三区免费播放 | 在线精品国产一区二区三区 | 亚洲国产午夜精品理论片 | 国产激情一区二区三区 | 精品厕所偷拍各类美女tp嘘嘘 | 久久久久久av无码免费看大片 | 久久久久成人片免费观看蜜芽 | 综合网日日天干夜夜久久 | 久久精品无码一区二区三区 | 偷窥日本少妇撒尿chinese | 国产在线无码精品电影网 | 欧美成人午夜精品久久久 | 四虎永久在线精品免费网址 | 无码任你躁久久久久久久 | 国产人妖乱国产精品人妖 | 日本一区二区三区免费播放 | 乱人伦人妻中文字幕无码 | 性生交大片免费看女人按摩摩 | 99国产精品白浆在线观看免费 | 成人亚洲精品久久久久软件 | 宝宝好涨水快流出来免费视频 | 最新国产麻豆aⅴ精品无码 | 撕开奶罩揉吮奶头视频 | 中文字幕色婷婷在线视频 | 疯狂三人交性欧美 | 欧美精品免费观看二区 | 中文字幕无线码免费人妻 | 99精品国产综合久久久久五月天 | 亚洲狠狠色丁香婷婷综合 | 九九热爱视频精品 | 欧美丰满老熟妇xxxxx性 | 亚洲精品一区二区三区在线 | 天天躁夜夜躁狠狠是什么心态 | 少妇愉情理伦片bd | 亚洲一区二区三区 | 国产黄在线观看免费观看不卡 | 精品无码国产一区二区三区av | www国产亚洲精品久久网站 | 欧美丰满老熟妇xxxxx性 | 久久国产自偷自偷免费一区调 | 一本久久a久久精品亚洲 | 亚洲 a v无 码免 费 成 人 a v | 免费男性肉肉影院 | 久久久久久久久888 | 天天拍夜夜添久久精品大 | 丝袜美腿亚洲一区二区 | 国内老熟妇对白xxxxhd | 亚洲精品国产精品乱码视色 | 成在人线av无码免观看麻豆 | 极品嫩模高潮叫床 | 天海翼激烈高潮到腰振不止 | 一本大道久久东京热无码av | 中文字幕 亚洲精品 第1页 | 午夜理论片yy44880影院 | a在线亚洲男人的天堂 | 六十路熟妇乱子伦 | 天天躁日日躁狠狠躁免费麻豆 | 亚洲国产精华液网站w | 国产va免费精品观看 | 久久久无码中文字幕久... | 亚洲综合无码久久精品综合 | 午夜成人1000部免费视频 | 日本www一道久久久免费榴莲 | 一本色道久久综合亚洲精品不卡 | 国产真实伦对白全集 | 久久久无码中文字幕久... | 色老头在线一区二区三区 | 四虎4hu永久免费 | 97夜夜澡人人双人人人喊 | 美女极度色诱视频国产 | 亚洲狠狠色丁香婷婷综合 | 亚洲欧美国产精品专区久久 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 在线精品国产一区二区三区 | 熟妇人妻无码xxx视频 | 国产精品igao视频网 | 国产av人人夜夜澡人人爽麻豆 | 国产午夜精品一区二区三区嫩草 | 国色天香社区在线视频 | 亚洲 a v无 码免 费 成 人 a v | 国产香蕉尹人视频在线 | 亚洲精品中文字幕久久久久 | 国产一区二区三区日韩精品 | 18无码粉嫩小泬无套在线观看 | 在线а√天堂中文官网 | 无码人妻少妇伦在线电影 | 欧美日韩在线亚洲综合国产人 | 国产女主播喷水视频在线观看 | 性啪啪chinese东北女人 | 国产免费无码一区二区视频 | 性开放的女人aaa片 | 性开放的女人aaa片 | 欧美亚洲日韩国产人成在线播放 | 亚洲 另类 在线 欧美 制服 | 97夜夜澡人人爽人人喊中国片 | 久久无码中文字幕免费影院蜜桃 | 欧美性猛交xxxx富婆 | 色婷婷香蕉在线一区二区 | 国产av一区二区精品久久凹凸 | 久久亚洲精品中文字幕无男同 | 亚洲成av人综合在线观看 | 麻豆精品国产精华精华液好用吗 | 国产精品鲁鲁鲁 | 窝窝午夜理论片影院 | 久久久久av无码免费网 | 久精品国产欧美亚洲色aⅴ大片 | 欧美成人午夜精品久久久 | 欧美成人家庭影院 | 国内揄拍国内精品人妻 | 波多野结衣一区二区三区av免费 | 亚洲啪av永久无码精品放毛片 | 熟女少妇在线视频播放 | 亚洲国产日韩a在线播放 | 国产偷抇久久精品a片69 | 日本免费一区二区三区最新 | 国产精品成人av在线观看 | 中国女人内谢69xxxxxa片 | 小sao货水好多真紧h无码视频 | 欧美成人家庭影院 | 牲欲强的熟妇农村老妇女视频 | 18黄暴禁片在线观看 | 人妻无码αv中文字幕久久琪琪布 | 亚洲人亚洲人成电影网站色 | 国产黑色丝袜在线播放 | 中文字幕日产无线码一区 | 国产成人无码专区 | 欧美性猛交内射兽交老熟妇 | 欧美性生交xxxxx久久久 | 日韩人妻无码中文字幕视频 | 亚洲精品一区二区三区四区五区 | 丰满岳乱妇在线观看中字无码 | 在线观看国产午夜福利片 | 中文字幕av无码一区二区三区电影 | 正在播放东北夫妻内射 | 正在播放老肥熟妇露脸 | 久久精品中文闷骚内射 | 思思久久99热只有频精品66 | 综合激情五月综合激情五月激情1 | 精品国产一区二区三区四区 | 中文字幕av伊人av无码av | 精品国偷自产在线 | 久久久中文久久久无码 | 亚洲 高清 成人 动漫 | 亚洲日韩av片在线观看 | 亚洲一区二区三区 | 无码人妻丰满熟妇区毛片18 | 99久久久国产精品无码免费 | 国产成人综合在线女婷五月99播放 | 亚洲中文字幕无码中文字在线 | 国产精品亚洲а∨无码播放麻豆 | 成人av无码一区二区三区 | 精品成人av一区二区三区 | 麻豆md0077饥渴少妇 | 日本一卡二卡不卡视频查询 | 国产香蕉尹人视频在线 | 亚洲成a人片在线观看无码3d | 久久久久久久久蜜桃 | 99久久人妻精品免费一区 | 国产免费观看黄av片 | 国产av人人夜夜澡人人爽麻豆 | 久久久久久久人妻无码中文字幕爆 | 在线成人www免费观看视频 | 亚洲色大成网站www国产 | 18精品久久久无码午夜福利 | 丰满岳乱妇在线观看中字无码 | 精品人妻人人做人人爽夜夜爽 | 国产美女精品一区二区三区 | 无码人妻av免费一区二区三区 | 亚洲中文字幕成人无码 | 欧美野外疯狂做受xxxx高潮 | 六十路熟妇乱子伦 | 97资源共享在线视频 | 国产在线aaa片一区二区99 | 纯爱无遮挡h肉动漫在线播放 | 99在线 | 亚洲 | 亚洲综合伊人久久大杳蕉 | 理论片87福利理论电影 | 亚洲精品中文字幕 | 最近中文2019字幕第二页 | 欧洲欧美人成视频在线 | 日本成熟视频免费视频 | 无码乱肉视频免费大全合集 | 少妇愉情理伦片bd | 亚洲国产精华液网站w | 日日摸日日碰夜夜爽av | 色婷婷综合中文久久一本 | 欧美丰满熟妇xxxx性ppx人交 | 女人被男人躁得好爽免费视频 | 奇米影视7777久久精品人人爽 | 无遮无挡爽爽免费视频 | 熟女体下毛毛黑森林 | 久久综合网欧美色妞网 | 内射后入在线观看一区 | 久久精品国产99精品亚洲 | 中文字幕人妻无码一夲道 | 国产av人人夜夜澡人人爽麻豆 | 欧美成人免费全部网站 | 国产小呦泬泬99精品 | 少妇高潮一区二区三区99 | 欧美猛少妇色xxxxx | 中文字幕乱妇无码av在线 | 日韩欧美群交p片內射中文 | 在线播放无码字幕亚洲 | 精品人妻人人做人人爽 | 亚洲精品国产精品乱码不卡 | 亚洲午夜无码久久 | 久久久久久九九精品久 | 久久天天躁狠狠躁夜夜免费观看 | 亚洲va中文字幕无码久久不卡 | 久久久国产精品无码免费专区 | 国产高潮视频在线观看 | 少妇太爽了在线观看 | 国产另类ts人妖一区二区 | 婷婷丁香六月激情综合啪 | 男女下面进入的视频免费午夜 | 天天综合网天天综合色 | 5858s亚洲色大成网站www | 在线欧美精品一区二区三区 | 国模大胆一区二区三区 | 人妻体内射精一区二区三四 | 欧美 丝袜 自拍 制服 另类 | 欧美国产日韩亚洲中文 | 国产成人久久精品流白浆 | 亚洲精品久久久久avwww潮水 | 亚洲另类伦春色综合小说 | 青草青草久热国产精品 | 精品无码成人片一区二区98 | 国产精品丝袜黑色高跟鞋 | 成人精品视频一区二区三区尤物 | 亚洲中文无码av永久不收费 | 国产sm调教视频在线观看 | 国产香蕉97碰碰久久人人 | 色一情一乱一伦一视频免费看 | 国产人妻精品午夜福利免费 | 日本精品少妇一区二区三区 | 黑人巨大精品欧美黑寡妇 | 狠狠躁日日躁夜夜躁2020 | 人人妻人人藻人人爽欧美一区 | 亚洲乱亚洲乱妇50p | 欧美精品一区二区精品久久 | 少妇激情av一区二区 | 国产sm调教视频在线观看 | 亚洲第一无码av无码专区 | 国产欧美熟妇另类久久久 | 国产激情无码一区二区 | 久久亚洲中文字幕无码 | 中文字幕 亚洲精品 第1页 | 久久精品人妻少妇一区二区三区 | 国产suv精品一区二区五 | 精品欧洲av无码一区二区三区 | 中文字幕色婷婷在线视频 | 无码一区二区三区在线 | 少妇性荡欲午夜性开放视频剧场 | 欧美性黑人极品hd | 久久综合狠狠综合久久综合88 | 欧美大屁股xxxxhd黑色 | 国产精品免费大片 | 奇米影视7777久久精品人人爽 | 国产精品igao视频网 | 欧美精品在线观看 | 国产热a欧美热a在线视频 | 精品水蜜桃久久久久久久 | 欧美一区二区三区 | 强奷人妻日本中文字幕 | 亚洲小说春色综合另类 | 亚洲色偷偷男人的天堂 | 日本护士毛茸茸高潮 | 日韩精品无码一区二区中文字幕 | 2019午夜福利不卡片在线 | 成人亚洲精品久久久久 | 欧美高清在线精品一区 | 亚洲性无码av中文字幕 | 欧美老熟妇乱xxxxx | 亚洲色在线无码国产精品不卡 | 无码国产激情在线观看 | 亚洲色无码一区二区三区 | 亚洲精品国产精品乱码视色 | 内射后入在线观看一区 | 高清无码午夜福利视频 | 色欲av亚洲一区无码少妇 | 曰韩无码二三区中文字幕 | 国产乡下妇女做爰 | 国产精品无码久久av | 在线播放无码字幕亚洲 | 日本成熟视频免费视频 | 亚洲 欧美 激情 小说 另类 | 久青草影院在线观看国产 | 中文字幕无码乱人伦 | 鲁鲁鲁爽爽爽在线视频观看 | 亚洲精品一区二区三区四区五区 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 大屁股大乳丰满人妻 | 97人妻精品一区二区三区 | 亚洲精品综合一区二区三区在线 | 亚洲人成人无码网www国产 | 久久99精品久久久久久 | 欧美阿v高清资源不卡在线播放 | 日韩视频 中文字幕 视频一区 | 东京一本一道一二三区 | 女人被男人躁得好爽免费视频 | 久久精品一区二区三区四区 | 99久久久无码国产aaa精品 | 亚洲第一网站男人都懂 | 亚洲中文字幕无码中文字在线 | 亚洲成色www久久网站 | 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲经典千人经典日产 | 亚洲成色www久久网站 | 日本高清一区免费中文视频 | 亚洲理论电影在线观看 | 欧美性黑人极品hd | 无遮无挡爽爽免费视频 | 国产成人无码av一区二区 | 少妇久久久久久人妻无码 | 成人av无码一区二区三区 | 人妻少妇精品视频专区 | 久久久精品欧美一区二区免费 | 亚洲高清偷拍一区二区三区 | 老太婆性杂交欧美肥老太 | 精品久久久无码中文字幕 | 大胆欧美熟妇xx | 亚洲一区二区三区香蕉 | 日本一卡二卡不卡视频查询 | 成人亚洲精品久久久久 | 日本丰满护士爆乳xxxx | 国产莉萝无码av在线播放 | 成在人线av无码免费 | 免费网站看v片在线18禁无码 | 一二三四在线观看免费视频 | 成人免费视频视频在线观看 免费 | 精品人妻人人做人人爽夜夜爽 | 麻花豆传媒剧国产免费mv在线 | 国产香蕉97碰碰久久人人 | 无码av免费一区二区三区试看 | 久久亚洲a片com人成 | 丰满少妇高潮惨叫视频 | 日韩无套无码精品 | 久久久国产精品无码免费专区 | 国产亚洲精品久久久久久久久动漫 | 麻豆国产丝袜白领秘书在线观看 | 疯狂三人交性欧美 | 性色欲网站人妻丰满中文久久不卡 | 波多野结衣乳巨码无在线观看 | 中文字幕日韩精品一区二区三区 | 波多野结衣aⅴ在线 | 亚洲国产精品成人久久蜜臀 | 午夜成人1000部免费视频 | 大地资源网第二页免费观看 | 7777奇米四色成人眼影 | 国精品人妻无码一区二区三区蜜柚 | 熟妇人妻无乱码中文字幕 | 国产精品久久久一区二区三区 | 亚洲日本va中文字幕 | 岛国片人妻三上悠亚 | 中文字幕无线码免费人妻 | 婷婷六月久久综合丁香 | 2019午夜福利不卡片在线 | 亚洲男人av香蕉爽爽爽爽 | 欧美成人免费全部网站 | 亚洲一区二区三区 | 天堂亚洲2017在线观看 | 亚洲精品国产第一综合99久久 | 97人妻精品一区二区三区 | 正在播放老肥熟妇露脸 | 成人综合网亚洲伊人 | 俄罗斯老熟妇色xxxx | 999久久久国产精品消防器材 | 日韩av无码一区二区三区不卡 | 国产超级va在线观看视频 | 无套内谢老熟女 | 国产凸凹视频一区二区 | 国产免费久久精品国产传媒 | 天堂亚洲免费视频 | 国产精品丝袜黑色高跟鞋 | 国产人妻人伦精品 | 乱码av麻豆丝袜熟女系列 | 亚洲国产一区二区三区在线观看 | 国内丰满熟女出轨videos | 精品国精品国产自在久国产87 | 97资源共享在线视频 | 乱人伦人妻中文字幕无码久久网 | 午夜精品久久久久久久 | 国产精品无码一区二区三区不卡 | 色婷婷综合中文久久一本 | 国产福利视频一区二区 | 日日摸天天摸爽爽狠狠97 | 狠狠cao日日穞夜夜穞av | 成人影院yy111111在线观看 | 国产高清不卡无码视频 | 久久亚洲精品中文字幕无男同 | 亚洲区欧美区综合区自拍区 | 色诱久久久久综合网ywww | 色综合久久久无码网中文 | 波多野结衣高清一区二区三区 | 亚洲人成人无码网www国产 | 亚洲天堂2017无码中文 | 97无码免费人妻超级碰碰夜夜 | 国产午夜精品一区二区三区嫩草 | 亚洲日韩中文字幕在线播放 | 国产无遮挡又黄又爽又色 | 亚洲一区二区三区无码久久 | 我要看www免费看插插视频 | 一二三四社区在线中文视频 | 99久久久无码国产精品免费 | 精品国产青草久久久久福利 | 中文字幕无码乱人伦 | 免费乱码人妻系列无码专区 | 十八禁真人啪啪免费网站 | 国产乱人偷精品人妻a片 | 国产激情综合五月久久 | 国产激情一区二区三区 | 网友自拍区视频精品 | 无码人中文字幕 | 强奷人妻日本中文字幕 | 国产成人无码a区在线观看视频app | 日本va欧美va欧美va精品 | 国产亚洲精品久久久久久大师 | 色综合天天综合狠狠爱 | 一本大道久久东京热无码av | 中文字幕无码av激情不卡 | aⅴ在线视频男人的天堂 | 日欧一片内射va在线影院 | 99久久精品无码一区二区毛片 | 日韩精品无码免费一区二区三区 | 男女性色大片免费网站 | 久久久婷婷五月亚洲97号色 | 丰满人妻一区二区三区免费视频 | 九九久久精品国产免费看小说 | 成人女人看片免费视频放人 | 2020久久香蕉国产线看观看 | 色综合久久88色综合天天 | 在线观看免费人成视频 | 亚洲人亚洲人成电影网站色 | 无码任你躁久久久久久久 | 亚洲成a人片在线观看无码3d | 暴力强奷在线播放无码 | 色情久久久av熟女人妻网站 | 婷婷五月综合缴情在线视频 | 亚洲自偷精品视频自拍 | 久久精品中文字幕大胸 | 欧美性猛交内射兽交老熟妇 | 一本色道婷婷久久欧美 | 无码人妻黑人中文字幕 | 久久成人a毛片免费观看网站 | 国产精品人妻一区二区三区四 | 性欧美牲交xxxxx视频 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 俄罗斯老熟妇色xxxx | 18无码粉嫩小泬无套在线观看 | 美女毛片一区二区三区四区 | 久久综合久久自在自线精品自 | 久久精品一区二区三区四区 | 国产真实伦对白全集 | 国产亚洲精品久久久久久 | 国产精品久久久久久久9999 | 在线播放无码字幕亚洲 | 未满成年国产在线观看 | www一区二区www免费 | 两性色午夜免费视频 | 扒开双腿吃奶呻吟做受视频 | 日日麻批免费40分钟无码 | 国产精品毛片一区二区 | 亚洲国产成人av在线观看 | 亚洲天堂2017无码 | 2020最新国产自产精品 | 久久久久成人精品免费播放动漫 | 色窝窝无码一区二区三区色欲 | 国内精品久久毛片一区二区 | 精品无码国产一区二区三区av | 强辱丰满人妻hd中文字幕 | 国产亚av手机在线观看 | 亚洲国产精品美女久久久久 | 黑人玩弄人妻中文在线 | 国产乱人无码伦av在线a | 无码人妻丰满熟妇区五十路百度 | 亚洲国产精品一区二区第一页 | 曰韩少妇内射免费播放 | 97人妻精品一区二区三区 | 国产无遮挡又黄又爽又色 | www成人国产高清内射 | 亚洲日韩av片在线观看 | 婷婷丁香五月天综合东京热 | 欧美精品国产综合久久 | 国产一区二区三区精品视频 | www国产亚洲精品久久网站 | 久久久久久久人妻无码中文字幕爆 | 欧美成人午夜精品久久久 | 鲁鲁鲁爽爽爽在线视频观看 | 亚洲综合精品香蕉久久网 | 欧美性猛交内射兽交老熟妇 | 中国女人内谢69xxxx | 无码国产乱人伦偷精品视频 | 国产精品久久国产精品99 | 亚洲国产精品无码一区二区三区 | 国产偷自视频区视频 | 国产成人综合美国十次 | 中文字幕乱妇无码av在线 | 国内老熟妇对白xxxxhd | 福利一区二区三区视频在线观看 | 日韩av激情在线观看 | 成人免费无码大片a毛片 | 动漫av网站免费观看 | 婷婷五月综合缴情在线视频 | 亚洲天堂2017无码 | 美女张开腿让人桶 | 在线天堂新版最新版在线8 | 乱中年女人伦av三区 | 欧美人妻一区二区三区 | 丰满少妇高潮惨叫视频 | 特级做a爰片毛片免费69 | 少妇无码一区二区二三区 | 欧美人妻一区二区三区 | 图片区 小说区 区 亚洲五月 | 国产亚洲人成a在线v网站 | 99麻豆久久久国产精品免费 | 日本护士xxxxhd少妇 | 少妇一晚三次一区二区三区 | 午夜无码区在线观看 | 国产又爽又猛又粗的视频a片 | 无码av免费一区二区三区试看 | 学生妹亚洲一区二区 | 丰满人妻一区二区三区免费视频 | 高清国产亚洲精品自在久久 | a片免费视频在线观看 | 麻豆精品国产精华精华液好用吗 | 成人片黄网站色大片免费观看 | 扒开双腿疯狂进出爽爽爽视频 | 国产免费久久久久久无码 | 免费国产成人高清在线观看网站 | 亚洲精品欧美二区三区中文字幕 | 男女爱爱好爽视频免费看 | 牲欲强的熟妇农村老妇女 | 一个人看的视频www在线 | 久久伊人色av天堂九九小黄鸭 | 国产成人一区二区三区在线观看 | 国产热a欧美热a在线视频 | 99精品视频在线观看免费 | 伊人久久大香线焦av综合影院 | 中国女人内谢69xxxxxa片 | 国产成人综合在线女婷五月99播放 | 免费国产黄网站在线观看 | 亚洲精品国产a久久久久久 | 人妻无码久久精品人妻 | 成人一区二区免费视频 | 亚洲精品久久久久中文第一幕 | 国产乱人伦偷精品视频 | 男女下面进入的视频免费午夜 | 亚洲国产日韩a在线播放 | 乱码av麻豆丝袜熟女系列 | 伦伦影院午夜理论片 | 欧美人与禽猛交狂配 | 中文字幕色婷婷在线视频 | 中文字幕乱码中文乱码51精品 | 97人妻精品一区二区三区 | 人人妻人人澡人人爽人人精品 | 亚洲国产精品久久久天堂 | 亚洲精品美女久久久久久久 | 无码av最新清无码专区吞精 | 正在播放东北夫妻内射 | 国内精品久久毛片一区二区 | 内射爽无广熟女亚洲 | 日韩 欧美 动漫 国产 制服 | 亚洲s色大片在线观看 | 久久综合九色综合欧美狠狠 | 精品国产青草久久久久福利 | 欧美人与动性行为视频 | 中文字幕无码免费久久9一区9 | 亚洲天堂2017无码中文 | 亚洲精品久久久久久一区二区 | 精品国精品国产自在久国产87 | aⅴ亚洲 日韩 色 图网站 播放 | 国产明星裸体无码xxxx视频 | 性欧美大战久久久久久久 | 中文字幕av无码一区二区三区电影 | 亚洲成a人一区二区三区 | 无码福利日韩神码福利片 | 日韩亚洲欧美中文高清在线 | 成人精品视频一区二区 | 少妇性俱乐部纵欲狂欢电影 | 亚洲日本在线电影 | 天天爽夜夜爽夜夜爽 | 色噜噜亚洲男人的天堂 | 中文精品久久久久人妻不卡 | 久久亚洲中文字幕精品一区 | 白嫩日本少妇做爰 | 成人一区二区免费视频 | 狠狠色欧美亚洲狠狠色www | 日韩av无码一区二区三区 | 高中生自慰www网站 | 老熟妇乱子伦牲交视频 | 国产人妻人伦精品 | 国产精品手机免费 | 激情人妻另类人妻伦 | 日本精品人妻无码77777 天堂一区人妻无码 | 日日天日日夜日日摸 | 内射后入在线观看一区 | 少妇人妻偷人精品无码视频 | 日韩视频 中文字幕 视频一区 | 日本高清一区免费中文视频 | 又大又黄又粗又爽的免费视频 | 俺去俺来也www色官网 | 自拍偷自拍亚洲精品10p | 日本精品人妻无码免费大全 | 亚洲日韩中文字幕在线播放 | 麻豆国产人妻欲求不满 | 丝袜人妻一区二区三区 | 成 人 免费观看网站 | 成人女人看片免费视频放人 | 玩弄少妇高潮ⅹxxxyw | 中文字幕精品av一区二区五区 | 久久久久亚洲精品男人的天堂 | 日韩 欧美 动漫 国产 制服 | 成人综合网亚洲伊人 | 免费国产黄网站在线观看 | 国产亚洲精品久久久ai换 | а√资源新版在线天堂 | 乱人伦人妻中文字幕无码久久网 | 狂野欧美激情性xxxx | 无套内谢的新婚少妇国语播放 | 中文字幕av无码一区二区三区电影 | 极品尤物被啪到呻吟喷水 | 国产成人无码专区 | 无码精品人妻一区二区三区av | 正在播放东北夫妻内射 | 国产内射爽爽大片视频社区在线 | 亚洲自偷自偷在线制服 | 在线亚洲高清揄拍自拍一品区 | 国产欧美亚洲精品a | 久热国产vs视频在线观看 | 亚洲成av人影院在线观看 | 婷婷丁香五月天综合东京热 | 国产在线精品一区二区三区直播 | 欧美xxxx黑人又粗又长 | 沈阳熟女露脸对白视频 | 爽爽影院免费观看 | 日本熟妇人妻xxxxx人hd | 女人被男人躁得好爽免费视频 | 影音先锋中文字幕无码 | 377p欧洲日本亚洲大胆 | 久久无码专区国产精品s | 午夜无码区在线观看 | 日日碰狠狠丁香久燥 | 97人妻精品一区二区三区 | 亚洲成av人综合在线观看 | 国产艳妇av在线观看果冻传媒 | 香港三级日本三级妇三级 | 久久99久久99精品中文字幕 | 人人超人人超碰超国产 | 精品 日韩 国产 欧美 视频 | 天天躁日日躁狠狠躁免费麻豆 | 国产成人一区二区三区在线观看 | 黑人玩弄人妻中文在线 | 粗大的内捧猛烈进出视频 | 麻豆人妻少妇精品无码专区 | 性欧美熟妇videofreesex | 色欲综合久久中文字幕网 | 亚洲狠狠色丁香婷婷综合 | 色 综合 欧美 亚洲 国产 | 一本大道久久东京热无码av | 国精产品一品二品国精品69xx | 1000部啪啪未满十八勿入下载 | 一区二区三区乱码在线 | 欧洲 | 永久免费精品精品永久-夜色 | 久久久久av无码免费网 | 国产精品高潮呻吟av久久4虎 | 99精品视频在线观看免费 | 国产国产精品人在线视 | 国产精品免费大片 | 日日摸日日碰夜夜爽av | 亚洲色欲色欲天天天www | 玩弄中年熟妇正在播放 | 少妇高潮一区二区三区99 | 亚欧洲精品在线视频免费观看 | 国产高潮视频在线观看 | 麻花豆传媒剧国产免费mv在线 | 国产精品沙发午睡系列 | 国内精品久久久久久中文字幕 | 久青草影院在线观看国产 | 99久久人妻精品免费一区 | 3d动漫精品啪啪一区二区中 | 午夜精品一区二区三区的区别 | 国产真人无遮挡作爱免费视频 | 亚洲s码欧洲m码国产av | 亚洲精品午夜国产va久久成人 | 国产又爽又黄又刺激的视频 | 一本无码人妻在中文字幕免费 | 99久久久无码国产精品免费 | 久久久av男人的天堂 | 国产美女精品一区二区三区 | 蜜臀aⅴ国产精品久久久国产老师 | 一本一道久久综合久久 | 国产电影无码午夜在线播放 | 亚洲日韩乱码中文无码蜜桃臀网站 | 精品国产福利一区二区 | 日本熟妇乱子伦xxxx | 国产在线精品一区二区高清不卡 | 日日噜噜噜噜夜夜爽亚洲精品 | 成人免费视频一区二区 | 窝窝午夜理论片影院 | 国产又粗又硬又大爽黄老大爷视 | 欧美真人作爱免费视频 | 欧美成人午夜精品久久久 | 久久www免费人成人片 | av无码电影一区二区三区 | 亚洲 激情 小说 另类 欧美 | 日韩人妻无码一区二区三区久久99 | 人妻无码久久精品人妻 | 亚洲男人av天堂午夜在 | 亚洲日本一区二区三区在线 | 国产精品美女久久久网av | 亚洲日韩乱码中文无码蜜桃臀网站 | 国产精品资源一区二区 | 日本xxxx色视频在线观看免费 | 沈阳熟女露脸对白视频 | 欧美 丝袜 自拍 制服 另类 | 欧美一区二区三区 | 久久人人97超碰a片精品 | 中文字幕无码人妻少妇免费 | 欧美熟妇另类久久久久久不卡 | 最新国产乱人伦偷精品免费网站 | 人人澡人摸人人添 | 欧美黑人性暴力猛交喷水 | 久久天天躁狠狠躁夜夜免费观看 | 精品无码一区二区三区爱欲 | 一个人免费观看的www视频 | 久久亚洲精品中文字幕无男同 | 女人被男人爽到呻吟的视频 | 国产精品久免费的黄网站 | 亚洲国产精品无码久久久久高潮 | 沈阳熟女露脸对白视频 | 中文字幕+乱码+中文字幕一区 | 成人免费无码大片a毛片 | 日本一区二区更新不卡 | 国产乱码精品一品二品 | 精品无码国产自产拍在线观看蜜 | 国产国产精品人在线视 | 国产午夜无码视频在线观看 | 精品国产乱码久久久久乱码 | 日本丰满护士爆乳xxxx | 色一情一乱一伦一视频免费看 | 大屁股大乳丰满人妻 | 鲁大师影院在线观看 | 领导边摸边吃奶边做爽在线观看 | 波多野42部无码喷潮在线 | 亚洲 激情 小说 另类 欧美 | 亚洲一区二区三区国产精华液 | 日本熟妇浓毛 | 澳门永久av免费网站 | 在线看片无码永久免费视频 | 天堂一区人妻无码 | а√天堂www在线天堂小说 | 99久久久国产精品无码免费 | 亚洲一区二区三区 | 国产免费久久精品国产传媒 | 男女作爱免费网站 | 无码成人精品区在线观看 | 日本精品少妇一区二区三区 | а√天堂www在线天堂小说 | 无码av岛国片在线播放 | 成人综合网亚洲伊人 | 国产乱人伦偷精品视频 | 麻豆精品国产精华精华液好用吗 | 中文字幕无码日韩专区 | 人妻天天爽夜夜爽一区二区 | 成 人影片 免费观看 | 啦啦啦www在线观看免费视频 | 久久久久成人精品免费播放动漫 | 草草网站影院白丝内射 | 激情内射亚州一区二区三区爱妻 | 欧美日韩综合一区二区三区 | 在教室伦流澡到高潮hnp视频 | 国産精品久久久久久久 | 无遮挡国产高潮视频免费观看 | 久久99精品国产.久久久久 | 亚洲 另类 在线 欧美 制服 | 久久综合九色综合欧美狠狠 | 99精品无人区乱码1区2区3区 | 亚洲综合精品香蕉久久网 | 国产极品美女高潮无套在线观看 | 性欧美大战久久久久久久 | 久久久久久av无码免费看大片 | 国产精品久久福利网站 | 国产电影无码午夜在线播放 | 日韩精品一区二区av在线 | 人妻aⅴ无码一区二区三区 | 久久久久久久人妻无码中文字幕爆 | 久久久国产精品无码免费专区 | 无码人妻丰满熟妇区五十路百度 | 欧美喷潮久久久xxxxx | 色一情一乱一伦 | 成人动漫在线观看 | 精品久久综合1区2区3区激情 | 国产午夜手机精彩视频 | 国模大胆一区二区三区 | 国产熟女一区二区三区四区五区 | 98国产精品综合一区二区三区 | 少妇人妻偷人精品无码视频 | 女高中生第一次破苞av | 无码帝国www无码专区色综合 | 中文字幕人成乱码熟女app | 欧美性生交活xxxxxdddd | 性开放的女人aaa片 | 国产特级毛片aaaaaaa高清 | 亚洲另类伦春色综合小说 | 国产av无码专区亚洲awww | 男女作爱免费网站 | 欧美老妇与禽交 | 国模大胆一区二区三区 | 精品人妻中文字幕有码在线 | 亚无码乱人伦一区二区 | 亚洲aⅴ无码成人网站国产app | 精品成人av一区二区三区 | 领导边摸边吃奶边做爽在线观看 | 亚洲国产精品无码一区二区三区 | 国产亚洲精品久久久闺蜜 | 精品亚洲韩国一区二区三区 | 国产精品手机免费 | 色综合久久久无码网中文 | 男人扒开女人内裤强吻桶进去 | 国产成人精品久久亚洲高清不卡 | 天堂а√在线地址中文在线 | 国产亚洲欧美日韩亚洲中文色 | 亚洲欧美国产精品专区久久 | 欧美日韩久久久精品a片 | 一二三四社区在线中文视频 | 色妞www精品免费视频 | 中文字幕乱妇无码av在线 | 精品国产一区av天美传媒 | 又大又黄又粗又爽的免费视频 | 久久精品国产99久久6动漫 | 精品一区二区三区波多野结衣 | 亚洲中文无码av永久不收费 | 国产午夜无码视频在线观看 | 午夜熟女插插xx免费视频 | 狠狠色噜噜狠狠狠狠7777米奇 | 久久精品视频在线看15 | 桃花色综合影院 | 久久99精品国产.久久久久 | 国产片av国语在线观看 | 亚洲天堂2017无码 | 水蜜桃亚洲一二三四在线 | 日本护士毛茸茸高潮 | 日本一区二区三区免费播放 | 乱人伦人妻中文字幕无码久久网 | 国产婷婷色一区二区三区在线 | 精品国产成人一区二区三区 | 红桃av一区二区三区在线无码av | 亚洲综合久久一区二区 | 中文字幕 人妻熟女 | 色诱久久久久综合网ywww | 东京热男人av天堂 | 国产网红无码精品视频 | 秋霞特色aa大片 | 亚洲精品一区二区三区四区五区 | 中国大陆精品视频xxxx | 午夜福利一区二区三区在线观看 | 国产亚洲日韩欧美另类第八页 | 在线a亚洲视频播放在线观看 | 色一情一乱一伦一区二区三欧美 | 欧美熟妇另类久久久久久不卡 | 清纯唯美经典一区二区 | 无码人妻精品一区二区三区下载 | 久久亚洲a片com人成 | 国产亲子乱弄免费视频 | 动漫av网站免费观看 | 日日鲁鲁鲁夜夜爽爽狠狠 | 欧美老熟妇乱xxxxx | 久久综合九色综合97网 | 丰满诱人的人妻3 | 强伦人妻一区二区三区视频18 | 亚洲国产精品无码一区二区三区 | 又色又爽又黄的美女裸体网站 | 丰满岳乱妇在线观看中字无码 | 亚洲一区二区三区无码久久 | 国内精品九九久久久精品 | 台湾无码一区二区 | 精品国产av色一区二区深夜久久 | 久久久久99精品成人片 | 国产亚av手机在线观看 | 亚洲综合另类小说色区 | 国产偷抇久久精品a片69 | 99久久无码一区人妻 | 奇米影视7777久久精品人人爽 | 夜先锋av资源网站 | 狂野欧美性猛交免费视频 | 无码成人精品区在线观看 | 女人色极品影院 | 免费看男女做好爽好硬视频 | 久久久久久a亚洲欧洲av冫 | 色婷婷综合激情综在线播放 | 图片区 小说区 区 亚洲五月 | 无码人妻av免费一区二区三区 | 麻豆国产人妻欲求不满谁演的 | 大肉大捧一进一出好爽视频 | 天天拍夜夜添久久精品大 | 亚洲欧美综合区丁香五月小说 | 成人精品视频一区二区三区尤物 | 香蕉久久久久久av成人 | 亚洲欧美综合区丁香五月小说 | 夜夜影院未满十八勿进 | 国产一精品一av一免费 | 好爽又高潮了毛片免费下载 | 丝袜 中出 制服 人妻 美腿 | 人妻熟女一区 | 俺去俺来也在线www色官网 | 国内老熟妇对白xxxxhd | 精品无人国产偷自产在线 | 国产办公室秘书无码精品99 | 亚洲精品久久久久avwww潮水 | 99久久久无码国产精品免费 | 国产精品香蕉在线观看 | 美女张开腿让人桶 | 日韩人妻少妇一区二区三区 | 麻豆国产丝袜白领秘书在线观看 | 国产精品a成v人在线播放 | 精品无码国产自产拍在线观看蜜 | 国产办公室秘书无码精品99 | 亚洲精品综合一区二区三区在线 | 国产情侣作爱视频免费观看 | 乱人伦中文视频在线观看 | 88国产精品欧美一区二区三区 | 精品国产aⅴ无码一区二区 | 精品国产成人一区二区三区 | 欧美肥老太牲交大战 | 国产亚洲欧美在线专区 | 午夜性刺激在线视频免费 | 亚洲精品www久久久 | 内射老妇bbwx0c0ck | 久久伊人色av天堂九九小黄鸭 | 日韩少妇白浆无码系列 | 亚洲日韩av一区二区三区四区 | 日本饥渴人妻欲求不满 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 毛片内射-百度 | 国产在线精品一区二区三区直播 | 国产欧美亚洲精品a | 最新版天堂资源中文官网 | 精品无码国产自产拍在线观看蜜 | 国产亲子乱弄免费视频 | 日本一区二区更新不卡 | 亚洲中文字幕成人无码 | 国产又爽又黄又刺激的视频 | 激情内射亚州一区二区三区爱妻 | 午夜精品一区二区三区的区别 | 精品成人av一区二区三区 | 樱花草在线社区www | 理论片87福利理论电影 | 伊在人天堂亚洲香蕉精品区 | 又粗又大又硬又长又爽 | 丰满护士巨好爽好大乳 | 国产精品久久国产三级国 | 色婷婷综合中文久久一本 | 久在线观看福利视频 | 久久国内精品自在自线 | 狠狠色欧美亚洲狠狠色www | 亚洲国产午夜精品理论片 | 亚洲中文字幕成人无码 | 波多野结衣 黑人 | 天堂一区人妻无码 | 中文字幕+乱码+中文字幕一区 | 久久午夜无码鲁丝片 | 国产精品久久久久影院嫩草 | 曰韩无码二三区中文字幕 | 极品尤物被啪到呻吟喷水 | 日韩无套无码精品 | 美女张开腿让人桶 | 亚洲精品国产第一综合99久久 | 国内精品人妻无码久久久影院 | 国产精品鲁鲁鲁 | 人妻天天爽夜夜爽一区二区 | 精品久久综合1区2区3区激情 | 成熟女人特级毛片www免费 | 欧美精品一区二区精品久久 | 少妇人妻偷人精品无码视频 | 亚洲成av人片在线观看无码不卡 | 少妇性荡欲午夜性开放视频剧场 | 精品无码一区二区三区的天堂 | 初尝人妻少妇中文字幕 | 国内精品一区二区三区不卡 | 对白脏话肉麻粗话av | 久久精品国产一区二区三区 | 国产 浪潮av性色四虎 | 欧美zoozzooz性欧美 | 久久久www成人免费毛片 | 精品厕所偷拍各类美女tp嘘嘘 | 人妻中文无码久热丝袜 | 在教室伦流澡到高潮hnp视频 | 亚洲欧洲中文日韩av乱码 | 亚洲aⅴ无码成人网站国产app | 人妻插b视频一区二区三区 | 欧洲熟妇精品视频 | 精品久久久无码中文字幕 | 99久久久无码国产精品免费 | 人人妻人人澡人人爽欧美精品 | 亚洲欧洲日本综合aⅴ在线 | 欧美三级不卡在线观看 | 久久精品国产一区二区三区 | 亚洲区小说区激情区图片区 | 亚洲欧洲日本无在线码 | 捆绑白丝粉色jk震动捧喷白浆 | 成年美女黄网站色大免费视频 | 国产精品免费大片 | 精品少妇爆乳无码av无码专区 | 亚洲色欲色欲欲www在线 | 欧美放荡的少妇 | 亚洲欧洲日本综合aⅴ在线 | 黑森林福利视频导航 | 精品国产乱码久久久久乱码 | 兔费看少妇性l交大片免费 | 色欲av亚洲一区无码少妇 | 久久精品女人的天堂av | 久久国产自偷自偷免费一区调 | 精品国产福利一区二区 | 麻豆md0077饥渴少妇 | 亚洲a无码综合a国产av中文 | 国产精品va在线观看无码 | 国产精品无码一区二区三区不卡 | 色妞www精品免费视频 | 久久99精品国产麻豆蜜芽 | 麻豆精品国产精华精华液好用吗 | 日韩av激情在线观看 | 中文字幕无码人妻少妇免费 | 少妇高潮喷潮久久久影院 | 日本www一道久久久免费榴莲 | 动漫av一区二区在线观看 | 最新版天堂资源中文官网 | 日本一区二区更新不卡 | 久久精品女人的天堂av | 精品国产一区二区三区四区在线看 | 亚洲成熟女人毛毛耸耸多 | 又大又黄又粗又爽的免费视频 | yw尤物av无码国产在线观看 | 成人试看120秒体验区 | 中文字幕亚洲情99在线 | 久久综合网欧美色妞网 | 亚洲七七久久桃花影院 | 未满成年国产在线观看 | 亚洲精品美女久久久久久久 | 在线播放无码字幕亚洲 | 亚洲国产精华液网站w | 色五月丁香五月综合五月 | 精品久久久无码人妻字幂 | 久久亚洲中文字幕精品一区 | 日韩亚洲欧美精品综合 | 国产精品手机免费 | 一本久久a久久精品vr综合 | 性欧美videos高清精品 | 亚洲第一无码av无码专区 | 久久天天躁狠狠躁夜夜免费观看 | 亚洲毛片av日韩av无码 | 少妇激情av一区二区 | 国产精品99久久精品爆乳 | 国产尤物精品视频 | 亚洲色大成网站www国产 | 天天综合网天天综合色 | 狠狠噜狠狠狠狠丁香五月 | 国产精品久久久久久久9999 | 国产精品内射视频免费 | 欧美野外疯狂做受xxxx高潮 | 999久久久国产精品消防器材 | 国产精品久久久久久久9999 | 乱人伦人妻中文字幕无码久久网 | 无码av免费一区二区三区试看 | 偷窥日本少妇撒尿chinese | 亚无码乱人伦一区二区 | 久久精品女人的天堂av | 精品久久久中文字幕人妻 | 精品亚洲韩国一区二区三区 | 六月丁香婷婷色狠狠久久 | 国产精品久久久久久亚洲影视内衣 | 人妻体内射精一区二区三四 | 永久免费精品精品永久-夜色 | 亚洲综合伊人久久大杳蕉 | 人妻少妇精品久久 | 精品无码成人片一区二区98 | 熟妇激情内射com | 日本丰满熟妇videos | 国产香蕉97碰碰久久人人 | 老太婆性杂交欧美肥老太 | 99久久久无码国产精品免费 | 牛和人交xxxx欧美 | 又色又爽又黄的美女裸体网站 | 一本大道久久东京热无码av | 日韩少妇白浆无码系列 | 色五月五月丁香亚洲综合网 | 久久精品国产一区二区三区肥胖 | 欧美猛少妇色xxxxx | 熟妇人妻中文av无码 | 成年美女黄网站色大免费视频 | 亚洲 a v无 码免 费 成 人 a v | 久久aⅴ免费观看 | 精品偷拍一区二区三区在线看 | 日韩欧美中文字幕在线三区 | 国产精品久久国产精品99 | 成人欧美一区二区三区黑人免费 | 国内精品久久久久久中文字幕 | 免费播放一区二区三区 | 国产成人综合美国十次 | √天堂资源地址中文在线 | 在线a亚洲视频播放在线观看 | 亚洲精品欧美二区三区中文字幕 | 亚洲精品一区二区三区在线 | 亚洲欧洲日本综合aⅴ在线 | 无码帝国www无码专区色综合 | 自拍偷自拍亚洲精品被多人伦好爽 | 欧美丰满少妇xxxx性 | 久激情内射婷内射蜜桃人妖 | 亚洲呦女专区 | 日韩人妻少妇一区二区三区 | 亚洲精品www久久久 | 国产午夜无码精品免费看 | 牲欲强的熟妇农村老妇女视频 | 爽爽影院免费观看 | 亚洲一区二区观看播放 | 丰满妇女强制高潮18xxxx | 夜夜高潮次次欢爽av女 | 国产精品va在线观看无码 | 国产乡下妇女做爰 | 成年美女黄网站色大免费视频 | 久久久精品国产sm最大网站 | 亚洲色大成网站www | 伊人久久大香线蕉午夜 | 国内精品久久毛片一区二区 | 夫妻免费无码v看片 | 精品 日韩 国产 欧美 视频 | 久久精品人人做人人综合试看 | 人妻无码久久精品人妻 | 一个人免费观看的www视频 | 亚洲精品无码国产 | aⅴ在线视频男人的天堂 | 一本精品99久久精品77 | 无码人妻丰满熟妇区毛片18 | 黑人巨大精品欧美一区二区 | 成年美女黄网站色大免费全看 | 亚洲日本va中文字幕 | 成熟女人特级毛片www免费 | 午夜男女很黄的视频 | 最新国产麻豆aⅴ精品无码 | 高潮毛片无遮挡高清免费视频 | 亚洲精品一区二区三区在线观看 | 亚洲综合精品香蕉久久网 | 狠狠躁日日躁夜夜躁2020 | 亚洲gv猛男gv无码男同 | 国产免费久久久久久无码 | 亚洲热妇无码av在线播放 | 牲交欧美兽交欧美 | 无码一区二区三区在线观看 | √天堂资源地址中文在线 | 中文字幕无线码免费人妻 | 国内精品一区二区三区不卡 | 学生妹亚洲一区二区 | 日本乱偷人妻中文字幕 | 九九久久精品国产免费看小说 | 欧美日韩视频无码一区二区三 | 国产 精品 自在自线 | 亚洲精品美女久久久久久久 | 色综合久久中文娱乐网 | 夜夜夜高潮夜夜爽夜夜爰爰 | 秋霞成人午夜鲁丝一区二区三区 | 无码播放一区二区三区 | 131美女爱做视频 | 日韩少妇白浆无码系列 | 一本大道伊人av久久综合 | 乌克兰少妇xxxx做受 | 日本高清一区免费中文视频 | 99久久婷婷国产综合精品青草免费 | 兔费看少妇性l交大片免费 | 婷婷综合久久中文字幕蜜桃三电影 | 中文字幕无码av波多野吉衣 | 中文字幕 亚洲精品 第1页 | 色婷婷综合中文久久一本 | 精品无码国产自产拍在线观看蜜 | 久久久久se色偷偷亚洲精品av | 露脸叫床粗话东北少妇 | 老司机亚洲精品影院无码 | 亚洲综合无码一区二区三区 | 亚洲精品中文字幕乱码 | 无码人妻av免费一区二区三区 | 欧美第一黄网免费网站 | 曰本女人与公拘交酡免费视频 | 精品久久久久久人妻无码中文字幕 | 久久zyz资源站无码中文动漫 | 亚洲欧美色中文字幕在线 | 亚洲国产精品毛片av不卡在线 | 少妇人妻av毛片在线看 | 国内精品一区二区三区不卡 | 六月丁香婷婷色狠狠久久 | 婷婷五月综合激情中文字幕 | 国内精品人妻无码久久久影院 | 丰满人妻一区二区三区免费视频 | 久久精品国产日本波多野结衣 | 18禁黄网站男男禁片免费观看 | 国产色精品久久人妻 | 久久99热只有频精品8 | 国产高清av在线播放 | 任你躁在线精品免费 | 2020最新国产自产精品 | 日本大香伊一区二区三区 | 一本精品99久久精品77 | 国产精品第一国产精品 | 亚洲乱亚洲乱妇50p |