日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

TPS、并發(fā)數(shù)、響應(yīng)時間底層關(guān)系:從Little定律到性能測試實踐

TPS、并發(fā)數(shù)、響應(yīng)時間底層關(guān)系:從Little定律到性能測試實踐 在這個月面試了 10 個候選人之后我只能說“會做性能測試”和“懂性能測試”之間隔著一條很深的認知鴻溝。絕大多數(shù)簡歷上寫著“熟練掌握 JMeter有性能測試實戰(zhàn)經(jīng)驗”的候選人都能熟練地告訴我線程數(shù)設(shè)多少、Ramp-Up 怎么配、聚合報告怎么看。但當(dāng)我把這個問題拋出去——TPS、并發(fā)數(shù)、響應(yīng)時間這三者的底層關(guān)系是什么——場面往往會陷入尷尬的沉默。有人照著面試題背答案“TPS 并發(fā)數(shù) / 響應(yīng)時間”。這個公式對嗎對但不全對。它只在極理想的模型下成立。一旦系統(tǒng)出現(xiàn)排隊、資源爭搶、線程阻塞這個公式會把你的測試引向一個深坑。還有一個有意思的現(xiàn)象是最近搜“jmeter 性能測試步驟”的人特別多但很多人在第一步就錯了他們根本不確認系統(tǒng)真實的并發(fā)用戶數(shù)是多少直接設(shè)置線程數(shù) 500、1000 就開始壓。壓出來的 TPS 很漂亮卻是“虛高”的。這篇文章不打算繼續(xù)講 JMeter 的按鈕在哪那些基礎(chǔ)操作屬于入門教程。我真正想做的是把 TPS、并發(fā)數(shù)、響應(yīng)時間三者在底層的關(guān)系徹底講透包括它們怎么互相影響、為什么會出現(xiàn) TPS 虛高、真實業(yè)務(wù)場景中這個關(guān)系會發(fā)生什么變形以及面試中怎么回答才不會被面試官追問到原地“爆炸”。讀完這篇文章你至少能得到三樣?xùn)|西一套能說服面試官的、關(guān)于三者關(guān)系的底層邏輯框架。一個判斷系統(tǒng)真實并發(fā)承載能力的“靠譜”方法。若干直接能用于工作場景的性能測試設(shè)計思路。1. 這篇文章真正要解決的問題先說一個扎心的事實大部分性能測試報告寫出來只是為了應(yīng)付上線檢查而不是為了發(fā)現(xiàn)系統(tǒng)瓶頸。如果你只是想把壓測報告做得“好看”那不需要理解三者的底層關(guān)系——把線程數(shù)拉高把聚合報告里的 TPS 看成一個數(shù)字截圖貼上去完事。但如果你要解決的是以下任何一個問題你就必須從根本上搞明白這三者的關(guān)系線上出現(xiàn)卡頓或超時但你在測試環(huán)境壓不出來。測試環(huán)境怎么壓都穩(wěn)如老狗一到線上就出問題。老板問“我們系統(tǒng)能扛多少并發(fā)”你給不出一個可信的數(shù)字。不是不愿意給是你根本不知道從哪個維度推導(dǎo)。你壓測出來的 TPS 很高但上線后一遇活動流量就掛。你想做容量評估、限流配置、容量規(guī)劃但不知道用哪個指標做依據(jù)。很多人以為性能測試的核心是“會用壓測工具”其實性能測試的核心是建立指標之間的換算關(guān)系。你需要的不是一個孤立的 TPS 數(shù)字而是“在什么并發(fā)數(shù)下、響應(yīng)時間達到多少、TPS 還能不能撐住”的關(guān)聯(lián)模型。這篇文章就是圍繞這個關(guān)聯(lián)模型展開的先從底層定義開始把三個概念從“你腦子里的模糊印象”撥正為“可計算、可推導(dǎo)的工程指標”再拆解三者之間在不同系統(tǒng)狀態(tài)下會經(jīng)歷怎樣的關(guān)系變化接著用真實的場景案例講清楚為什么并發(fā)數(shù)翻倍后 TPS 反而下降最后回到 JMeter 操作層面告訴你一套能落地的壓測設(shè)計方法。不管你是準備性能測試面試還是正在寫壓測方案這篇文章的目標都是讓你從“會用工具”提升到“能講清楚系統(tǒng)表現(xiàn)”。2. 先把三個概念徹底說清楚從生活場景到技術(shù)定義在推導(dǎo)關(guān)系之前必須先確保我們聊的是同一個“并發(fā)數(shù)”。很多人在這一步已經(jīng)跑偏了。面試時我經(jīng)常追問“你的并發(fā)數(shù)是怎么定的”答案五花八門有說線程數(shù)的有說注冊用戶數(shù)的有說同時在線數(shù)的。這些說法都混淆了不同層面的并發(fā)概念。2.1 并發(fā)數(shù)是“同時發(fā)出的請求數(shù)”不是“在線人數(shù)”為了把這個問題說透先講一個生活場景。想象一家銀行網(wǎng)點有 3 個柜臺窗口相當(dāng)于系統(tǒng)有 3 個處理線程大廳里坐著 50 個等待辦理業(yè)務(wù)的客戶。這時候真正的“并發(fā)數(shù)”是多少不是 50。50 個客戶坐在大廳里只能叫“在線人數(shù)”或者“待處理任務(wù)數(shù)”。真正的并發(fā)數(shù)是同一時刻正在窗口辦理業(yè)務(wù)的客戶數(shù)量——也就是最多 3 個。其他 47 個人要么在排隊要么在填單子他們沒有占用柜臺資源。從技術(shù)上理解并發(fā)數(shù)是同一時刻系統(tǒng)正在處理的請求數(shù)量也就是“在途請求數(shù)”。這個“在途”包括請求已經(jīng)在操作系統(tǒng)網(wǎng)絡(luò)隊列里等待、已經(jīng)被應(yīng)用接收、正在執(zhí)行 SQL、正在等待下游依賴返回等所有狀態(tài)。這個區(qū)別非常關(guān)鍵。你做壓測的時候把 JMeter 線程數(shù)設(shè)為 500這 500 個只是“正在嘗試發(fā)起請求的客戶端”它們大多處在等待響應(yīng)階段并不等同于系統(tǒng)“同一時刻正在處理”的請求數(shù)更不是業(yè)務(wù)層面真正的“在線用戶數(shù)”。我用一個稍微嚴謹一點的說法幫助記憶并發(fā)用戶數(shù)在線用戶數(shù)業(yè)務(wù)概念應(yīng)用層有多少用戶同時活躍。并發(fā)請求數(shù)在途請求數(shù)技術(shù)概念系統(tǒng)同時處理的請求量。壓測線程數(shù)施壓數(shù)工具概念你開了多少并發(fā)連接去發(fā)起請求。三者有關(guān)聯(lián)但絕不是一回事。2.2 響應(yīng)時間一個被你錯誤統(tǒng)計的指標響應(yīng)時間Response Time, RT字面理解是“從發(fā)起請求到收到完整響應(yīng)的時間”。但在性能測試中你需要把這條時間鏈路拆開看。一次完整的請求耗時通常包括網(wǎng)絡(luò)傳輸時間客戶端到服務(wù)器的往返時延RTT。排隊時間請求到達服務(wù)器后在連接池、線程池、隊列里等待被處理的時間。處理時間應(yīng)用執(zhí)行業(yè)務(wù)邏輯、讀寫數(shù)據(jù)庫、調(diào)用下游接口的時間。響應(yīng)傳輸時間結(jié)果返回客戶端的時間。這里有一個最常見的坑JMeter 中顯示的響應(yīng)時間默認只包含“從發(fā)出請求到收到響應(yīng)”的時間它包含了網(wǎng)絡(luò)、排隊和處理時間但不包含你在前置處理器、后置處理器中所做操作的時間。更關(guān)鍵的是響應(yīng)時間是一個分布不是一個固定的數(shù)。同一系統(tǒng)在同樣的壓力下1 個請求可能 50ms 返回另 1 個請求可能 800ms 返回。所以你應(yīng)該關(guān)注的是響應(yīng)時間分布平均值A(chǔ)vg容易被極端值拉偏參考意義有限。TP90 / TP95 / TP9990%95%、99%的請求耗時在多少毫秒以內(nèi)。這個比平均值更接近真實體驗。最大值Max常被 GC垃圾回收、網(wǎng)絡(luò)抖動之類因素拉得極高看個趨勢就好別拿來做結(jié)論。在后面的關(guān)系模型里我提到的響應(yīng)時間都默認指“穩(wěn)定狀態(tài)下的平均響應(yīng)時間”。在做性能評估、容量規(guī)劃時建議你把 TP99 作為核心指標。2.3 TPS事務(wù)吞吐量系統(tǒng)的“實際產(chǎn)能”TPSTransactions Per Second是每秒完成的事務(wù)數(shù)。它衡量的不是系統(tǒng)能“接收”多少請求而是系統(tǒng)能“完成”多少業(yè)務(wù)操作。這里有個區(qū)別需要明確TPS 和 QPSQueries Per Second經(jīng)常被混用。嚴格來說QPS偏重“查詢”類請求每秒查詢量。TPS偏重“事務(wù)”類請求它更強調(diào)一個完整業(yè)務(wù)操作通??赡馨鄠€請求。舉個例子你打開一次訂單列表頁面會同時調(diào) 3 個接口。從 JMeter 的角度如果你給每個接口各創(chuàng)建一個 Sampler一次打開頁面就是 3 個請求如果你把整個操作封裝成一個“邏輯事務(wù)”那一次頁面打開就是 1 個事務(wù)。在做性能壓測時比較規(guī)范的做法是用“事務(wù)”作為計量單位而不是用“請求數(shù)”。因為業(yè)務(wù)方最關(guān)心的往往是“每秒能完成多少訂單”而不是“每秒能處理多少 HTTP 請求”。如果壓測報告上只寫“TPS 500”卻沒有說明這個 TPS 是接口級別的還是業(yè)務(wù)事務(wù)級別的這份報告的參考價值要打一個很大的折扣。2.4 一個簡單的三句話總結(jié)為了后文推導(dǎo)方便先把三個概念的準確描述統(tǒng)一起來并發(fā)數(shù)表示的是“系統(tǒng)同時處理的在途請求數(shù)量”它決定了系統(tǒng)處于什么壓力相位。響應(yīng)時間表示的是“一個請求完成一次完整往返的代價”它反映單個用戶感受到的快慢。TPS 表示的是“系統(tǒng)單位時間內(nèi)真正處理完的事務(wù)總量”它反映的是系統(tǒng)的產(chǎn)能。一句話概括并發(fā)數(shù)是施壓的強度響應(yīng)時間是單筆處理的代價TPS 是系統(tǒng)整體的產(chǎn)出能力。接下來我們就要推導(dǎo)這三者之間到底存在什么樣的數(shù)學(xué)底層關(guān)系。3. 三者關(guān)系的核心模型從 Little 定律到實戰(zhàn)公式3.1 排隊論視角下的核心公式在性能工程的底層理論中有一個幾乎繞不開的定律——Little 定律。它最初來自排隊論后來被廣泛應(yīng)用在計算機系統(tǒng)性能分析中。Little 定律的數(shù)學(xué)表達式很簡潔L λ × W翻譯成性能測試術(shù)語就是并發(fā)數(shù)L TPSλ × 平均響應(yīng)時間W什么意思呢它描述的是一個處于穩(wěn)定狀態(tài)的系統(tǒng)內(nèi)部同時在處理的任務(wù)數(shù)并發(fā)數(shù)等于單位時間新到達并被處理完成的任務(wù)數(shù)TPS乘以每個任務(wù)在系統(tǒng)內(nèi)部停留的時間響應(yīng)時間。這個公式非常重要因為它建立了三個指標之間的硬性換算關(guān)系?;谶@個公式可以導(dǎo)出兩個常用形態(tài)TPS 并發(fā)數(shù) / 平均響應(yīng)時間 平均響應(yīng)時間 并發(fā)數(shù) / TPS3.2 為什么教科書公式在實戰(zhàn)中經(jīng)?!笆А蹦銜诤芏嗝嬖囶}和培訓(xùn)資料里看到上面的推導(dǎo)公式。但如果實際壓測過系統(tǒng)你一定會發(fā)現(xiàn)一個現(xiàn)象并發(fā)數(shù)從 100 提到 300TPS 絕對不是按 3 倍線性增長。原因在于Little 定律有一個隱含假設(shè)——系統(tǒng)處于穩(wěn)定狀態(tài)沒有過載沒有隊列溢出沒有資源競爭激化。說得更直白一點Little 定律假設(shè)系統(tǒng)是一個“理想管道”。但真實系統(tǒng)不是理想管道真實系統(tǒng)有線程池上限處理線程被占滿后新增請求只能排隊。數(shù)據(jù)庫連接池上限連接不夠用應(yīng)用線程阻塞等待。CPU 多核爭搶線程切換開銷變大真正干活的時間比例變小。鎖競爭多個線程同時搶一把鎖串行化的時間變長。內(nèi)存 GC并發(fā)升高后GC 頻率上升Stop-The-World 導(dǎo)致響應(yīng)時間惡化。當(dāng)這些瓶頸開始顯現(xiàn)時關(guān)系模型就變成了這樣并發(fā)數(shù)繼續(xù)上升 → 響應(yīng)時間快速惡化 → TPS 不再上升甚至下降這個拐點就是性能測試中最重要的發(fā)現(xiàn)系統(tǒng)的最佳并發(fā)區(qū)間在哪里。為了讓你看清楚這個變化過程我用一張關(guān)系演變表來描述系統(tǒng)從空閑到被打垮的過程階段并發(fā)數(shù)變化響應(yīng)時間TPS 變化系統(tǒng)狀態(tài)空閑期低并發(fā)穩(wěn)定且小隨并發(fā)線性上升資源空閑產(chǎn)能未被充分使用健康期并發(fā)提升輕微上升總體平穩(wěn)隨并發(fā)近似線性增長資源利用率逐漸提升飽和點到達拐點開始明顯上升增長趨緩達到峰值某個資源開始打滿過載區(qū)繼續(xù)加壓急劇上升不增反降排隊嚴重資源耗盡崩壞區(qū)極端高并發(fā)大量超時大幅下跌線程池拒絕、連接池滿、雪崩風(fēng)險這五個階段至關(guān)重要。所謂“懂性能測試”核心就是能識別出你的系統(tǒng)當(dāng)前處于哪個階段以及拐點在哪里。3.3 用一個具體場景驗證公式假設(shè)有一個系統(tǒng)壓測場景如下平均響應(yīng)時間 200ms0.2 秒并發(fā)數(shù) 50按公式計算TPS 50 / 0.2 250這說明如果每個請求耗時 0.2 秒系統(tǒng)同時能處理 50 個請求那 1 秒內(nèi)能處理完 250 個請求?,F(xiàn)在把并發(fā)數(shù)提升到 100會出現(xiàn)什么情況理想情況如果系統(tǒng)資源充足、沒有競爭響應(yīng)時間仍為 0.2 秒則 TPS 100 / 0.2 500翻倍。常見情況并發(fā)提升后線程切換、鎖競爭、數(shù)據(jù)庫連接等待一起出現(xiàn)平均響應(yīng)時間可能漲到 0.35 秒那么 TPS 100 / 0.35 ≈ 286。雖然并發(fā)翻倍了TPS 只多了 14%。過載情況并發(fā)數(shù)到 200 以后響應(yīng)時間漲到 1.2 秒TPS 200 / 1.2 ≈ 167不但沒漲反而比并發(fā) 100 時更低。這就是為什么很多人在壓測時會看到“TPS 虛高”或“TPS 暴跌”的現(xiàn)象——因為測試沒有建立“由響應(yīng)時間推導(dǎo) TPS”的意識只是機械地增加線程數(shù)看著聚合報告里的數(shù)字上躥下跳卻說不出系統(tǒng)到底哪里出了問題。4. 真實系統(tǒng)里三者關(guān)系會發(fā)生哪些變形4.1 不同接口類型下的關(guān)系差異很多剛接觸性能測試的人會犯一個錯誤把所有接口都用同一套并發(fā)-響應(yīng)時間模型來理解。實際上不同接口類型下三者的關(guān)系表現(xiàn)差異巨大。先看“快接口”。典型的例子是查詢類的接口比如登錄校驗、緩存查詢、狀態(tài)檢查。這類接口響應(yīng)時間很短通常在 5ms 到 50ms 之間。在低并發(fā)階段它們能支撐非常高的 TPS因為每個請求在系統(tǒng)內(nèi)逗留時間極短。但這類接口一旦并發(fā)打高最先出現(xiàn)問題的是網(wǎng)絡(luò)層和線程池響應(yīng)時間可能從 10ms 暴漲到 500ms。再看“慢業(yè)務(wù)”。典型例子是報表導(dǎo)出、批量任務(wù)、大文件上傳、涉及大量復(fù)雜 SQL 的查詢。這類接口響應(yīng)時間可能在 1 秒甚至更長。重點在于慢接口是 TPS 的天敵。同樣是 100 個并發(fā)請求快接口能輕松做到 2000 TPS慢業(yè)務(wù)可能只能做到 50 TPS。不是因為系統(tǒng)能力差異而是因為每個請求占據(jù)處理線程的時間太長。這種差異在容量規(guī)劃時的含義完全不同。壓測一個查詢接口時你可以用“并發(fā)數(shù) 500、TPS 3000”來規(guī)劃但壓測一個導(dǎo)出報表接口時同樣的并發(fā)數(shù) 500 可能直接把系統(tǒng)打掛因為每個請求處理時間太長線程池很快就耗盡了。4.2 有狀態(tài)系統(tǒng)與無狀態(tài)系統(tǒng)的區(qū)別另外一個影響三者關(guān)系的因素是系統(tǒng)的“狀態(tài)性”。無狀態(tài)應(yīng)用比如純 Redis 查詢、靜態(tài)資源服務(wù)、計算型接口不依賴會話數(shù)據(jù)、不持有用戶狀態(tài)。它的并發(fā)模型相對簡單Little 定律的推導(dǎo)會比較貼近現(xiàn)實。資源充足時并發(fā)和 TPS 基本線性關(guān)系。有狀態(tài)應(yīng)用比如在線交易、購物車、WebSocket 長連接、分布式鎖、樂觀鎖更新等。此時系統(tǒng)不僅要處理計算還要處理“狀態(tài)同步”。并發(fā)升高時數(shù)據(jù)一致性、鎖沖突、臟讀重試帶來的額外開銷會急劇增加響應(yīng)時間會非線性上升。從壓測角度看有狀態(tài)系統(tǒng)的性能測試絕不能用無狀態(tài)系統(tǒng)的“線性模型”去預(yù)測結(jié)果。你必須通過階梯加壓的方式找到真實的飽和點。4.3 異步化對三者的關(guān)系顛覆還有一個不可忽視的變量異步化。如果系統(tǒng)大量使用消息隊列、異步回調(diào)、線程池異步處理用戶的“請求-響應(yīng)”鏈路和“業(yè)務(wù)處理鏈路”就解耦了。這種情況下會出現(xiàn)什么對用戶來說響應(yīng)時間變短了因為請求只是被接收后放進了隊列立即返回“受理成功”。對系統(tǒng)來說真正的業(yè)務(wù)處理是在后臺異步進行的TPS 的計量口徑變了。對壓測來說你看到的響應(yīng)時間是“受理時間”而不是“業(yè)務(wù)完成時間”。此時仍套用“TPS 并發(fā)數(shù) / 響應(yīng)時間”就會得出嚴重失真的結(jié)論。一個系統(tǒng)中如果有大量異步處理你必須分別觀察“入口 TPS”和“處理 TPS”以及兩者之間的隊列積壓量。隊列積壓量才是觀察系統(tǒng)壓力的關(guān)鍵指標而不是直接看響應(yīng)時間。所以在回答三者關(guān)系之前先要反問當(dāng)前系統(tǒng)是同步的還是異步的如果是異步系統(tǒng)三者的關(guān)系鏈條要重新梳理。5. 為什么你會看到“TPS 虛高”——并發(fā)數(shù)、響應(yīng)時間與統(tǒng)計口徑的三角關(guān)系“TPS 虛高”是我們搜索熱詞中出現(xiàn)頻率非常高的一個詞。這個詞概括了性能測試實踐中一類常見的錯誤認知壓測報告上的 TPS 很高但真實性存疑。5.1 虛高 TPS 是怎么產(chǎn)生的先說結(jié)論TPS 虛高的本質(zhì)是統(tǒng)計口徑和真實業(yè)務(wù)模型不匹配而不是壓測工具出了問題。常見產(chǎn)生虛高 TPS 的操作有第一種只用低響應(yīng)時間接口做壓測。如果一個系統(tǒng)只有一個查詢接口響應(yīng)時間 10ms那 500 并發(fā)就能壓出 20000 TPS。但這能代表系統(tǒng)整體能力嗎明顯不能。業(yè)務(wù)高峰期的流量是混合的包含慢接口、寫接口、長事務(wù)。壓測場景設(shè)計時如果只挑快接口打得到的 TPS 沒有任何參考價值。第二種忽略事務(wù)定義直接把 HTTP 請求數(shù)當(dāng) TPS。這在 JMeter 中特別常見。默認情況下JMeter 聚合報告里的 Throughput 是按照 Sampler 的執(zhí)行次數(shù)來統(tǒng)計的。一個頁面包含 10 個接口用戶一次完整操作會產(chǎn)生 10 個請求。如果你把這個數(shù)字直接當(dāng)成業(yè)務(wù) TPS報告上的數(shù)字會比真實業(yè)務(wù)吞吐量高出 10 倍。第三種高并發(fā)長時間壓測取峰值 TPS 當(dāng)結(jié)果。很多壓測報告習(xí)慣取“最高那一段的 TPS”作為成果。但是這個最高值通常出現(xiàn)在系統(tǒng)資源尚未穩(wěn)定、緩存未預(yù)熱、垃圾回收尚未開始的時候。你真正應(yīng)該關(guān)注的是系統(tǒng)在“持續(xù)壓力下”的穩(wěn)定 TPS而不是瞬時峰值。第四種忽略錯誤率。如果系統(tǒng)大量返回 500、超時、連接拒絕JMeter 會統(tǒng)計這些“失敗的請求”嗎默認情況下JMeter 不會將斷言失敗或者 HTTP 非 2xx 狀態(tài)碼算作成功事務(wù)但如果你沒有配置斷言或者把錯誤響應(yīng)也當(dāng)作“完成”來統(tǒng)計你的 TPS 就會把失敗請求也計算進去看起來很高實際上是假象。5.2 怎么避免 TPS 虛高從工程經(jīng)驗來看避免 TPS 虛高的核心有四點壓測場景必須包含核心鏈路而不是只挑快接口。事務(wù)定義必須和業(yè)務(wù)操作對齊。打開訂單列表 1 個事務(wù)而不是 3 個 Sampler。報告 TPS 必須關(guān)聯(lián)錯誤率和響應(yīng)時間分布。TPS 再高如果 TP99 已經(jīng)突破 2 秒也不算健康。結(jié)果必須取穩(wěn)定段平均值而不是瞬時峰值。如果你在壓測報告中寫“TPS 峰值 5000”面試官或者老板追問一句“響應(yīng)時間多少錯誤率多少并發(fā)多少什么場景壓了多久”你能清晰回答才算真正對這個數(shù)字負責(zé)。6. 通過壓測實驗反向驗證三者關(guān)系JMeter 階梯加壓實操理論講完了現(xiàn)在進入實操環(huán)節(jié)。既然你是做性能測試的JMeter 是繞不開的工具。這一節(jié)我會給你一套可以直接執(zhí)行的壓測設(shè)計思路用 JMeter 來驗證“并發(fā)數(shù)、響應(yīng)時間、TPS”三者之間的動態(tài)關(guān)系。6.1 環(huán)境準備本小節(jié)以最常用的 JMeter 為例。當(dāng)前 JMeter 的主流版本為 5.x需要 JDK 8 或以上版本建議使用 JDK 11 或 17。不同 JMeter 版本的界面細節(jié)會有差異但核心操作思路一致。如果還沒有安裝 JMeter可以去 Apache JMeter 官網(wǎng)下載解壓版解壓后進入bin目錄Windows 雙擊jmeter.batmacOS/Linux 執(zhí)行./jmeter即可。為了方便演示準備一個簡單的被測服務(wù)。你可以使用任意本地 Web 服務(wù)這里用一個最小的 Spring Boot 項目提供一個模擬業(yè)務(wù)處理接口// 文件路徑src/main/java/com/example/perfdemo/controller/DemoController.java package com.example.perfdemo.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.concurrent.TimeUnit; RestController public class DemoController { /** * 模擬耗時業(yè)務(wù)接口。 * delayMillis 參數(shù)用于模擬業(yè)務(wù)處理耗時默認 100 毫秒。 */ GetMapping(/demo) public String demo(RequestParam(value delayMillis, defaultValue 100) long delayMillis) throws InterruptedException { // 模擬業(yè)務(wù)處理耗時實際項目中這里是 SQL 查詢、下游調(diào)用、復(fù)雜計算等 TimeUnit.MILLISECONDS.sleep(delayMillis); return success; } }這個接口很簡單每個請求進來模擬處理 100ms然后返回。為什么設(shè)計這個接口因為你只有讓每個請求固定占用一定時間才能清晰觀察到并發(fā)數(shù)增加后線程池、CPU、響應(yīng)時間和 TPS 之間如何互相制約。如果不想寫代碼啟動服務(wù)也可以使用任一 Linux 環(huán)境用 Python 開啟一個臨時 HTTP 服務(wù)再通過time.sleep模擬耗時。核心目標只是“有一個可被壓測的接口”。6.2 JMeter 測試計劃設(shè)計打開 JMeter按下面的步驟建一個最小測試計劃右鍵“測試計劃”添加一個“線程組”。在線程組下添加“Sampler - HTTP 請求”。在 HTTP 請求中配置協(xié)議http服務(wù)器名稱或 IPlocalhost端口號8080方法GET路徑/demo?delayMillis100在線程組下添加“監(jiān)聽器 - 聚合報告”和“監(jiān)聽器 - 響應(yīng)時間圖”。線程組配置這里先不固定因為我們要做階梯加壓。階梯加壓的核心思路是同樣的測試腳本從低并發(fā)開始逐步增加線程數(shù)每一檔保持運行一段時間觀察各項指標的變化趨勢。比如按下面規(guī)模來階段線程數(shù)Ramp-Up 時間持續(xù)時間階段1101 秒30 秒階段2201 秒30 秒階段3502 秒30 秒階段41005 秒60 秒階段520010 秒60 秒階段640020 秒60 秒為什么要設(shè)置“持續(xù)時間”因為性能測試必須看穩(wěn)定狀態(tài)下的表現(xiàn)。啟動后立即出現(xiàn)的數(shù)字可能受線程初始化、緩存預(yù)熱影響。一般建議每個階段的持續(xù)時間不少于 30 秒最好 60 秒以上讓數(shù)據(jù)趨于穩(wěn)定后再記錄。如果你不想手動創(chuàng)建 6 個線程組也可以使用 JMeter 的插件Ultimate Thread Group需要在 JMeter Plugins Manager 中安裝它可以在一張圖表里配置多個階梯階段的線程數(shù)。核心思想不變階梯加壓、逐級遞增。6.3 使用命令行執(zhí)行壓測JMeter 官方建議在壓測時使用命令行模式而不是 GUI 模式因為 GUI 模式本身會占用系統(tǒng)資源影響壓測結(jié)果的準確性。按下面的命令執(zhí)行jmeter -n -t perf-test.jmx -l result.jtl -e -o report參數(shù)說明-n非 GUI 模式運行。-t指定測試計劃文件路徑。-l輸出原始結(jié)果文件JTL 格式。-e測試結(jié)束后生成 HTML 報告。-oHTML 報告輸出目錄目錄必須不存在或為空。執(zhí)行完成后打開report目錄下的index.html即可看到完整的圖表化報告包括 TPS、響應(yīng)時間分布、錯誤率等信息。6.4 預(yù)期結(jié)果與數(shù)據(jù)解讀在我設(shè)計的 Demo 接口下預(yù)期你會看到以下現(xiàn)象低并發(fā)階段10、20平均響應(yīng)時間接近 100ms 左右TPS 隨并發(fā)數(shù)近似線性增長。中等并發(fā)階段50、100響應(yīng)時間可能小幅上升到 120ms 左右TPS 仍在增長但增速放緩。較高并發(fā)階段200、400響應(yīng)時間明顯上升可能出現(xiàn) 300ms 甚至 500ms 以上的值。TPS 要么增長極其緩慢要么開始下降。為什么在這個 Demo 中并發(fā) 200 就出現(xiàn)明顯拐點因為 Spring Boot 默認內(nèi)嵌 Tomcat 的max-threads默認值是 200。當(dāng)并發(fā)請求數(shù)超過 200 時多余的請求會進入 Tomcat 的accept-queue排隊。這樣一來請求的“等待時間”開始大幅增加響應(yīng)時間快速上升TPS 增速放緩甚至下降。這個實驗清晰地展示了一個道理系統(tǒng)的最大并發(fā)承載能力取決于系統(tǒng)內(nèi)部最窄的資源的處理能力。對 Demo 服務(wù)來說最窄的資源就是 Tomcat 的最大工作線程數(shù)。每增加一個線程都在增加處理能力但一旦線程池滿了加并發(fā)只會讓隊列越來越長TPS 不再增長。6.5 通過一個最小 Python 腳本模擬并發(fā)與 TPS 的關(guān)系如果你希望在代碼層面更直觀地理解“并發(fā)數(shù)、響應(yīng)時間、TPS”三者之間的換算可以用一個最小 Python 腳本模擬這個過程。# 文件路徑simulate_concurrency.py import time import threading import requests from concurrent.futures import ThreadPoolExecutor BASE_URL http://localhost:8080/demo?delayMillis100 def send_request(_): start time.time() try: requests.get(BASE_URL, timeout5) except Exception as e: print(f請求異常: {e}) return time.time() - start def run_test(concurrency, total_requests200): start time.time() with ThreadPoolExecutor(max_workersconcurrency) as executor: latencies list(executor.map(send_request, range(total_requests))) total_time time.time() - start avg_rt sum(latencies) / len(latencies) tps total_requests / total_time print(f并發(fā)數(shù){concurrency}, 總請求數(shù){total_requests}, 總耗時{total_time:.2f}s, f平均響應(yīng)時間{avg_rt * 1000:.1f}ms, TPS{tps:.1f}) return tps, avg_rt if __name__ __main__: for concurrency in [10, 20, 50, 100, 200, 400]: run_test(concurrency)運行方式python simulate_concurrency.py需要注意這個腳本的并發(fā)模型是有限線程池它模擬的“并發(fā)數(shù)”是從客戶端視角發(fā)起的并發(fā)連接數(shù)和服務(wù)器端實際并發(fā)處理數(shù)是兩碼事。它只能幫你從宏觀上理解趨勢不能取代 JMeter 這類專業(yè)壓測工具。如果通過這個腳本觀察輸出的 TPS你會發(fā)現(xiàn)一個現(xiàn)象在低并發(fā)時TPS 粗略滿足TPS ≈ 并發(fā)數(shù) / 平均響應(yīng)時間在并發(fā)數(shù)超過系統(tǒng)處理能力后平均響應(yīng)時間上漲TPS 不再同步上漲。7. 常見問題與排查思路并發(fā)數(shù)、TPS、響應(yīng)時間“對不上”怎么辦在實際項目中你會發(fā)現(xiàn)壓測出來的數(shù)據(jù)和公式推導(dǎo)的對不上甚至同一套系統(tǒng)隔一天壓出來的數(shù)據(jù)都不一樣。下面整理了幾個高頻問題。問題現(xiàn)象可能原因排查方式解決方案并發(fā)數(shù)增加TPS 卻幾乎不變系統(tǒng)存在單點瓶頸如數(shù)據(jù)庫連接池、單線程處理邏輯、鎖競爭查看數(shù)據(jù)庫連接池使用率、CPU 使用率、線程阻塞情況加大連接池上限優(yōu)化鎖粒度拆分熱點資源并發(fā)數(shù)增加響應(yīng)時間暴漲TPS 下降系統(tǒng)已經(jīng)過載線程池滿請求在排隊查看 Tomcat 線程池活躍線程數(shù)、隊列長度降低并發(fā)壓力先找拐點優(yōu)化處理耗時引入限流保護TPS 很高但錯誤率同步上升斷言未配置完整失敗請求被計入成功或服務(wù)端大量返回錯誤查看 JTL 日志中的錯誤碼添加響應(yīng)斷言核對壓測結(jié)果統(tǒng)計口徑在 JMeter 中增加斷言過濾錯誤響應(yīng)后再統(tǒng)計 TPS壓測響應(yīng)時間正常但線上響應(yīng)時間很慢壓測數(shù)據(jù)不真實只打了緩存命中場景未覆蓋慢查詢線上數(shù)據(jù)量和并發(fā)模型更復(fù)雜檢查壓測數(shù)據(jù)是否與線上數(shù)據(jù)特征一致檢查慢查詢?nèi)罩臼褂觅N近生產(chǎn)的數(shù)據(jù)量增加混合場景同一套系統(tǒng)兩次壓測結(jié)果差異極大壓測機自身資源不足或 JVM 垃圾回收產(chǎn)生抖動監(jiān)控壓測機 CPU、內(nèi)存使用率查看服務(wù)端 GC 日志壓測機單獨部署避免資源爭搶壓測前預(yù)熱系統(tǒng)偶爾出現(xiàn)個別請求響應(yīng)時間極高網(wǎng)絡(luò)抖動、GC 停頓、線程池滿的瞬間排隊查看 TP99、TP999 而不是只關(guān)注平均響應(yīng)時間分析 GC 日志和網(wǎng)絡(luò)監(jiān)控調(diào)整 JVM 參數(shù)JMeter 聚合報告中的 Throughput 和手算 TPS 不一致事務(wù)定義不一致JMeter 默認按請求統(tǒng)計未按事務(wù)統(tǒng)計檢查是否是“邏輯事務(wù)組”模式確認每個事務(wù)包含幾個 Sampler使用“事務(wù)控制器”包裹完整業(yè)務(wù)流程統(tǒng)一 TPS 統(tǒng)計口徑值得強調(diào)的一點是在排查性能問題時不要只盯著壓測工具的輸出。TPS、響應(yīng)時間、并發(fā)數(shù)只是“現(xiàn)象”底層原因往往在系統(tǒng)資源層CPU 使用率、線程池活躍數(shù)、數(shù)據(jù)庫連接池活躍數(shù)、GC 頻率、網(wǎng)絡(luò)帶寬、磁盤 IO。任何一層的資源耗盡都會表現(xiàn)為“并發(fā)數(shù)上去了、TPS 上不去”。8. 性能測試設(shè)計與工程最佳實踐到這里你已經(jīng)理解了并發(fā)數(shù)、響應(yīng)時間、TPS 之間的底層關(guān)系。接下來需要把這套認知沉淀為工程實踐否則理論永遠是理論。8.1 從業(yè)務(wù)流量反推壓測負載很多人在設(shè)計壓測場景時憑感覺設(shè)置線程數(shù)。正確的做法應(yīng)該是從業(yè)務(wù)流量反推。假設(shè)你的業(yè)務(wù)在高峰時段的日活用戶是 10 萬核心接口的 QPS 預(yù)估是 2000平均響應(yīng)時間要求小于 500ms那壓測配置應(yīng)該這樣推導(dǎo)根據(jù) Little 定律需要并發(fā)數(shù) QPS × 平均響應(yīng)時間 2000 × 0.5 1000。但是 1000 是“業(yè)務(wù)請求并發(fā)”不是“JMeter 線程數(shù)”。因為 JMeter 一個線程可以連續(xù)發(fā)起多個請求實際線程數(shù)還需要考慮單線程的循環(huán)次數(shù)和思考時間Think Time。如果你的壓測腳本沒有設(shè)置思考時間1000 個并發(fā)線程會不間斷地發(fā)起請求這屬于“極端壓力”不是“真實壓力”。真實用戶的操作是有思考間隔的。所以壓測時通常分兩種模式不上思考時間探求系統(tǒng)最大處理能力找到性能拐點。加上思考時間模擬真實用戶行為評估線上容量。兩種模式的目標不同不能混為一談。8.2 階梯加壓是常規(guī)操作不要一上來就直接壓 1000 并發(fā)。更穩(wěn)的做法是先小并發(fā)例如 10跑一遍確認功能正確、無報錯然后按 1-2-5-10-20-50 的倍數(shù)關(guān)系遞增每個梯隊保持至少 30 秒記錄每個梯隊下 TPS、響應(yīng)時間、錯誤率三個指標。這種做法的好處是你不僅能知道系統(tǒng)“掛了”還能找到“從哪個并發(fā)開始變慢”。這個拐點比“壓崩了”這個結(jié)果有價值得多。8.3 場景設(shè)計要覆蓋混合鏈路性能壓測不應(yīng)該只壓一個“最慢接口”或“最快接口”。真實用戶的一個操作往往調(diào)用多個接口包含讀緩存、讀數(shù)據(jù)庫、寫數(shù)據(jù)庫、調(diào)用下游等不同行為。比較合理的場景設(shè)計是按照生產(chǎn)環(huán)境的流量占比設(shè)計不同接口的混合比例。舉例來說查詢訂單接口占比 60%創(chuàng)建訂單接口占比 20%取消訂單接口占比 10%支付回調(diào)接口占比 10%這種混合場景壓出來的結(jié)果才接近線上真實情況。8.4 正則提煉并發(fā)數(shù)設(shè)置與確認針對熱搜詞“jmeter 壓測怎么確認系統(tǒng)的并發(fā)數(shù)”這里給出一個可執(zhí)行的確認路徑第一步從業(yè)務(wù)方獲取核心接口的高峰 QPS 數(shù)據(jù)和平均響應(yīng)時間要求。第二步用 Little 定律計算理論并發(fā)數(shù)并發(fā)數(shù) QPS × 平均響應(yīng)時間。第三步在 JMeter 中用該并發(fā)數(shù)初步執(zhí)行壓測觀察實際響應(yīng)時間是否達標。第四步逐步增加并發(fā)數(shù)直到響應(yīng)時間不再滿足要求此時記錄的并發(fā)數(shù)就是系統(tǒng)當(dāng)前的“極限并發(fā)數(shù)”。第五步加上安全余量通常取極限并發(fā)數(shù)的 70% 左右作為生產(chǎn)環(huán)境的限流閾值或容量規(guī)劃基線。注意如果系統(tǒng)使用異步模型、消息隊列等架構(gòu)這個推導(dǎo)過程還需要額外引入隊列積壓量的監(jiān)控指標而不是只盯響應(yīng)時間。8.5 關(guān)注穩(wěn)定性測試與異常場景除了短時間壓測找拐點還需要做穩(wěn)定性壓測。常見做法是以 70% 到 80% 的極限并發(fā)數(shù)持續(xù)壓測 30 分鐘到 1 小時觀察是否存在內(nèi)存泄漏、連接池泄漏、線程數(shù)持續(xù)增長、GC 時間不斷變長等問題。穩(wěn)定性壓測最容易暴露的問題包括內(nèi)存泄漏導(dǎo)致 Full GC 頻繁響應(yīng)時間周期性惡化。數(shù)據(jù)庫連接池泄漏連接被占滿。日志框架導(dǎo)致 IO 阻塞。定時任務(wù)與峰值流量疊加導(dǎo)致資源競爭。8.6 安全提醒別在生產(chǎn)環(huán)境亂壓壓測是會對系統(tǒng)產(chǎn)生高負載的行為任何時候都不要未經(jīng)授權(quán)直接對生產(chǎn)環(huán)境發(fā)起壓力測試。正確的做法是先在測試環(huán)境驗證壓測腳本和預(yù)期結(jié)果。如果確實需要進行生產(chǎn)環(huán)境的容量驗證需要提前協(xié)調(diào)好運維、研發(fā)、DBA 等相關(guān)人員選定低峰期并在有監(jiān)控告警和回滾預(yù)案的情況下進行。生產(chǎn)壓測前必須確認限流降級策略已經(jīng)就緒避免壓測導(dǎo)致雪崩。一句話壓測不是“大家都在測”就可以隨便做的事授權(quán)、備份、回滾、監(jiān)控缺一不可。9. 回到面試題怎么回答 TPS、并發(fā)數(shù)、響應(yīng)時間的底層關(guān)系把前面的內(nèi)容理清之后現(xiàn)在可以回答標題里那個問題了。如果在面試中我被問到“TPS、并發(fā)數(shù)、響應(yīng)時間三者之間存在什么樣的底層關(guān)系”一個能讓面試官眼前一亮的回答思路是這三者之間的關(guān)系不能用一個孤立的公式來概括而應(yīng)該用系統(tǒng)在不同負載階段的行為變化來描述。在系統(tǒng)還沒達到資源瓶頸時它們基本滿足 Little 定律并發(fā)數(shù) TPS × 平均響應(yīng)時間。也就是說TPS 和平均響應(yīng)時間的乘積必須等于系統(tǒng)的在途并發(fā)數(shù)。這是排隊論中一個守恒關(guān)系。但一旦系統(tǒng)進入過載區(qū)這個公式就會“變形”。因為響應(yīng)時間不再穩(wěn)定而是隨著并發(fā)數(shù)上升而快速惡化此時 TPS 會被響應(yīng)時間拖住甚至下降。所以更準確的表述是并發(fā)數(shù)是輸入它影響響應(yīng)時間和 TPS響應(yīng)時間是被影響項它反映了系統(tǒng)壓力TPS 是輸出它體現(xiàn)系統(tǒng)的真實產(chǎn)能。核心的工程能力在于找到“系統(tǒng)從線性增長階段進入飽和階段的拐點”這個拐點才是容量評估的關(guān)鍵。接著主動給面試官講一個自己實際做過的壓測場景“我之前壓測過一個訂單查詢接口在并發(fā) 100 時 TPS 能到 1200響應(yīng)時間 80ms并發(fā)拉到 300 后響應(yīng)時間漲到 250msTPS 反而降到了 1100。后來定位到是數(shù)據(jù)庫連接池不夠用連接等待時間大量增加。調(diào)整連接池參數(shù)后同樣的并發(fā)下TPS 重新回到了 1800 左右?!边@段回答的好處在于展現(xiàn)了你懂理論公式Little 定律。展現(xiàn)了你知道公式的邊界過載區(qū)會失效。展現(xiàn)了你做過真實測試能說出具體數(shù)字變化。展現(xiàn)了你有排查問題的能力定位到連接池。這個回答的邏輯鏈條比背誦“TPS 并發(fā)數(shù) / 響應(yīng)時間”要完整得多。10. 總結(jié)從“會壓”到“懂性能”回到最初的話題會做性能測試的人很多但能講清楚 TPS、并發(fā)數(shù)、響應(yīng)時間底層關(guān)系的人才是真正能解決線上疑難雜癥的人。這篇文章從頭到尾其實就圍繞一條主線并發(fā)數(shù)是施加給系統(tǒng)的壓力響應(yīng)時間是系統(tǒng)感受到的代價TPS 是系統(tǒng)交出的產(chǎn)能。三者的關(guān)系從理想狀態(tài)的 Little 定律出發(fā)在真實系統(tǒng)中會因為線程池、連接池、鎖競爭、GC、異步化等因素發(fā)生變形。理解這些變形找到系統(tǒng)的拐點才是性能測試的核心價值。如果你正在準備性能測試面試不要只背公式。你可以按照這篇文章第 6 節(jié)的思路自己搭一個 Demo 服務(wù)用 JMeter 跑一遍階梯加壓親手畫出 TPS 和響應(yīng)時間隨并發(fā)數(shù)變化的曲線。當(dāng)你親眼看到并發(fā) 50 時 TPS 穩(wěn)定增長、并發(fā) 200 時響應(yīng)時間開始“起飛”、并發(fā) 400 時錯誤率飆升——你對三者的理解就不再是文字層面而是刻進直覺里的東西。下一步你可以繼續(xù)深入學(xué)習(xí)JMeter 的分布式壓測配置、全鏈路壓測方案、容器化環(huán)境下的性能測試、數(shù)據(jù)庫慢查詢分析與索引優(yōu)化、JVM 調(diào)優(yōu)與 GC 日志分析。這些都是性能測試進階路上繞不開的主題。如果這篇文章對你有幫助建議收藏備用。下次做壓測時把本文第 8 節(jié)的“并發(fā)數(shù)確認路徑”拿出來對著做一遍你會發(fā)現(xiàn)性能測試報告的質(zhì)量會有明顯提升。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91欧美丝袜| 午夜一区二区三区国产| 亚洲熟女乱综合一区二区三区| 强奸乱伦日韩AV| 欧美色网| 天天射天天| 久久久三区二区一区| 欧美爆操91| www五月| 亚洲日韩美国人妻| 超碰AV在线| 九色在线熟女国产黑人| 久久久久人妻二区精品叶可怜| 亚欧美综合| 99re在线视频国产| 操一操摸一摸| 精品无码久久久久久久杏吧| 亚洲全色网| 综合亚州欧美| 少妇熟女一区二区三区| 国产白丝av| 男人天堂新在线| 蜜臀久久99'精品久久久| 四虎国产成人精品免费一女五男| 情色av电影| 国产精品老熟女一区二区| 超碰99热| 日韩乱码Av| 亚洲人妻AV| 欧美 亚洲 偷拍自拍| 伦伦成年午夜免费视频| 国产亚洲女v在线观看| 亚洲中字幕日本一区二区三区| 超碰人人干天天射| 国产91美女视频| 五十路成人在线视频二区三区| 校园春色综合香蕉| 日本加勒比无码专区一二三| 国产熟码AV| 亚洲精品国产熟女久久久| 日本性一区| 久久亚洲熟妇在线视频| 亚州 综合 色图| 一级黄碟在线看| 亚洲天天精品| 亚洲国产综合图区中文字幕| 自拍偷拍第26| 亚州免费啪啪视频| 久久性爱大全| 五月天啪啪| 蜜桃久久一区二区三区| 综合网~91综合网| 60秒免费小视频| 亚洲诱惑天堂| 精品九九| 日本肏逼视频在线观看| 人妻夜夜爽天天爽麻豆三区网站| 天天干天天日天天射黄色片| 久久久久久久久久久精| 精品福利| www.91逼逼.com| 91高清无码下载| 男人的天堂2019AV| 亚洲国产蜜臀系列在线观看| 成人三级片一区二区三区视频| 亚洲精品国产拍免费91在线| 乱性AV| 干婷婷综合网| 啊啊啊啊啊啊啊啊啊啊在线观看| 啊啊啊啊免费视频| 婷婷去俺也去六月色| 国产无套粉嫩白浆在| 国产精品一区人妻精品阁在线| 四虎av在线| 中文字幕人妻丝袜乱一区三区| 天天综合97| gogogo免费高清看中国国语| 99热婷婷| 色九九九综合| 亚洲精品一区二区日本| 九九在线视频| 日韩精品电影| www久久国产精品| 一级黄色性爱A级片| 欧美性生活综合| 性色国产东北露脸精品视频| 久草在线| 大香蕉碰| 草草草视频在线免费看| 国产精品一区二区黄片| 亚洲精品不卡一二三区| 日本天天操| 日韩欧美女优电影| 老色鬼成人精品视频下载大在线观看| 乱伦一二三区| 91逼逼女人91| 偷拍盗拍亚洲色图图片| 亚洲啪啪性视频| 亚洲日产专区婷婷| 日本三级A片网站com| 欧美日韩99精品麻豆传媒| 天天操天天谢| xxxx网站亚洲精品| 国产传媒一区日韩| 精品九九九| 国产欧美一区激情交| 天美传媒AV国产在线| 欧美 亚洲| 国产精品老师| 亚洲欧美综合网| 亚洲最新a在线观看| 人人噜夜夜操| WWW啪啪的com| 91天天c| xxx0国产在线播放| 超碰久久网| 中字幕人妻一区二区三区| 无码人妻一区二区一牛影视| 青娱乐啪啪视频| 亚洲成人综合在线| 78操B| 免费观看欧美日韩操逼视频| 国产激情视频一区区三区| 亚洲高清在线| 91成人无码| 99热精品在线播放| 97视频免费播放| 日产狠狠干| 国产精品欧美在线观看 | 亚洲精品一卡二卡三卡福利视频网站| 国模私拍一区二区三区神乳| 亚洲丝袜色图| 8x福利精品第一福利视频导航| 人人操天天爽| 国产精品亚洲天堂网址| 天美传媒精品一区二区三区| 丰满的三级少妇欧美久久久| 91丝袜在线播放| 可以免费观看的AV| 家庭乱伦性爱av| 亚洲欧洲激情| 97九色人妻| 日韩中文字幕视频| 午夜国产综合视频在线观看| 天天综合有色网| 久久久久久久伊人精品| 欧美激情精品久久久| 全球成人中文在线| 超碰97人妻| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 中文字幕第95页| 日韩97超碰中文字幕| 久久精品人妻一区| 男人的天堂在线| 啪啪性爱免费视频| 久久日本熟女精品一区| 天天日少妇逼AV| 天堂v无码免费视频| 日韩精品人妻中文字有码在线| 久久精品国产72国产精品福利 | 亚洲精品一二区| 五月天九九日国产精品一区二区三区| 精品少妇后入一区二区三区四区人妻巨乳| 色色色日本| 少好三P| 国产后入精品| 午夜高清成人在线视频| 精品国模无码| 午夜噜噜噜| 久久久久久久久久久久久久久乱码| 免费的黄片有限公司| 日本亚欧爱爱| 看看日B真人视频| 宗合情欲网| 色综合久| 嗯啊不要在线观看嗯啊| 国产一区二区在线电影| 欧美自拍偷拍综合图片| 国产美女高潮| 欧美的精品的视频| 无卡一区=区| 国产熟妇一区二区| 亚洲视频一二区| 日本三级久| 久久草在线综合视频| 亚洲啪啪视频免费| 中文字幕精品探花视频| 玖玖久久久| 久久久久久九九九九九九| 免费人人搞97| 99啪啪| 99啪| 欧美 青青草| 亚洲av夫妻操穴网| 人妻少妇色综合| 大地资源在线观看中文第二页| Sekablack无码一区| 国产97免费视频| 无码粉嫩白虎一线天b区| 亚熟hd视频在线| 日本999精品视频| 爱爱动态120秒| 99在线精品视频| 日韩精品在线观看网站| 操逼视频亚洲| 国产亚洲日本精品在线| 尤物国产一区在线观看| 一区二区三区精品视频| 色综合色欲色综合色综合色综合| 桃花色涩综合影院| 人妻嗯啊啊在线播放| 99色视频| 久久久久久久久久久久久久久性生活视频 | 鲁鲁色综合网| 蜜桃久久久久久久| 久久精品老司| 超碰97首页| 日本高清加勒比| 爱丝福利| 蜜臀99精品国产高清在线观看| 六月婷婷一区二区三区| 久久九精品| 97干在线看| 99xav| 亚洲欧洲无码一区夜| 亚洲涩图欧美| 超碰九7免费| 日韩亚洲欧美中文字幕| www.av在线视频| 在线v中文字幕一区二区三区| 顶级丝袜熟女一区二区三区| 91九色在线| 久久极品一区二区| 麻豆成人av| 男人的天堂kva| 校园春色AV天堂| 久久久久国产精品片区无码直播 | 九九超碰综合网| 97国产中文| 久久久人妻| 成人小说另类在线| 欧美色五月| 人妻一区二区三区| 中文字幕无码不卡啪啪| 91欧美综合| 人人操人人干xxx| xxxx网站亚洲精品| www.色婷婷| 亚洲综合888| 91欧美丝袜| 人妻精品一区二区| 国产51色综合久久免费| 欧美图片校园春色| 超碰97人人cao| 人妻夜夜爽天天爽三区麻豆AV网站| 一级性爱视频免费在线| 操淫穴亚洲五月丁香 | 17c嫩草51久久91嫩草| 91成人久久 | 亚洲欧美国产中文视频| 亚洲综合113页| 狠狠2050在线观看| 69XX一中文字幕人妻91| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | av日韩中文字幕| 尤物av网站免费在线播放| 温婉少妇玩3p| 玖玖综合色| 亚洲综人| 国产亚洲色婷婷久久99精品91葵花宝典| 偷拍 精品另类 凸凹了四区| 婷婷久久久精品| 偷看洗澡一二三区美女| 伊人亚洲综合| 日韩免费在线视频观看| 中文字幕 一区二区 亚洲无码| 男人的天堂日韩| 日韩成人精品| 91在线限制级| 狠狠操使劲操| 1区2区3区在线视频| 综合视频91| 香蕉黄色一级视频| 日韩国产十八禁| 极品销魂美女一区二区 | AV中文字幕剧情1区2区3| 极品销魂美女一区二区| 国产日本熟女顶级一区二区三区视频| 激情欧美97| 国内毛片免费h片在线| 久久精品99久久久久久| 國產尤物AV尤物在線觀看| 色综和网| 日韩激情小说一区二区| 新精精品久久精品| 18禁的网站在线| 五月天加勒比啪| 亚洲第一精品在线视频| 人人妻人人爽人人精品| 婷婷五月天伊人| 欧美se综合| 亚洲天堂男人在线| 欧美成人性爱视频在线播放| 超碰97玖玖爱| 国产激情av女片自拍| 999九九精品| 亚洲超碰AV| av影院十区| 激情五月激情综合网| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 熟妇色99| 人妻美腿丝袜制服诱惑综合天堂-| 97香蕉网| 999 久久久| 福利在线黄片| 精品少妇999| 亚洲永久永久永久永久一级一级一级精品| 日本成人A片网站| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 黄片免费视频2019| 欧美在线 亚洲| 亚洲欧洲国产综合av| 国产精品另类| 欧美在线55555| 久久鲁干| 欧美性生活免费网| 中文字幕乱码在线| 久久久久久久久久久999| 免费精品中文字幕| 人人妻人人爱人人玩| 天天综合网在线| 国产专区第一页| 久草看看看| 亚洲情色1区| 青青操综合网| 婷婷五月天激情四射| 求求你操操我| 99热啪啪| 人人看欧美性爱| 91丝袜在线播放| 97在线免费视频观看| 91色艳| 国产一级不卡在线观看| 日韩免费中文字幕视频| 婷婷20月天青娱乐| 麻豆精品三区视频| 男人下部插入女人下部| 第一高清av中文字幕| 亚洲欧美日韩制服另类| 日本亚洲嫩草影院啪啪| 天堂精品一区| 美女黑人91神马| 97香焦色区| 老司机射| 伊人丁香五月婷婷| 五月丁香黄色网| 日本一二三免费久久| 亚州久久9| 超碰国产情侣自拍网| 亚洲AV成人无码一区二区三区在线观看| 啪啪视频免费在线观看| 大粗鳼巴久久久久| 性欧美| 日韩精品怡红院| 超碰 另类 欧美 | 视频二区熟女人妻| 日本五十路在线| 亚洲国产剧情少妇激情| 亚洲一区二区三区久久 亚洲一区二区| 手机在线播放国产福利| 国产熟女完整版中字| 啪啪性爱免费视频| 欧美片第一页| 色就色综合| 日韩有码 一区二区三区| 怡红院成人视频| 大干人妻| 欧美色图自拍| 大香蕉淫人| 男人天堂导航| 60秒不遮不挡| 黄页| 成人精品在线免费视频| 久久精品国产亚洲AV清纯| 2017天天操| 精品九九九九九| 极品销魂美女一区二区| 呦呦影院| 逼操网站| 久久亚洲婷婷| 天色综合网| 综合亚洲情色| 亚洲熟久久| 亚洲欧美日韩电影网站一区| 91黑丝操| 久久久久久久91| 精品综合久久久久久五月天| 影音先锋少妇| 伊人五月天| 亚洲图片欧美91N| 日本免费不卡二区| 北京美女一区二区| 青青操国产夫妻| 国产精品人妻免费精品| 欧美日韩大黄片| 国产精品久久久久中文字幕| 久久久久13| 91麻豆天美传媒HD| 伊人久久亚洲色欲综合网站 | 精品久久97观看在线视频| 精品人妻av区天天看片| 18禁免费视频| 夜夜操二区| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 天天碰操中国年青熟妇| 精品二区三四区五电影 | 五十路熟女工口| 少妇丝袜在线观看AV| 欧美日韩小说| 91大神精品长腿在线观看网站| 国产精品黄色三级av| 国产免费永久精品无码| 97干色天堂| 婷婷五月天色网| 久久的免费性爱视频| 美女极品一区二区三区| 亚洲色吧网| 日韩综合97P| 欧美黄页| 亚洲五月天激情| 精品一久久久| 九热久| 天天干干天天干干| 欧美黑人XXXⅩ高潮交| 欧美综合网1| 性色亚洲| 欧美夜夜狠| 91色综合色| 夜夜草我| 1024久久高清视频| 91中文字幕在线观看| 69国产对白刺激| 欧美日韩99| silk lablo在线观看一区二区| 久久综合97| 黄色av片三级三级三级免费看| 亚洲成a人在线观看久| 国产精品交换一区二区| 欧美色图99| 97人妻免费中文字幕| 91逼逼女人91| 天美91| 激情四射五月天| 日日日日做夜夜夜夜做无码97| 手机看片日韩人妻| 麻豆婷婷成人一二三| 欧美亚洲手机在线| 色情婷婷| 91色欧美| 99九九精品| 九色 蝌蚪 熟女自| 国产成人免费观看在线视频| 日韩中文字幕2020| 国产女人高潮嗷嗷嗷叫小说| 欧美夜色| 综合免费无码中文| 美国三级日本三级久久99| 欧美精品成人一区二区在线观看 | 中文字幕av片| 99热18| 五月天婷婷社区| 深夜激情无码| 五月天加勒比啪| 欧美日韩 强奸乱伦| 久久久久免费少妇| 破处bbq| 国产呦精品一区二区三区下载| 很狠操| 日本在线视频导航| 亚洲毛片久久| 97香焦色区| 内射小黄片| 欧美亚洲日韩16色| 殴美大黄片| 91无码精品| www.91色综合| 国产精品白丝在线播放| 牛牛久久国产精品视频一二三| 噜噜噜在线视频| 日韩青久久| 开心激情站| 96精品久久久久久久久久| 成人精品视频一区二区| 久久成人国产| 992视频一区| 日韩一级二级在线| 亚洲精品亚洲人成在线麻豆| 97视频免费| 欧美永久激情一区二区| 人人摸人人添人人操 | 深爱五月天| 中文字幕蜜乳av| 欧洲小说色图视频另类| 久久九九综合| 99国产精品视频尤物| 小电影欧美91| 九九成人精品| 欧美日韩中文亚洲v在线综合| 日本精品一区二区三| 无码又爽又硬又激情免费视频| 日韩无码视频黄色| 97中文字幕一区| 中文字幕少妇色 | 超碰色97| 激情情色五月天| 色五月大香蕉| 国产女人视频三四五区| 四虎884| 国产性刺激| 黄色不卡视频| 五月综合色| 超碰无码加勒比| 粉嫩av一区二区三区天美传媒 | 久久久久久电影| 女生久久网| 夜夜免费视频| 亚洲大色堂| 亚洲欧美精品一区天堂久久| 精品国产乱码久久久久久口爆网站 | 日韩极品无码B| 91欧美经典| 天天躁夜夜躁狠狠躁AV| 夜夜福利| 九九成人精品| 日韩欧美成人大香蕉| 婷婷五月天成人网| 日本3级一区二区免费| 五月婷婷六月丁香网址| 中文字幕美女91| 欧美色性情| 亚洲男人天堂视频| 91久久久久久久| 操一区| 自拍丝袜美腿人妻| 国产天天骚| 麻豆视频test| 久操B网| 天天狠| 亚洲天堂电影精品一区| 久久婷婷五月天| 91狠狠色丁香婷婷综合久久精品| 在线观看国产黄色| 免费看久久久性性| 中文字幕免费看大片| 探花在线免费观看视频国产一区| 精品中文字幕第一页| 日韩黄片影院| 一起草欧美| 国产野战露脸在线播放| 天天色天天干天天射| 伊人精品久久网站| 亚洲天堂AV在线播放| 国产一在线观看| 亚洲va有码在线天堂| 日韩操逼HD| 小视频玖玖| 天天做日日做天天欢。| 亚洲操人| 粉嫩国产精品久久粉嫩| 久久久9品一区二区三区| 亚洲国产一区二区三区在线| 啊啊啊啊啊在线视频| 99精品伊人| 久久久精品中文字幕麻豆| 日韩综合色网| 丰满人妻一区二区三区免费| yw尤物av无码点击进入麻豆| 制度丝袜99| 一区在线国产播放| 九九九九久久久| AND人妻系列| 久久久111| 97国产精品在线观看| 精品玖九九久| 91成人高清在线观看| 91人妻做a观看视频| 国产精品青草综合久久| 天天干2区3区| 欧美日韩美女精品久草一区二区三区 | 99亚洲精品| 艹比视频国产精品| 黑操B| 超碰久久草| 国内毛片四区| 亚洲精品乱码线路中文字幕| 秋霞欧美性爰视频| 99re3这里只有精品| 欧美成人国产精品| 少妇久久久久久久久| 岛国大片国产| 亚 欧 美 综合| 欧美激情久久久久| 亚洲一区二区在线观看91| 人妻 中文 日韩| 亚洲,欧美,春色,另类| 日韩精品作爱导航| 国产精品操| 乱伦av.com| 三级片大波波| 欧洲精品二区| 婷婷五月天激情网| 精品十三区| 97av在线观看| 四虎影院成年人片| 性性久久| 国产精品久久久久久亚洲色欲| 国产精品99久久久www| 麻豆AV96熟妇人妻| 国产精品美女| 五月丁香影视| 亚州五月| 九月丁香综合网| 六月丁操逼| 欧美色图综合| 淫妻综合网| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 蜜臀一区二区三区在线| 丁香五月性爱| 欧美色图亚洲色,麻豆| 久久久亚洲Av| 久草精品国产蜜臀| A级国产欧美激情在线| 97人人草| 加勒比综合88| 久久怡红院| 色色97爱| 亚洲男人的天堂亚洲| nuu12国产麻豆精品| 久久亚洲AV无码专区首页| 熟妇艹鸡八| 99婷婷一区二区| 骚乳在线| 黄片qw| 天天看人人操屄犊摸阴| 中国操逼无码| 亚洲欧洲色情高清| 亚洲精品人妻在线| 中文字幕诱惑制服人妻丝袜美丝袜美| 精品毛片av一区二区| 日韩精品99久久久久久中文字幕| 亚洲春色欧美激情自拍| 欧美另类自拍| 国产精品黄色三级av| 亚洲无限观看| 国产女人91精品嗷嗷嗷嗷| 激情文学小说一区二区 | 国产和美国毛片| 欧美黑人精品一区二区| 色99久草| 国产精品色色| 九九综合九九综合| 亚洲欧洲色情高清| 97任你吞精| 蜜臀99久久国产| 97超碰色五月| 蜜桃臀AV在线| 又黑又大又粗| 国产理论视频在线播放| 日本超碰色精品| 无遮挡一级毛片视频免费的| 高清孕妇孕交 交| 吻戏激情性巴克| 密乳视频在线| 欧美 传媒 麻豆 日韩 偷拍| 久热在线精品免费观看| 色偷综合| 高清无码网址| 欧美激情性久久久久久| 一二三卡欧美日韩人妻免费精品| 91黑丝在线播放| 人妻一区二区三区视频| 智利AV在线网| 欧洲天天在线| 芊芊操逼视频无码| 就去色综合| 男人的天堂.com| 人人摸人人干人人拍97| 欧美AB在线| 99re这里| 东京太热久久久| 男人a天堂手机在线版| 亚洲高清综合网| 小骚逼被操的爽不爽| 超碰av在线| 精品人妻1区| 亚洲色人阁| 色阁阁AV综合网| 午夜激情床戏激情| 99精品久久久久久久婷婷蜜桃| 亚洲精品国语在线播放| 性色高清..……| 超碰碰97| 艳美熟妇先锋一二三区| 亚洲天堂无码| 韩国手机不卡无码三级视频| 丝袜足交视频| 超碰久草| 97色涩| 狼天天狼天天大香蕉| 亚洲蜜桃V妇女| 久久午夜鲁丝片| 麻豆成人AV| 老熟妇一区二区三区| 一区二区三区四区久久视1| 男人的天堂啪啪| 黄片直播三级黄片两女一男| 婷婷av在线中文字幕| 熟妇色99| 国产成人五月天丁香花| 欲色啪| 欧美78| 亚洲永久AV无码精品秋霞| 亚码激情| 青青草视频这里只有精品| 国产一区二区啪啪视频| 日韩丰满熟妇| 天天综合网日韩7799| 色综合V| 欧美视频一| 91精品国产91久久青草| 精品国产乱码久久久久久蜜臀| 欧美线天码中字| 久久是精品| 蜜臀一二三区| 99视频自拍区| 蜜桃传媒视频第一区入口在线看| 亚州欧美综合| 久久精品成人| 国产精品另类| 校园春色亚洲色图| 男人天堂资源| 九九九久久久| 三级日韩一区二区三区| 白丝被操91| 欧美中文字幕日韩在线| 久久久久久久九九九九九九| 操www| 国产精品久久久久亚洲av| 久久精品高清AV| 久久久久久精品免费看A级| 99久久久久久久久| 成年女人18级毛片毛片免费观看| 国产亚洲综合欧美一区| 亚洲丝袜色| 久久久不能久久久久| 国产婷婷一区| 久久久久921| 亚洲春色欧美| 国产女大学生AV| 国产高清精品一区二区三区毛片| 97人人操人人摸| 亚洲av无码成人精品国产| 99色综合| 75大香蕉| 久久成人东京热人妻| 国产精品诱惑| 亚洲成人性爱网站在线播放| 99久久久er直播网址| 色综合色色| 欧中日成人免费影视| 999综合色| 97超级久久| 视频国产成人精品日本亚洲18| 粉嫩av久久一区二区三区| 8050午夜少妇无码| 丝袜夫妻自拍| 久久久一区二区| 久久久久久性爱免费视频| 日韩在线欧美精品一区二区| 人看人人摸人人操| 精品91摸| 夜夜做夜夜爽精品视频| 亚洲无线观看久久| 欧美熟女操屄| 久久25| 人妻人久久精品中文字幕| 久久精品国产亚洲AV先锋| 久久久久亚洲?V片无码V| 中出91| 久久成人午夜狠狠| 搡老熟女免费视频 | 久久精品男人的天堂| 91丝袜视频在线观看| 青娱乐欧美激情一区二区| 成人精品在线| 精品国产乱码久久久兰草影视| 欧美se综合| 亚洲av影院在线观看| 九九热免费国产视频婷婷伊人五月| 天天情欲宗合网| 中文字幕第9页萱萱影音先锋| 日韩欧美亚洲一区二区三区影院| 精品久久久久黄少妇| 在线天堂资源亚洲| 精品久久久久久中文| 91九色丨国产丨爆乳| 啊啊啊男女| 亚洲va有码在线天堂| 九久9热| 亚洲国产日韩精品久久久| 性开放中文AV高清无码免费看| 日本天堂网| 性色aV一区二区三区噜噜| 欧美性爱伊人| 超碰97欧美日韩| 国产综合日韩伦理| 亚洲不卡AV在线| 国产乱码久久久| 色久桃花影院在线观看| 操一区| 99亚洲精品| 国产免费大片| 99热在线观看| 国产欧美伊人| 精品78| 天天插天天干| 激情欧美97| 农村妇女一级二级三级视频| 情色大香蕉| 亚欧国产无码精品在线| 丝袜色综合| 欧美三级中文字幕hd| 一区,二区,三区视频| ji熟女.com| 伦在线97| 亚洲av综合色| 久草精品国产蜜臀| 一起草三级AV电影在线观看| 日本综合色图| 天天伊人| 99久久久无码| www.男人的天堂| 夜夜草网站| 亚洲无限观看| 曰韩av中文字幕专区| 国际精品久久久| 欧美夜夜狠| 欧美AAAA黄片| 色婷婷综合久久中文字幕雪峰| 亚洲欧美高清无码| 91美女色视频亚洲| 天天日B夜夜干B时时操B| 国产精品粉嫩福利在线| 天天躁日日躁AAAXX| 欧美色乱| 97超碰色屌| 国产精品美女在线一区| 欧美淫乱视频| 久久黄色网址| 手机看片日韩人妻| AV天黑人| 国产精品天美传媒| 国产操伦| 日韩91网| 夜夜操av亚洲一区二区| 三级色综合| 91精品国产91熟女| 中文字幕乱码人妻一区二区三区,99精品| 无码不卡八戒| 亚欧美色图| 青娱乐亚洲热| 国产精品视频一区二区三区八戒| 日韩AV噜噜噜一区二区三区四区| 九色 人妻 大香蕉| 日韩人妻播放| 蜜臀久久99精品久久久久久婷婷 | 久久亚洲一区女同性恋中文字幕| 精品国产乱码久久久久久影片| 激情 欧美 亚洲 小说| 激情婷婷丁香网| 美腿色图| 色婷网| 欧美黄色片在线播放| 91久久国产精品| 久久九七| 亚洲中文字幕97久久精品少妇| 色色网91| 97干在线| 亚洲综合另类色图| 区一二区日韩亚洲乱码av电影| 色牛牛AV| 国产又黄又粗的视频| 97超碰9| 久久偷偷色综合蜜桃| 91黑丝少妇| 97色干| 亚洲最新a在线观看| 亚洲 无码 偷拍| 粉嫩av一区二区三区天美传媒| 日韩不卡网操逼中文字幕日韩| 成年女人一区| 国内毛片无码一级毛片| 欧美国产精品| 波多野结衣AV无码一区| 91亚洲人| 精品人妻15区| 久久禁| 亚洲欧美国产va在线| 日本不卡高清免v欧美日韩在线观看| 色综合久久88色综合久久天天| 亚洲国产精品无码AV久久久| 人爽不卡视频| 97在线视频观看免费| 96久久久精品| 人人搡人人肉久久精品| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 啊啊啊好爽快点啊啊啊嗯嗯| 最新啪啪视频| 伊人五月天激情| 国产精品久久久久无码A√| 国产h小视频在线观看免费| AV女资源| 深夜激情| 超碰精品97| 亚洲影视高清三级-草1024榴社区入口-品爱AV| 97一区二压| 久久国产精品熟女人妻| 有码色中文字幕在线观看| 天天操女人| 色香阁在线| 天天综合~91入口| 狠狠久久亚洲欧美专区| 狠狠操狠狠爱| 亚洲nv男人的天堂网| 天天爽天天爽| 日韩免费人妻色情网站| 美女刺激久久国产欧美| 色色99| 天无日色综合| 99re这里只有精品3| 国产精品经典一卡久久久 | 男同专区一区二区三区在线| 人妻精品一区二区三区| 亚洲天堂资源网| 亚洲欧美小说| 中文字幕乱码人妻二区三区| 亚洲国产精品无码AV久久久| 日韩在线欧美精品一区二区| 操逼天美3区| 91成人久久| 色综合九九| 久操综合在线| 99999精品成人| 美女诱惑在线一区| 大但人体久久久久| 超碰在线91| 五月丁香六月综合缴清无码| 思思热免费在线视频| 偷看洗澡一二三区美女| 人人摸人人干| 欧美综合色站| 亚洲熟女乱色一区二区三区久久久 | 久久久久久九九九九九九| 久久有码视频| 色综合av综合久久| AV和黑人在线播放| www.色婷婷色综合| 91啪9色| 九九九九一级| 日韩射精| 美国人人操人人操| 性爱视频久久| 麻豆性爱视频在线播放| 熟女久久久| 91综合在线| 欧美熟女操屄| 91在线美女| 久湿久久| 91丝袜在线观看| 日本操大逼| 亚洲图片 91| 久久婷婷欧美| 欧美96精品在线| 久操网址| 久操99| 久久久性少妇| 青娱乐福利99| www.超碰在线| 天美精品一区二区三区四区在线观看| 岛国天天午夜影院传媒网| 日韩激情电影中文字幕| 精品久久人妻成人网| 97久久精品国产| 激情在线青青操| 国产精品久久久久久久黄无码| 人妻少妇蜜桃视频欧美一区| 骚女高跟AV在线| 东北少妇高潮zzzz| 噜噜噜狠狠色综合| 亚洲资源网| 国产丝袜欧美在线视频| 色噜噜狠狠色综无码久久合欧美| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | a片自拍直播视频| 97啪啪| 人妻黑丝袜电影| 秋霞免费无码视频日韩A片 | 亚洲色综合| 丁香五月性爱| 夜夜夜夜爽| 女同女同恋久久级三级| 美女露胸露屁股| 国产成人精品网站| 亚洲精品aa久久伊人| a人欧美综合天堂麻豆| 五月天亚洲色图| 色综合色综合网| 性感美女啊啊啊在线| 久久精品欧美一区二区三区不卡| 亚洲精品久| 欧美+日产+中文| 久99| 亚州欧美在线| 久久老子无码午夜伦不卡| 色拍偷亚洲| 伊人久久大香线蕉无码| 久久久久久久久久久久黄色 | 免费公开人人操| 免费久久9999| 亚洲精品成人动漫在线| 校园春色亚洲欧洲| 中文字幕av亚洲精品| 欧美日韩夜夜| 亚洲性网| 嗯嗯啊啊操死我| 久久国产AⅤ| 国产精品经典一卡久久久| 欧美性xxxxx狂欢| 日本美女性生活久久久久久久 | 超碰 97国产熟女| 97视频网站| 亚洲图片欧美制度| 亚洲?V无码专区在线电影| 亚洲情色在线| 日韩亚洲国产视频| 色97综合中文字幕| 久久露脸国产老熟女| 男人的天堂VA| 吻戏激情性巴克| 国产综合日韩伦理| 美欧老女人97| 中国东北熟女老太婆内谢| 久久久性少妇| 久久草草欧美精品| 亚洲一区在线观看欧洲| 91高跟美女在线播放| 在线视频免费播放一区| 一二三四区操操Av| 九九AV| 国产亚洲色停停久久99精品91| 中文字幕-区二区三区四区视频中国| 美国精品国产精品| 中文字幕二区| 欧美性特| 95自拍视频在线观看| 97久久精品不卡| 禁片 高清 在线观看视频网站| 国内毛片欧美香蕉精品| 激情人妻另类| 超碰av在线| 国产午夜福利专区综合| 综合天天。| 欧美午夜精品久久久久久3D| 国产狂喷潮在线精品| 久久久九精品| 啊啊啊啊啊啊啊国| 色官网色综合| 久久久久99999| 精品一国2| 水澄无码AV| 日日操丁香五月天| 久久精品—区二区三区内射| 日本最新免费韩国1区2区视频播放| 熟女六十路| 中文AV制服乱伦| 久久超碰天天| 亚州再线| 99热免费| 国产h片在线观看视频| 大香蕉中文在线| 久久久一区二区| 人妻出轨一区二区三区| 国产一区二区三区精品观看啪| 黄色无码高清黄色无码网站| 久久久内射良家| 亚洲限制级在线| 五月天大香蕉| 日本性爰一道本| 国产精品久久久啊| 久9爱精品| 97网址97| 亚91亚洲网| 床上啊啊啊一区二区三区| 伊人五月天激情| 99热这里是精品| 日韩美女操b| 日欧操屄| 亚洲天堂一区| 肥臀熟女一区二区三区视频| 新视频sss国产| 色老汉色| AV色天香在线| 首页亚洲国产高跟丝袜诱惑视频| 久久美女国产| 亚洲成人在线高清| 91老女人| 日本媚薬中文字幕在线| 一本色道久久综合熟妇| 日韩ab网| 大香蕉欧美伊| 啊好大好舒服| 中文字幕精品一区二区精品| 91干熟女| 人人摸人人干人人拍97| 久久久久久电影| 午夜视频久久久久一区| 日韩无码极品| 电家庭影院午夜69久久夜色精品国产69乱| 熟女高潮精品一区二区| 久湿久久 | 一级A啪啪啪啪| 久久九九国产精品| 国产精品成人福利在线| 尤物网址| 亚洲囯产精品女人久久久| 在线岛国新天堂8| 欧美一二三级精品在线| 国产粉嫩蜜臀av一区二区三区| 97视频在线免费观看| 久草加勒比一区在线| 亚洲国产97| 亚洲综合首页| 欧美色狠| 精品蜜乳AV免费观看| 性爱网站一区二区| 影音先锋少妇| 亚洲日韩美国人妻| 特级毛片特黄久久免费看| 日韩欧美中文日韩欧美色| 日逼国产| 丁香五月综合| 99热这里| 第四色色综合91| 九九热视频这里只有精品| 怡红院成人av| 99久久9| 亚洲男人在线观看天堂| 国产乱子伦久久精品综合一区二区三| 99热在线播放| 日本韩国国产精品一区|