免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

ApacheBench (ab) 壓力測(cè)試工具:從入門到實(shí)戰(zhàn)性能調(diào)優(yōu)

ApacheBench (ab) 壓力測(cè)試工具:從入門到實(shí)戰(zhàn)性能調(diào)優(yōu) 1. 項(xiàng)目概述為什么我們需要ab命令在網(wǎng)站開發(fā)和運(yùn)維的日常工作中性能始終是懸在頭頂?shù)倪_(dá)摩克利斯之劍。一個(gè)新功能上線一個(gè)促銷活動(dòng)開啟最怕的就是服務(wù)器在流量洪峰面前“躺平”。作為一線工程師我們手里得有趁手的“壓力測(cè)試”工具來(lái)模擬真實(shí)用戶訪問提前發(fā)現(xiàn)瓶頸。ApacheBench也就是我們常說(shuō)的ab命令就是這樣一個(gè)簡(jiǎn)單、直接、高效的瑞士軍刀。它沒有復(fù)雜的圖形界面不依賴龐大的測(cè)試平臺(tái)僅僅通過一行命令就能告訴你服務(wù)器在并發(fā)請(qǐng)求下的表現(xiàn)每秒能處理多少請(qǐng)求QPS平均響應(yīng)時(shí)間是多少有多少請(qǐng)求失敗了。這種“開箱即用”的特性讓它成為L(zhǎng)inux環(huán)境下進(jìn)行快速、初步性能評(píng)估的首選工具。無(wú)論是開發(fā)者在本地驗(yàn)證接口性能還是運(yùn)維同學(xué)在生產(chǎn)環(huán)境變更前做一輪基準(zhǔn)測(cè)試ab都能在幾分鐘內(nèi)給出關(guān)鍵數(shù)據(jù)。今天我們就來(lái)徹底拆解這個(gè)工具從安裝到實(shí)戰(zhàn)從參數(shù)解讀到結(jié)果分析讓你不僅能“跑”起來(lái)更能“看懂”和“用好”它。2. ab命令核心原理與安裝部署2.1 ab命令的工作原理淺析ab本質(zhì)上是一個(gè)用于對(duì)HTTP/HTTPS服務(wù)器進(jìn)行基準(zhǔn)測(cè)試的命令行工具。它的工作模式非常純粹模擬多個(gè)并發(fā)用戶向指定的URL發(fā)送大量HTTP請(qǐng)求并統(tǒng)計(jì)服務(wù)器處理這些請(qǐng)求所花費(fèi)的時(shí)間。其核心工作流程可以概括為單線程、多連接。ab本身是一個(gè)單進(jìn)程程序但它會(huì)創(chuàng)建多個(gè)并發(fā)的“客戶端”通過操作系統(tǒng)套接字實(shí)現(xiàn)這些客戶端同時(shí)向服務(wù)器發(fā)起請(qǐng)求。它主要測(cè)量的是服務(wù)器的網(wǎng)絡(luò)處理能力和請(qǐng)求處理吞吐量而不是客戶端的負(fù)載生成能力。這意味著ab運(yùn)行所在的測(cè)試機(jī)性能不能太差否則可能成為瓶頸無(wú)法給服務(wù)器施加足夠的壓力。一個(gè)常見的誤解是認(rèn)為ab會(huì)模擬復(fù)雜的用戶行為比如點(diǎn)擊鏈接、填寫表單。實(shí)際上它只做一件事重復(fù)請(qǐng)求同一個(gè)URL。這對(duì)于測(cè)試API接口、靜態(tài)頁(yè)面或簡(jiǎn)單的動(dòng)態(tài)頁(yè)面如首頁(yè)的極限性能非常有效。如果你想測(cè)試包含登錄狀態(tài)Session、復(fù)雜業(yè)務(wù)流程的場(chǎng)景ab就顯得力不從心了這時(shí)需要考慮 JMeter、Locust 等更高級(jí)的工具。但對(duì)于快速回答“這個(gè)接口在100個(gè)并發(fā)下響應(yīng)時(shí)間是多少”這類問題ab的效率無(wú)與倫比。2.2 在不同Linux發(fā)行版上安裝abab工具通常作為 Apache HTTP Server 工具包的一部分提供包名通常是apache2-utils(Debian/Ubuntu) 或httpd-tools(RHEL/CentOS/Fedora)。安裝非常簡(jiǎn)單。在 Debian/Ubuntu 及其衍生系統(tǒng)上sudo apt update sudo apt install apache2-utils -y安裝完成后可以通過ab -V來(lái)查看版本信息確認(rèn)安裝成功。在 RHEL/CentOS/Fedora 及其衍生系統(tǒng)上# 對(duì)于 CentOS 7/RHEL 7 sudo yum install httpd-tools -y # 對(duì)于 CentOS 8/RHEL 8/Fedora sudo dnf install httpd-tools -y在 macOS 上如果你使用 Homebrew可以很方便地安裝brew install apache-httpd # 安裝后ab命令通常位于 /usr/local/bin/ab注意在某些極簡(jiǎn)的Docker鏡像或云服務(wù)器模板中可能沒有預(yù)裝。按照上述命令安裝即可。另外請(qǐng)確保測(cè)試機(jī)本身有足夠的可用端口和網(wǎng)絡(luò)帶寬避免因本地資源限制影響測(cè)試結(jié)果。安裝完成后一個(gè)簡(jiǎn)單的ab -n 10 -c 2 http://localhost/命令就可以開始你的第一次測(cè)試了。其中-n 10表示總請(qǐng)求數(shù)為10-c 2表示并發(fā)數(shù)為2。3. 命令參數(shù)深度解析與實(shí)戰(zhàn)場(chǎng)景ab的命令行參數(shù)是其強(qiáng)大功能的體現(xiàn)。理解每個(gè)參數(shù)的含義是設(shè)計(jì)有效壓力測(cè)試場(chǎng)景的關(guān)鍵。下面我們分類詳解最常用和最重要的參數(shù)。3.1 基礎(chǔ)負(fù)載參數(shù)定義測(cè)試的“量”與“形”這是構(gòu)建測(cè)試場(chǎng)景的骨架決定了壓力的大小和模式。-n requests總請(qǐng)求數(shù)。這是測(cè)試的停止條件。例如-n 1000表示總共發(fā)送1000個(gè)請(qǐng)求后結(jié)束測(cè)試。設(shè)置一個(gè)足夠大的數(shù)可以讓測(cè)試持續(xù)一段時(shí)間得到更穩(wěn)定的統(tǒng)計(jì)結(jié)果。對(duì)于快速驗(yàn)證可以設(shè)小一點(diǎn)如100對(duì)于正式基準(zhǔn)測(cè)試建議至少5000以上。-c concurrency并發(fā)用戶數(shù)。這是模擬的同時(shí)向服務(wù)器發(fā)起請(qǐng)求的客戶端數(shù)量。這是壓力測(cè)試的核心參數(shù)直接決定了服務(wù)器的并發(fā)負(fù)載。-c 10表示模擬10個(gè)用戶同時(shí)操作。這個(gè)值需要根據(jù)你服務(wù)器的預(yù)估并發(fā)量來(lái)設(shè)置可以從一個(gè)較小的值如10開始逐步增加觀察性能拐點(diǎn)。-t timelimit最大測(cè)試時(shí)間秒。當(dāng)測(cè)試時(shí)間達(dá)到這個(gè)限制無(wú)論是否完成-n指定的請(qǐng)求數(shù)測(cè)試都會(huì)停止。例如-t 30表示測(cè)試最多運(yùn)行30秒。這個(gè)參數(shù)在你想進(jìn)行“持續(xù)一段時(shí)間”的壓力測(cè)試時(shí)非常有用比如想觀察服務(wù)器在長(zhǎng)時(shí)間壓力下的穩(wěn)定性可以和-n參數(shù)二選一使用。實(shí)戰(zhàn)場(chǎng)景選擇容量規(guī)劃測(cè)試使用-n和-c。例如-n 50000 -c 100發(fā)送5萬(wàn)請(qǐng)求并發(fā)100看總耗時(shí)和QPS。穩(wěn)定性/耐力測(cè)試使用-t和-c。例如-t 600 -c 50用50并發(fā)持續(xù)壓測(cè)10分鐘觀察過程中響應(yīng)時(shí)間、錯(cuò)誤率是否有波動(dòng)。3.2 請(qǐng)求定制參數(shù)模擬更真實(shí)的請(qǐng)求默認(rèn)情況下ab發(fā)送的是簡(jiǎn)單的 GET 請(qǐng)求。但現(xiàn)實(shí)中的請(qǐng)求要復(fù)雜得多。-m method指定HTTP方法。默認(rèn)是GET你可以設(shè)置為-m POST、-m PUT等。-p postfile當(dāng)使用POST方法時(shí)包含POST數(shù)據(jù)的文件路徑。文件內(nèi)容通常是表單數(shù)據(jù)如useradminpasswd123或JSON字符串。這是測(cè)試API接口的關(guān)鍵參數(shù)。-T content-type設(shè)置POST/PUT數(shù)據(jù)時(shí)的Content-Type頭。例如發(fā)送JSON數(shù)據(jù)時(shí)必須設(shè)置為-T application/json。-H custom-header添加自定義的HTTP頭??梢灾貜?fù)使用此參數(shù)添加多個(gè)頭。這在測(cè)試需要認(rèn)證Authorization頭、特定客戶端標(biāo)識(shí)或處理CORS時(shí)必不可少。ab -n 100 -c 10 -H “Authorization: Bearer xxxxxxxx” -H “User-Agent: MyTestClient” http://api.example.com/v1/resource-C cookie-namevalue為請(qǐng)求附加Cookie??梢灾貜?fù)使用以添加多個(gè)Cookie。用于測(cè)試需要會(huì)話狀態(tài)的頁(yè)面。-k啟用HTTP KeepAlive持久連接。這會(huì)讓ab復(fù)用TCP連接來(lái)發(fā)送多個(gè)請(qǐng)求而不是為每個(gè)請(qǐng)求新建連接。這能大幅減少TCP握手和慢啟動(dòng)的開銷更貼近現(xiàn)代瀏覽器或客戶端的真實(shí)行為測(cè)出的QPS通常會(huì)高很多。在進(jìn)行性能對(duì)比時(shí)務(wù)必統(tǒng)一此參數(shù)的設(shè)置。實(shí)戰(zhàn)示例測(cè)試一個(gè)登錄API假設(shè)我們有一個(gè)登錄接口http://api.example.com/login接受JSON格式的POST請(qǐng)求。創(chuàng)建一個(gè)文件post_data.json內(nèi)容如下{username: testuser, password: testpass}執(zhí)行命令ab -n 1000 -c 50 -p post_data.json -T ‘a(chǎn)pplication/json’ -H “Accept: application/json” http://api.example.com/login這個(gè)命令會(huì)以50的并發(fā)向登錄接口發(fā)送1000個(gè)包含JSON體的POST請(qǐng)求。3.3 輸出與調(diào)試參數(shù)獲取更詳細(xì)的信息這些參數(shù)幫助你更好地理解測(cè)試過程和結(jié)果。-v verbosity設(shè)置詳細(xì)級(jí)別。-v 2會(huì)打印出每個(gè)請(qǐng)求的響應(yīng)頭信息-v 3會(huì)打印響應(yīng)體-v 4會(huì)打印更多調(diào)試信息。在排查“為什么請(qǐng)求失敗了”時(shí)非常有用但輸出會(huì)非常冗長(zhǎng)不建議在正式壓測(cè)時(shí)使用高等級(jí)。-w將結(jié)果以HTML表格形式輸出??梢詫⑤敵鲋囟ㄏ虻轿募缓笤跒g覽器中打開查看格式更友好。ab -n 100 -c 10 -w http://localhost/ result.html-X proxy[:port]通過代理服務(wù)器發(fā)送請(qǐng)求。-V顯示版本號(hào)并退出。實(shí)操心得參數(shù)組合的常見陷阱-n和-t同時(shí)使用ab會(huì)以先達(dá)到的條件為準(zhǔn)停止測(cè)試。如果你設(shè)置了-n 10000 -t 10可能10秒內(nèi)只完成了2000個(gè)請(qǐng)求測(cè)試就停止了總請(qǐng)求數(shù)并非10000。POST數(shù)據(jù)文件格式確保-p指定的文件內(nèi)容格式與-T指定的Content-Type匹配。如果是application/x-www-form-urlencoded文件內(nèi)容應(yīng)是key1value1key2value2如果是application/json則應(yīng)是標(biāo)準(zhǔn)的JSON格式。Cookie和Header的覆蓋通過-H設(shè)置的Header會(huì)覆蓋ab內(nèi)部生成的一些默認(rèn)頭如User-Agent。如果你需要保留默認(rèn)頭并添加新的需要顯式地一起設(shè)置。4. 測(cè)試結(jié)果報(bào)告全方位解讀執(zhí)行完ab命令后屏幕上會(huì)輸出一份詳細(xì)的報(bào)告。這份報(bào)告是性能分析的依據(jù)每一個(gè)數(shù)據(jù)都有其特定含義。我們以一個(gè)典型的輸出為例分段解讀。假設(shè)我們執(zhí)行了ab -n 1000 -c 100 http://demo.example.com/得到如下結(jié)果數(shù)據(jù)為示例This is ApacheBench, Version 2.3 $Revision: 1879490 $ Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking demo.example.com (be patient) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed 600 requests Completed 700 requests Completed 800 requests Completed 900 requests Completed 1000 requests Finished 1000 requests Server Software: nginx/1.18.0 # 目標(biāo)服務(wù)器軟件 Server Hostname: demo.example.com Server Port: 80 Document Path: / Document Length: 15243 bytes # 單個(gè)響應(yīng)體的大小 Concurrency Level: 100 # 并發(fā)數(shù) Time taken for tests: 2.347 seconds # 整個(gè)測(cè)試持續(xù)的總時(shí)間 Complete requests: 1000 # 成功的請(qǐng)求數(shù) Failed requests: 15 # 失敗的請(qǐng)求數(shù) (Connect: 0, Receive: 0, Length: 15, Exceptions: 0) # 失敗分類 Non-2xx responses: 15 # 非2xx狀態(tài)碼的響應(yīng)數(shù) Total transferred: 15423000 bytes # 所有響應(yīng)數(shù)據(jù)的總大小包括頭信息 HTML transferred: 15243000 bytes # 所有響應(yīng)體中HTML內(nèi)容的總大小 Requests per second: 426.08 [#/sec] (mean) # 核心指標(biāo)每秒請(qǐng)求數(shù)QPS Time per request: 234.700 [ms] (mean) # 核心指標(biāo)每個(gè)請(qǐng)求的平均耗時(shí)用戶視角 Time per request: 2.347 [ms] (mean, across all concurrent requests) # 核心指標(biāo)服務(wù)器平均處理一個(gè)請(qǐng)求的耗時(shí) Transfer rate: 6417.00 [Kbytes/sec] received # 網(wǎng)絡(luò)吞吐量 Connection Times (ms) min mean[/-sd] median max Connect: 0 1 1.2 0 12 Processing: 20 233 45.6 225 412 Waiting: 18 230 45.1 222 410 Total: 20 234 45.7 226 412 Percentage of the requests served within a certain time (ms) 50% 226 # 中位數(shù)響應(yīng)時(shí)間 66% 245 75% 256 80% 263 90% 281 95% 302 98% 345 99% 367 100% 412 (longest request) # 最慢的請(qǐng)求耗時(shí)4.1 核心性能指標(biāo)解讀這是報(bào)告中最需要關(guān)注的部分直接反映了服務(wù)器的性能水平。Requests per second (QPS)每秒請(qǐng)求數(shù)這是衡量服務(wù)器吞吐量的黃金指標(biāo)。示例中426.08 [#/sec]表示服務(wù)器平均每秒能處理426個(gè)請(qǐng)求。這個(gè)值越高越好。在對(duì)比測(cè)試時(shí)例如優(yōu)化前后這是首要關(guān)注的指標(biāo)。Time per request (mean)這里有兩行容易混淆。第一行 (234.700 [ms] (mean))這是從單個(gè)用戶模擬客戶端視角看到的平均請(qǐng)求耗時(shí)。計(jì)算公式是總測(cè)試時(shí)間 * 并發(fā)數(shù) / 成功請(qǐng)求數(shù)。即2.347s * 100 / 1000 ≈ 0.2347s。它代表了用戶感受到的延遲。第二行 (2.347 [ms] (mean, across all concurrent requests))這是服務(wù)器平均處理每個(gè)請(qǐng)求所花費(fèi)的時(shí)間。計(jì)算公式是總測(cè)試時(shí)間 / 成功請(qǐng)求數(shù)。即2.347s / 1000 ≈ 0.002347s。這個(gè)值更接近服務(wù)器處理能力的理論值。這兩個(gè)值的關(guān)系是第一行 第二行 * 并發(fā)數(shù)。Failed requests / Non-2xx responses失敗請(qǐng)求數(shù)和非2xx響應(yīng)數(shù)。任何非零值都需要警惕。示例中失敗了15個(gè)且都是因?yàn)長(zhǎng)ength失敗響應(yīng)體長(zhǎng)度與第一個(gè)成功請(qǐng)求的長(zhǎng)度不一致或返回了非2xx狀態(tài)碼。這可能是服務(wù)器在高壓下出現(xiàn)了錯(cuò)誤如5xx或者響應(yīng)內(nèi)容不一致。必須結(jié)合日志排查原因。4.2 連接時(shí)間與百分比分布這部分?jǐn)?shù)據(jù)揭示了請(qǐng)求耗時(shí)的分布情況對(duì)于發(fā)現(xiàn)長(zhǎng)尾延遲至關(guān)重要。Connection Times分解了請(qǐng)求各階段的時(shí)間。Connect建立TCP連接的時(shí)間。如果這個(gè)值很大可能是網(wǎng)絡(luò)問題或服務(wù)器連接池滿了。Processing從發(fā)送完請(qǐng)求到接收完響應(yīng)的時(shí)間可以近似理解為服務(wù)器的處理時(shí)間。Waiting從發(fā)送完請(qǐng)求到接收到響應(yīng)第一個(gè)字節(jié)的時(shí)間TTFB - Time To First Byte。這個(gè)值很關(guān)鍵反映了服務(wù)器的即時(shí)響應(yīng)能力。Total整個(gè)請(qǐng)求的總耗時(shí)Connect Processing。mean[/-sd]表示平均值和標(biāo)準(zhǔn)差。標(biāo)準(zhǔn)差大說(shuō)明響應(yīng)時(shí)間波動(dòng)大性能不穩(wěn)定。Percentage of the requests served within a certain time響應(yīng)時(shí)間百分比分布。這是評(píng)估服務(wù)穩(wěn)定性和用戶體驗(yàn)的關(guān)鍵。50%中位數(shù)一半的請(qǐng)求在這個(gè)時(shí)間內(nèi)完成。示例是226ms。90%/95%/99%90%/95%/99%的請(qǐng)求在這個(gè)時(shí)間內(nèi)完成。我們尤其關(guān)注90%或95%線。示例中90%的請(qǐng)求在281ms內(nèi)完成但最慢的請(qǐng)求達(dá)到了412ms。如果99%線367ms比中位數(shù)226ms高很多說(shuō)明存在一些慢請(qǐng)求影響了部分用戶的體驗(yàn)需要優(yōu)化。在SLA服務(wù)等級(jí)協(xié)議中通常會(huì)承諾“95%的請(qǐng)求響應(yīng)時(shí)間低于X毫秒”。4.3 網(wǎng)絡(luò)與資源指標(biāo)Transfer rate網(wǎng)絡(luò)傳輸速率。示例6417.00 [Kbytes/sec]表示平均每秒從服務(wù)器接收了約6.4MB數(shù)據(jù)。這個(gè)值可以幫助判斷網(wǎng)絡(luò)帶寬是否成為瓶頸。如果這個(gè)值接近測(cè)試機(jī)或服務(wù)器的網(wǎng)絡(luò)帶寬上限那么性能瓶頸可能在網(wǎng)絡(luò)I/O上。Document Length / Total transferred反映了響應(yīng)數(shù)據(jù)的大小。過大的響應(yīng)體會(huì)消耗更多網(wǎng)絡(luò)帶寬和處理時(shí)間。分析心法如何從報(bào)告中發(fā)現(xiàn)問題看失敗率失敗率 0% 是最高優(yōu)先級(jí)問題。立刻檢查服務(wù)器日志看是超時(shí)、5xx錯(cuò)誤還是應(yīng)用層錯(cuò)誤??碤PS對(duì)比歷史基準(zhǔn)值或預(yù)期值。如果QPS過低說(shuō)明吞吐量不足??错憫?yīng)時(shí)間分布如果90%/95%線比50%線高很多例如3倍以上說(shuō)明服務(wù)有“長(zhǎng)尾”問題部分請(qǐng)求很慢??赡茉虬〝?shù)據(jù)庫(kù)慢查詢、緩存失效、外部依賴服務(wù)不穩(wěn)定、垃圾回收GC等??催B接時(shí)間如果Connect或Waiting時(shí)間異常高可能指向網(wǎng)絡(luò)問題、服務(wù)器負(fù)載過高導(dǎo)致無(wú)法快速接受連接或開始處理。結(jié)合監(jiān)控在壓測(cè)時(shí)同時(shí)使用top,vmstat,iostat等命令監(jiān)控服務(wù)器的CPU、內(nèi)存、磁盤I/O和網(wǎng)絡(luò)流量。如果QPS上不去但CPU已跑滿說(shuō)明是計(jì)算瓶頸如果CPU空閑但QPS低可能是I/O磁盤/網(wǎng)絡(luò)或外部服務(wù)瓶頸。5. 高級(jí)實(shí)戰(zhàn)技巧與腳本化壓測(cè)掌握了基礎(chǔ)用法和報(bào)告解讀我們可以進(jìn)行更貼近真實(shí)場(chǎng)景的復(fù)雜測(cè)試。5.1 模擬混合場(chǎng)景與參數(shù)化請(qǐng)求ab本身一次只能測(cè)試一個(gè)固定URL。但我們可以通過Shell腳本組合多個(gè)ab命令來(lái)模擬簡(jiǎn)單的混合場(chǎng)景。例如一個(gè)電商頁(yè)面70%的請(qǐng)求是瀏覽商品GET /product/{id}30%的請(qǐng)求是加入購(gòu)物車POST /cart。#!/bin/bash # simulate_mixed_traffic.sh BASE_URL“http://localhost:8080” CONCURRENCY50 TOTAL_REQUESTS1000 # 計(jì)算不同場(chǎng)景的請(qǐng)求數(shù) PRODUCT_REQS$((TOTAL_REQUESTS * 70 / 100)) CART_REQS$((TOTAL_REQUESTS * 30 / 100)) echo “ 開始?jí)簻y(cè)商品頁(yè) (70%) ” ab -n $PRODUCT_REQS -c $CONCURRENCY “${BASE_URL}/product/123” result_product.txt 21 echo “ 開始?jí)簻y(cè)購(gòu)物車接口 (30%) ” # 假設(shè)購(gòu)物車接口需要POST一個(gè)JSON body cat cart_data.json EOF {“productId”: 123, “quantity”: 1} EOF ab -n $CART_REQS -c $CONCURRENCY -p cart_data.json -T ‘a(chǎn)pplication/json’ -m POST “${BASE_URL}/cart” result_cart.txt 21 # 等待所有后臺(tái)任務(wù)完成 wait echo “ 壓測(cè)完成 ” echo “商品頁(yè)結(jié)果見 result_product.txt” echo “購(gòu)物車結(jié)果見 result_cart.txt”這個(gè)腳本同時(shí)啟動(dòng)了兩個(gè)ab進(jìn)程分別壓測(cè)不同的接口。需要注意的是這樣測(cè)試的是兩個(gè)獨(dú)立的流它們會(huì)競(jìng)爭(zhēng)測(cè)試機(jī)的網(wǎng)絡(luò)和端口資源并非嚴(yán)格的比例控制但可以作為一個(gè)近似的混合負(fù)載測(cè)試。對(duì)于URL路徑中的變量如/product/{id}ab無(wú)法直接參數(shù)化。一個(gè)變通的方法是準(zhǔn)備一個(gè)包含多個(gè)URL的文件然后寫一個(gè)循環(huán)但這樣每個(gè)ab進(jìn)程只測(cè)一個(gè)URL效率較低。對(duì)于復(fù)雜的參數(shù)化測(cè)試建議轉(zhuǎn)向 JMeter 或 Locust。5.2 持續(xù)壓力與梯度加壓測(cè)試我們經(jīng)常需要觀察系統(tǒng)在持續(xù)壓力下的表現(xiàn)或者逐步增加壓力找到性能拐點(diǎn)。持續(xù)壓力測(cè)試穩(wěn)定性測(cè)試# 持續(xù)壓測(cè)5分鐘并發(fā)100 ab -t 300 -c 100 -k http://localhost/api/health使用-t參數(shù)和-k啟用長(zhǎng)連接模擬穩(wěn)定持續(xù)的負(fù)載。梯度加壓測(cè)試尋找瓶頸點(diǎn)#!/bin/bash # step_load_test.sh URL“http://localhost:8080/api/data” DURATION60 # 每個(gè)梯度持續(xù)60秒 for concurrent in 10 30 50 80 100 150 200 do echo “” echo “正在測(cè)試并發(fā)數(shù): $concurrent” echo “” # 每個(gè)梯度壓測(cè)60秒輸出結(jié)果到獨(dú)立文件 ab -t $DURATION -c $concurrent -k “$URL” “result_${concurrent}.txt” 21 # 簡(jiǎn)單提取關(guān)鍵指標(biāo) grep “Requests per second:” “result_${concurrent}.txt” grep “Time per request:” “result_${concurrent}.txt” | head -1 grep “Failed requests:” “result_${concurrent}.txt” echo “” # 可選每個(gè)梯度之間休息10秒讓系統(tǒng)恢復(fù) sleep 10 done運(yùn)行這個(gè)腳本你會(huì)看到隨著并發(fā)數(shù)增加QPS和響應(yīng)時(shí)間的變化。當(dāng)并發(fā)數(shù)增加到某個(gè)點(diǎn)后QPS不再增長(zhǎng)甚至下降平均響應(yīng)時(shí)間急劇上升失敗率開始出現(xiàn)這個(gè)點(diǎn)就是系統(tǒng)當(dāng)前的一個(gè)性能拐點(diǎn)。5.3 結(jié)果數(shù)據(jù)的自動(dòng)化提取與分析手動(dòng)查看每個(gè)輸出文件效率低下。我們可以用grep,awk等命令快速提取關(guān)鍵指標(biāo)生成CSV格式便于導(dǎo)入Excel或數(shù)據(jù)分析工具進(jìn)行繪圖和對(duì)比。#!/bin/bash # extract_metrics.sh # 遍歷所有結(jié)果文件 for file in result_*.txt; do # 從文件名提取并發(fā)數(shù)例如 result_50.txt - 50 concurrency$(echo $file | grep -o -E ‘[0-9]’) # 使用awk提取關(guān)鍵指標(biāo) qps$(grep “Requests per second:” “$file” | awk ‘{print $4}’) # 提取用戶視角的平均時(shí)間第一行Time per request time_per_req$(grep “Time per request:” “$file” | head -1 | awk ‘{print $4}’) failed$(grep “Failed requests:” “$file” | awk ‘{print $3}’) # 提取90%響應(yīng)時(shí)間 p90$(grep “90%” “$file” | awk ‘{print $2}’) # 輸出CSV格式的一行 echo “${concurrency}, ${qps}, ${time_per_req}, ${failed}, ${p90}” done運(yùn)行./extract_metrics.sh metrics.csv你會(huì)得到一個(gè)包含并發(fā)數(shù)、QPS、平均響應(yīng)時(shí)間、失敗數(shù)、P90響應(yīng)時(shí)間的表格可以輕松地繪制出“并發(fā)數(shù)-QPS”和“并發(fā)數(shù)-響應(yīng)時(shí)間”曲線圖直觀地展示系統(tǒng)性能變化。6. 常見問題、性能瓶頸分析與排查指南在實(shí)際使用ab進(jìn)行壓測(cè)時(shí)你會(huì)遇到各種問題。下面是一些典型場(chǎng)景和排查思路。6.1 ab工具自身限制與誤區(qū)“Socket: Too many open files (24)” 錯(cuò)誤 這是Linux系統(tǒng)限制。ab每個(gè)并發(fā)連接都需要一個(gè)文件描述符。當(dāng)并發(fā)數(shù) (-c) 設(shè)置過高時(shí)可能超過用戶或系統(tǒng)的最大文件打開數(shù)限制。解決方案臨時(shí)提高限制ulimit -n 65535(僅對(duì)當(dāng)前Shell會(huì)話有效)。永久修改編輯/etc/security/limits.conf添加* soft nofile 65535和* hard nofile 65535重啟后生效。檢查系統(tǒng)全局限制cat /proc/sys/fs/file-max如果太小可以通過sysctl -w fs.file-max100000修改。測(cè)試機(jī)成為瓶頸 這是新手最容易忽略的問題。ab是單進(jìn)程的雖然能發(fā)起很多并發(fā)連接但其請(qǐng)求發(fā)送和接收統(tǒng)計(jì)都在一個(gè)進(jìn)程內(nèi)。如果測(cè)試的QPS非常高例如數(shù)萬(wàn)測(cè)試機(jī)本身的CPU可能被ab進(jìn)程占滿或者網(wǎng)絡(luò)帶寬被打滿導(dǎo)致無(wú)法對(duì)服務(wù)器施加足夠壓力測(cè)出的結(jié)果偏低。排查方法在運(yùn)行ab時(shí)另開一個(gè)終端在測(cè)試機(jī)上運(yùn)行top觀察ab進(jìn)程的CPU使用率。如果接近100%說(shuō)明測(cè)試機(jī)是瓶頸。運(yùn)行sar -n DEV 1查看網(wǎng)絡(luò)接口的吞吐量rxkB/s, txkB/s如果接近網(wǎng)卡帶寬上限也是瓶頸。解決方案使用性能更強(qiáng)的測(cè)試機(jī)或者采用分布式壓測(cè)用多臺(tái)機(jī)器同時(shí)跑ab。“apr_socket_recv: Connection reset by peer (104)” 錯(cuò)誤 服務(wù)器主動(dòng)重置了連接。這通常是因?yàn)榉?wù)器在高壓下崩潰、重啟或者達(dá)到了其連接數(shù)限制如Nginx的worker_connections主動(dòng)斷開了連接。排查方向立即檢查服務(wù)器日志如nginx error.log,dmesg查看是否有“out of memory”、“worker_connections are not enough”、“socket overflow”等錯(cuò)誤。6.2 服務(wù)器端性能瓶頸定位當(dāng)ab報(bào)告顯示QPS低、響應(yīng)時(shí)間長(zhǎng)或失敗率高時(shí)問題通常在服務(wù)器端。你需要登錄服務(wù)器進(jìn)行系統(tǒng)級(jí)和應(yīng)用級(jí)排查。系統(tǒng)級(jí)瓶頸排查使用命令行工具CPU瓶頸運(yùn)行top或htop。如果%us(用戶態(tài)CPU) 或%sy(系統(tǒng)態(tài)CPU) 長(zhǎng)期高于80%說(shuō)明CPU是瓶頸。進(jìn)一步用pidstat -u 1或top -Hp [pid]查看是哪個(gè)進(jìn)程或線程消耗CPU最多。內(nèi)存瓶頸運(yùn)行free -m或top。觀察available內(nèi)存是否充足。如果swap使用量 (Si,So) 在vmstat 1輸出中持續(xù)不為0說(shuō)明物理內(nèi)存不足發(fā)生了內(nèi)存交換性能會(huì)急劇下降。磁盤I/O瓶頸運(yùn)行iostat -x 1。關(guān)注%util(利用率)如果持續(xù)接近100%說(shuō)明磁盤I/O飽和。同時(shí)觀察await(平均等待時(shí)間)如果很高說(shuō)明磁盤響應(yīng)慢。網(wǎng)絡(luò)瓶頸運(yùn)行sar -n DEV 1。觀察網(wǎng)絡(luò)接口的吞吐量是否接近帶寬上限。也可以使用iftop查看實(shí)時(shí)流量。應(yīng)用級(jí)瓶頸排查Web服務(wù)器配置檢查Nginx/Apache的配置。關(guān)鍵參數(shù)包括worker_processes/StartServers工作進(jìn)程數(shù)建議設(shè)置為CPU核心數(shù)。worker_connections/MaxClients單個(gè)進(jìn)程的最大連接數(shù)。確保其值大于你的測(cè)試并發(fā)數(shù)。keepalive_timeout長(zhǎng)連接超時(shí)時(shí)間。適當(dāng)調(diào)大有助于提升性能。應(yīng)用服務(wù)器/框架查看應(yīng)用日志是否有大量錯(cuò)誤、超時(shí)或慢查詢?nèi)罩?。?duì)于Java應(yīng)用關(guān)注GC日志頻繁的Full GC會(huì)導(dǎo)致停頓。對(duì)于Python/Node.js等檢查是否有阻塞操作或內(nèi)存泄漏。數(shù)據(jù)庫(kù)/緩存這是最常見的瓶頸源。在壓測(cè)時(shí)監(jiān)控?cái)?shù)據(jù)庫(kù)的CPU、連接數(shù)、慢查詢。檢查緩存命中率是否過低。6.3 測(cè)試結(jié)果不穩(wěn)定的常見原因服務(wù)器有緩存第一次訪問和后續(xù)訪問性能差異巨大。解決方案在正式測(cè)試前先使用ab進(jìn)行幾輪預(yù)熱Warm-up讓服務(wù)器的緩存如數(shù)據(jù)庫(kù)查詢緩存、應(yīng)用層緩存熱起來(lái)然后再開始正式測(cè)試并記錄結(jié)果。外部依賴服務(wù)不穩(wěn)定如果你的應(yīng)用依賴其他API或服務(wù)它們的性能波動(dòng)會(huì)直接影響你的測(cè)試結(jié)果。盡量在隔離的環(huán)境如壓測(cè)專用數(shù)據(jù)庫(kù)、Mock外部服務(wù)下進(jìn)行測(cè)試。測(cè)試環(huán)境干擾測(cè)試環(huán)境與別人共享資源被搶占。盡量在獨(dú)立的、干凈的機(jī)器上進(jìn)行測(cè)試。JIT編譯影響針對(duì)Java/PHP等應(yīng)用服務(wù)器在啟動(dòng)初期JIT編譯器尚未優(yōu)化熱點(diǎn)代碼性能會(huì)較差。預(yù)熱一段時(shí)間后性能才會(huì)達(dá)到穩(wěn)定。這也是需要進(jìn)行預(yù)熱測(cè)試的原因之一。避坑技巧實(shí)錄一次真實(shí)的性能調(diào)優(yōu)案例我曾壓測(cè)一個(gè)返回JSON數(shù)據(jù)的API初始QPS只有120。ab報(bào)告顯示Time per request很高。服務(wù)器CPU使用率卻不高。首先我懷疑是網(wǎng)絡(luò)但sar顯示網(wǎng)絡(luò)流量很低。查看Nginx錯(cuò)誤日志發(fā)現(xiàn)大量*1024 worker_connections are not enough while connecting to upstream警告。原來(lái)是Nginx到后端應(yīng)用服務(wù)器的連接池滿了。調(diào)整Nginx配置增加了upstream塊中的keepalive連接數(shù)并增大了worker_connections。再次壓測(cè)QPS提升到300但CPU依然空閑。使用curl -w “\ntime_total: %{time_total}\n”手動(dòng)測(cè)試發(fā)現(xiàn)DNS解析時(shí)間占了大部分。原來(lái)API URL用的是域名每次請(qǐng)求Nginx都要解析。在Nginx的upstream中直接使用IP地址或者在Nginx的http塊中配置resolver并啟用緩存。最終壓測(cè)QPS穩(wěn)定在了850左右。關(guān)鍵教訓(xùn)性能瓶頸可能出現(xiàn)在任何環(huán)節(jié)客戶端、網(wǎng)絡(luò)、Web服務(wù)器、應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)。需要結(jié)合ab的報(bào)告和系統(tǒng)的全方位監(jiān)控像偵探一樣一層層排查。ab告訴你“病了”性能差而其他工具幫你找到“病因”瓶頸點(diǎn)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲日日日| 狠狠狠狠狠| 久9热视频| 日韩久久色| 五月激情丁香六月狠狠干| 久久五月婷婷综合网| 亭亭玉月丁香| 五月深爱激情网| 991国产精选视频在线播放下载| 日本天天色| www.丁香五月| 蜜乳国产网站| 综合激情五月丁香9999久久精| 色综合99色| 婷婷五月激情图片| 丁香六月综合激情| 欧美婷婷综合| 成人中文字幕在线| 成人精品人妻| 99精品大片| 免费99色| 日本在线观看91| 午夜天堂一区人妻| 狠狠干狠狠色| www.色五月| 香蕉人在线香蕉人在线 | 激情综合网,婷婷| 女同激情久久av久久| 亚洲精品五月| 欧洲第一久色| 岛国av电影网站| 五月丁香成人网| 色色日本| 日本九九网| 亚洲色 视频| 思思热天天看| 99热这里只有精品中文字幕| 精品人妻久久久久久| 久久五月天综合视频网站| 激情丁香五月天图片| 欧美成人va| 色五月超碰| 色综合天天天天做夜夜| SESE无码AV| 99久久久国产大片| 包操45分钟网站| 综激情网| 成人av免费观看| 日日夜夜亚洲一区| 午夜]香婷婷深深爱| 婷婷色六月| 97丁香五月| 久久性爱视频久久性爱视频| 综合色激情| 五月天色婷婷图片| 日日夜夜小色哥| 开心四月婷婷在线色播播| 综合99久久天天综合| 色色综合网www| 这里只有精品2| 丁香婷婷性久久| www.av骚货| 天天草狠狠擦| 无码人妻一区二区三区免费九色| www.五月天社区| 婷婷五月AV| 亚洲狠狠婷婷| WWW.99热| 六月丁香婷啪射| 天天爽夜夜爽夜夜爽精品| 99视频精品| 亚洲五月婷婷| 色五月天婷婷| 天久综合91综合首页| 日韩欧美一级大黄网站| 人人摸人人干| 天天视频精品9| 久久婷婷老| 亚洲 在线 另类| 久久综合久色欧美综合狠狠| 大胆伊人久久| 亚洲国产婷婷色五月| 欧美日本VA| 五月婷俺去也| 大陆肏屄视频| 乱码操操| www五月婷婷| 日本在线wwww| 五月婷婷六月丁香免费| 色97啪啪| 91操熟女| 亚洲va欧美va国产综合久久久| 99热99这里有免费的精品| 丁香五月冃欧美| 99愛国产| 色区久久| AV六月丁香| 97干在线播放| 色色婷婷综合网| 丁香五月激情鲁| 99热这里只有精品8| 天天草天天爽| 婷婷久久综合| 久久网日本| av在线超清中文| 丁香丝袜五月| www.五月丁香| 久久婷婷综合国产| ss视频xx91| 久操无码| 亚洲国产网站| 狠狠擼综合| 五月丁香六月婷婷无码| 婷婷五月天av| 久久加勒比| 亚洲日韩人妻操逼| 日日撸夜夜操| 五月婷婷伊| 六月婷久久| 伊人丁香五月| 五月丁香六月激情| 日本人人干| 激情5月婷婷狠狠干| 日本五月天婷婷丁香| 色婷婷狠狠18禁| 九九精品9| 色婷婷电影网| 九九这里是免费的视频5| 99精品偷自拍| 激情婷婷五六月天| 啪啪 综合网| 伊人久久丁香狠狠婷婷综合香蕉 | 丁香成人五月天| 色色色色色色网| 欧亚中文A V| 五月激情丁香六月狠狠干| 色情五月停停丁香| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 伊人婷婷五月天av| 婷婷五月天中文字幕| 五月婷婷综合在线| 久久这里这里有精品免费视频| 激情五月天小说| 五月天丁香| 夜色综合网| 五月丁香人人婷婷在线观看| 风流少妇A片一区二区蜜桃 | 色碰碰视频| 国产91在线视频| 新99思思视频| 丰满老熟妇BBBBB搡BBB| 天天舔天天| 伊人五月天在线| 色婷婷免费视频| 五月天色裸体视频| 婷婷久久色| 99成人免费视频| 日欧一片内射VA在线影院| 欧洲亚洲免费视频9| 丁香五月婷婷在线观看| 日本色色网站| 天天操无码| 97超碰欧美中文字幕| 婷婷五月激情在线| 五月色情婷婷| 99在线精品视频| 丁香社92视频| www.婷婷六月天| 五月丁香激情怕怕| 亚州操操| 成人AV在线网站| 97精品人人A片免费看| 色色综合无码| www.9操| 就爱操www com| 精品香蕉99久久久久网站| WWW.夜夜操.com| 99热激情| 蜜乳A√| 99视频在线9| 婷婷五月六月激情| 黄色激情久久| 欧美大片免费播放器| yazhou seshipin| 九九色综合| 99区视频| 久久大香蕉伊人| 99久久精品国产色欲| 超碰人人射| 亚洲第一第二网站| 日本五月视频| www.精品99| 久久婷婷五月综合| 丁香色综合| 六月婷在线| 99久超碰| 狠狠操.COM| 变天就操逼婷婷五月| 久久久久人妻精品| 五月丁香亭亭成人电影| www一起操在线观看| 色婷婷久久综合| 热九九在线| 日本操天堂| 婷婷色五月色| 婷婷色五月偷拍| 91肏肏肏| 91综合在线| 五月丁香啪啪啪啪| 91精品婷婷国产综合 | 五月丁香| 99这里都是精品6| 九热精品| 99色.com| 综合久久十三| 五月丁香影院| 亚洲丁香五月天视频| 丁香五月香蕉| 9伊人网| 91精品综合久久久久久五月丁香| 婷婷草| 日韩黄黄| 干一干xxxx| 99热这里都是精品| 日本九九视频| 这里只有精品网| aⅤ79成人片| www.cao.com久久| 五月天婷婷色综合| 操九色| 六月婷婷狠狠做| 亚洲啪啪视频| 九九99香蕉在线视频播放| 五月婷婷综合网| 99国产精品久久久久久久久久久| 色色免费网战视频| 囯产精品一品二区三区| 性 色 婷婷| 亚洲黄色精品| 99热99| 亚洲中字AV电影在线网站| 91久久精品无码一区二区三区| 丁香久久五月天视频在线观看 | 少妇AB又爽又紧无码网站| 99热这里只有精品4| 五月婷婷成人网首页| 99热这里有精品首页10| 在线91日韩| 亚洲精品又粗又大又爽A片| 丁香蜜臀黄色婷婷五月天| 激情五月天免费视频| 99综合久久| 亚洲成人九九九| 九九色网专区| www,setingting| 国产成人网址| 免费无码毛片一区二区A片| 伊人婷婷大香蕉| 天天狠狠夜夜狠狠2023| 五月婷婷开心五月| 99热只有| 色色综合激情| 91综合国免费久入| 天天干,天天日| 欧美三级欧美一级| 色综合色色| 丁香激情久久| 激情五月天综合网| 丰满人妻妇伦又伦精品国产| 丰满少妇猛烈A片免费看观看 | 丁香五月婷婷色综合基地| 任你草| 五月色婷婷影院| 99色精品| 九九伊人网| 天堂A∨在线| 婷婷综合五月天| www.五月天婷婷| 色玖玖综合| 五月久久婷婷天堂视频| 国产韩日亚洲美州欧亚综合在线| 婷婷激情五月天天天开心| 日木狠狠干| 91人妻色色网| 丁香五月激情综合网激情五月| 成人久久天天x资源站| 日日噜噜久久婷婷五月天| 色五月婷婷久久爱| 思思久久青草热| 五月婷婷激情综合视频| 色色色色色网| 九九热超碰| 嫩草AV久久伊人妇女超级A| BBWCUCKOLD精品熟妇| 欧美性生交A片免费看| 69超碰在线| 激情综合丁香| 综合色五月天| 激情五月五月五月婷婷| 激情影院丁香五月| 99久久婷婷国产综合精品草原| 日本欧美成人片AAAA| 色婷婷激情五月天丁香| 久久大香蕉视频| www久久久| 樱花99视频| 久久在线人妻| 激情综合无码| 婷婷五月综合色小姐小说| 91久久色| 玖玖精品资源| 久久婷婷色| 国产精品天天狠天天看| 久久亚洲天堂| 影音先锋 婷婷| 丁香婷婷深情五月亚洲| 色婷婷导航| 99热官网精品在线| 亚洲色五月天在线| 色播婷婷大香蕉| 国产精品99久久久久久久女警| 1024AV视频| 97人人看| 激情婷婷五月| 丁香激情综合| 六月亚洲婷婷6月中文字幕| 婷婷五月天论坛| 91无码视频| 亚洲天堂婷婷丁香| 亚洲五月天色| 色在线99| 激情五月瑟瑟| 久久这里只有精品1| 五月天丁香综合| 亚洲宗合激情| 思思热99er在线视频| 色五月激情五月开心五月| 日本三级大片| 九月色婷婷| 婷婷丁香五月亚洲| 97夫妻超碰| 综合久久综合久久| 性爱久久| 黑人熟妇一区二区三区| 99热这里只有精品1| 国产AV国片偷人妻麻豆| 婷婷五月大| 丁香五月婷婷香| 强壮的公次次弄得我高潮A片日本 | 国产亚洲网站在线| 色五月天婷婷| 狠狠狠狠青草| 五月天亚洲色| 91a片爽| 久er7久热| 日韩成人中文字幕| 91色五月| 久久曰曰| 国产成人av在线| 能看的av网站| 五月婷婷六月丁香首页| VA色婷婷| 久久婷视频| 99热99热在线观看| 五月婷婷六月天| 婷婷五月天激情四射五月天激情| 欧美人妻一区二区| 99re熱| 天天搡日日搡aaaaⅩ| 色综合9| 久久久久久久久久久久久久人妻视频 | 日亚二欧美| 丁香六月视频免费观看| 亚洲综合色婷婷文学| 五月花成人网| 七月丁香五月婷婷在线| 51avj视频大全| 婷婷视频在线碰| 婷婷五月开心中文字幕在线| 激情综合五月丁香六月婷婷| 婷婷五月丁香基地| 日韩在线观看亚洲| 色五月激情婷婷| 国产99美少妇| 69凹凸成人综合网| 亚洲va在线∨a天堂va欧美va| 久久久久97| 亚洲99热| 九九色人| 99在线免费观看| 玖玖九九99| 五月婷婷伊| 91色情播放| 婷婷五月综合色中文字幕| 婷婷激情小说| av大香蕉| 亞洲自怕| 天天色天天日| 天天摸天天舔在线视频| 色色婷婷综合| 五月婷婷六月丁香玖玖玫瑰91| 天天综合色丁香| 婷婷五月天av| 九九热这里只有精品31| 97色97干| 欧美69久成人做爰视频| 天天综合网在线| 国产免费AV在线| 欧美韩国日本| 五月婷婷激情综合av| 99热老网站| 丁香五月婷婷五月| 激情欧美丁香五月| www色婷婷久久综合久色| 51精品国自产在线| 成人在线网址| 日日日日操| 色婷婷a v| 一起草AV| 啪啪 综合网| 久热这里这里有精品| 五月天社区婷婷| 69久久99精品久久久久婷婷| 啪啪干伊人婷婷| 免费看片在线观看| 无码激情AAAAA片-区区| 中文字幕在线不卡| 99re6久热只有精品6在线直播| 人妻人人操| 色五月丁香com| 激情五月天色婷婷综合| 精品夜夜澡人妻无码AV| www.五月天| 26uuu美女三级视频| 九 九九九AV| 五月婷婷啪啪| 99热99久久| 丁香五月婷婷精品视频| site:xmssd.com| 九九精品re免费视频| 天天综合网在线| 国产婷婷五月天| eeuss人妻| 色玖玖网| 五月婷婷 激情按摩| 狠狠爱综合网| 婷婷娌伦网| 六月天丁婷婷| 六月丁香深深爱| 99九九热在线观看| 婷婷五月色惰| 一级无码作爱片| 免费观看18视频网站| 丁香六月激情四射| 夜夜爽天操| 天天日,夜夜爽| 99热免费网站| 成人五月天婷婷| 九色自拍| 99re在线精品视频| 九九热10| 五月婷婷色影院| 欧美碰碰碰| 久久大国产香蕉| 超碰在线99| 97久久视频| 五月天伊人综合| 色五月色五天免费视频| 婷婷丁香人妻天天久久| 性生活久久朋友人妻| 甈吧vv| 亚洲综合视频天天精品| 伊人影音无码一区二区三区 | 精品久久9| 色99在线观看| 在线观看av网站| 婷婷婷婷婷婷婷婷| 99久久久久久www| 色五月女| 可以免费观看的AV| 国产亚洲精品久久一区二区三区| 久9热视频| 婷婷五月天国产在线播放| 五月婷婷色激情| 激情五月婷婷丁香综合网| 婷婷五月婷婷五月| 丁香五月六月婷婷怡红院| 这里只有精品视频一区| 婷婷狠狠色| 99视频在线精品| 五月丁香偷拍| 婷婷激情五月| 国产精品a无线| 精品一二三区久久AAA片| 全部老头和老太XXXXX| 日韩丰满少妇无码内射| 色婷婷激情视频| 色婷狠狠| 啪啪91| 丁香五月 综合| 色另类五月天| 天天爽日日爽夜夜爽| 思思久久99| 色综合网址| 思思热视频在线| 欧美性色A片免费免费观看的| 日韩成人不卡| 日本人人草草| Av性爱网| 色在线视频网2025| 在线播放中文字幕| 在线看片h站| 色色丁香色五月| 色九月婷婷综合| 丁香六月色香蕉视频| 五月天成人手机在线视频| 成人色色视频| 色婷婷久久| 国产精品久久久爽爽爽麻豆色哟哟 | 大香蕉久久| 色九四色| 久久色情| AV五月婷婷露脸| 久久激情五月婷婷| 亚洲综合色婷| 激情婷婷丁香五月天小说| va中文资源在线观看| 日韩在线五月天婷婷| 大香蕉久操| 久草丁香婷婷1024| 丁香六月婷婷久久综合| 婷婷五月天免费视频| 夜夜爱网站| 久久天堂女人| 思思热在线视频观看精品| 深爱五月激情| 亚洲亚洲人成综合网络| 婷婷九月亚洲| 热思思| 日本婷婷| 99日本黄站| 色六月视频| 五月天久久婷婷| 日韩AV一区二区三区| 91丨熟女丨首页| 欧美性爱五月天| 99热超碰| 亚洲性天天| 丁香五月激情综合| 色婷婷呢狠禁久禁| 天天噜天天爱| 99这里只有精品视频| 五月天伊人久久| 丁香久久五月天视频在线观看| 亚洲成人高清在线| 色色色色色色五月婷婷| 天天看夜夜看| 99热这里有精品| 色九月婷婷| 婷婷五月天天爽| 九色99视频| sisi热国产| 国产操碰| 久久精品五月天| 五月婷婷丁香综合网| 亚洲亚洲人成综合网络| 99热综合在线| 婷婷色网| 五月天婷婷色播综合在线| 97干网站| 9色在线视频| 国产美女视频久| 91 久热| 久色五月| 中文字幕在线视频播放| 久久 视频这里只有精总| 色偷偷AV亚洲男人的天堂| 在线五月婷婷小电影| 九色91国产| 亚洲婷婷婷| 99激情视频| 婷婷自拍| 夜夜爱伊人| 91精品综合久久婷婷九色| 婷婷亚洲五月| bukadeavzaixian| 五月婷婷啪啪| 香蕉操亚洲| 激情综合五月天| www.91久久| 六月丁香五月天| 狠狠五月激情在线| 色色欧美色色| 丁香婷婷基地| 婷婷丁香九月| 丁香婷婷久久| 99精品无码网站| 久久成人亚洲欧美电影| 九九热99热| 黄网在线免费播放| 日韩aaa| 人人舔人人色人人高潮| 清纯唯美 激情四射| 俺也高清无码高清视频| 狠狠综合区| 五月婷婷基地| 婷婷丁香一月| 久久黄色片| 日本久久9| 色婷婷先锋| 99色色热| 99情色五月天| 色五月天堂| 热无码A∨| 99精品视频在线观看| 极品 少妇 内射| 婷婷九月久久| 91热99| www.狠狠操.com| 日本一级大片| 色噜噜狠狠色综合日日| 五月婷婷影| 日本啪啪网| A久久| 婷婷五月综合激情免费视频| 日韩九区| 激情六月婷婷啪啪| 99热在线观看精品| 综合热无码| 久久婷婷五月综合啪| 久热免费视频| 91视频五月丁香| 色婷婷色99国产综合精品| 丁香婷婷六月在线资源观看| 国产日比| 97AV人人插人人操| 91中文在线| 色综合天天综合成人网| 狠狠另类视频| 婷婷激情视频| 亚洲传媒在线观看| 狠狠综合网| 天天日夜夜曹| 人人爽人人爽人人爽人人爽| 亚洲综合99| 五月丁香在线观看国产| 五月天激情小说| 精品人妻久久久久久| 色日本丁香婷婷| 国产av影片| 色综合9| 国产精品18久久久| 久久精品视频99| 欧美综合激情五月天| 思思热久久阴99| 久久91久久91色欲精品| 色综色网| 日本人妻伦在线中文字幕 | 五月婷婷色| 久久激情五月婷婷| 五月丁香中文| 99性感视频| 天天天天天天天干| 九九Av| 欧美操逼天堂| 丁香九色不卡aaa | 五月丁香无码视频| 丁香五月激情六月综合| 深爱婷婷基地| 九九香蕉网| 久久嘟嘟丁香| 俺去婷婷 丁香| 婷色天堂| 777米奇影视第四色| 九九热精品在线| 天天干狠狠| 五月天堂婷婷| 久久停停超碰| 久久婷婷色色| 成人短视频在线观看| 99色在线| 亚州操操| 欧洲综合视频| 日本三级中国三级99| 婷婷五月色惰| 99亚洲视频| 日日干日日| 色婷婷的五月天| 婷婷丁香五月天激情| 六月丁香成人| www五月天com| 亚洲黄色精品| 九九99精品视频在线观看| 久9热在线视频| 五月丁香精品| 综合欧美五月婷婷| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 人人摸人人搞| 久久久久久久人妻| 婷婷五月天网址| 婷婷五月天奸女| 五月丁香婷婷基地| 少妇综合网| 狠狠狠狠狠| 亚洲精品久久久无码| 少妇高潮呻吟A片免费看软件| 成人 在线观看国产| 岛国AAAV| av无码电影| 日本不卡中文字幕| 99这里有精品免费| 色五月成人在线| 这里只精品热在线18| 五月花激情| 激情综合色图| 大香蕉九九| 五月成人丁香av91| 99热999| 女婷久久| 九九在线免费观看| 久久色五月天| 中文字幕日产A片在线看| 日本一級黃色一級片| www.9色色色| www.五月婷婷久久.com| 色婷婷香蕉| 日本色色视频| 九九精品综合| 国产六月婷婷| 天天干,夜夜爽| 人妻啪啪啪| 猫咪伊人AV| 日本在线99| 丁香五月激情婷婷视频| 欧美成人精品一区二区| 亚洲在线操| 99热99艹在线观看| 六月丁香色色色| 五月丁香直播| 色婷婷激情| 艳妇野外情欲放荡HD| 超碰网站在线观看| 激情五月天之六月婷婷| 久久精品夜色噜噜亚洲a∨| 秋霞免费视频| 99免费热视频在线| av性爱网站| www色色com| 高清成人综合| 丁香五月网在线观看| 精品婷婷| 五月婷婷六月丁香综合在线| 婷婷五月天AV| 五月婷在线影院| 五月丁香六月婷婷亚洲| 九九色逼| 99内射视频| 五月丁香婷婷人体| 另类小说五月天| 色在线99| 99精在线| a性生活久久无| 激情综合4月| 日本一级一片免费视频| 天堂呦 呦百度搜索-百度搜索| 久久永久网址| AV在线免费播放| 综合日本婷婷| 亚洲综合婷婷六月丁香五月| 五月激情在线| 任你干嘛免费视频播放| 九九九九这里只有精品| 亚洲av| 日日日,com| 99日本在线| 婷婷五月天影视首页| 亚洲天堂AV综合网| 欧美色欲色欲天天天www| 91九九| 婷婷偷拍网| 97人人干人人操| 中文字幕综合| 狠狠干综合网| 91九色国产熟女| 五月婷婷六月天| 亚洲第二AV| 五月丁香六月婷婷操操操| 色色婷婷综合| 人人爽人人爽人人爽人人爽| 欧美韩国日本| 美女要搞搞天天搞搞搞网站| 九九热AV| 婷婷五月天激情文学小说| 99精品久久| 91美女被操| 亚洲成人免费电影| 变态另类9| 激情五月小说婷婷| 国产成人网| 日本女天天爽| 99精品在线观看| 99热这是里只有精品| 五月天丁香网| 五月丁香少妇A| 色狠狠色噜噜AV天堂五区| 五月人人丁香婷婷五月人人丁香| 99只有精品| 婷婷五月天xxx| 免费看欧美成人A片无码| 激情美女五月天激情在线| 狠狠婷婷综合| 婷婷五月天久久| 99热全是精品| 激情综合在线观看| 五月丁香综合啪啪| 99国产精品久久久久久久久久久| 丁香五月丁香伊人| 色婷狠狠| 久久总和99| 99精品在线| 欧美精品999| 久久久久久五月天| 欧美丁香五月| 丁香六月五月天| 亚洲激情网站无码| 人妻激情久久| 色婷婷小说网| 亚洲综合在线伊人婷| 中文字幕日产A片在线看| 久久久久久丁香五月| 久草五月婷| 97碰超级人人看| 狠狠色情婷婷| 五月天怕怕| 久草大| 久久香蕉婷婷五月天| 激情婷婷22月间| 综合久久久| 日本在线视频手机播放五月婷| 五月婷婷 婷婷五月 一区二区 久久久| 婷婷色五月综合| 日本三级日本三级三级人妇四虎| www.狠狠操| 婷婷激情五月天小说| 97福利视频| 亚洲AV无码成人电影| 丁香五月影视| 日韩综合大黄| 五月色网| www.9色色色| 欧美人妻一区二区| www.99免费视频| 91成人电影| 天天日天天干天天插天天射| 婷婷五月激情欧美| 日本精品人妻无码77777| 狠狠插狠狠插| 五月丁香激情综合网官网| 9久久精品视频| 国产精品扒开腿做爽爽爽A片唱戏| 日本人人xxx| 思思网站| 影音先锋毛片网站| 超碰在线免费观看日韩| 精品五月天| 天天日天天干天天爽| 色婷婷视频| 九色 在线| 色99久草在线| 五月大香蕉| 色婷婷五月综合| 综合色天天| 伊人狠狠操| 开心 五月 综合| 91久久综合亚洲噜噜成人在线 | 亚洲色情在线| 国产精品久久久60086| 色婷婷香蕉| 一区二区乱码视频| 六月婷婷操逼| 五月综合激情啪啪啪啪啪| 99ri视频| 五月天色丁香| 五月天丁香网站| 五月天婷婷影院影院观看| 成人五月天在线视频在线观看| 六月婷婷激情图片| 激情久久肏屄视频| 久re热视频| 婷婷五月综合免费在线| 婷婷五月天99综合网站| 五月激情综合网| 99爱视频| 六月色播| 99福利导航| 五月婷婷丁香五月| 五月天天爽| 天天色综合网吨吧| 亚洲久久婷婷| 五月婷婷视频ab| 五月天婷婷基地| 九九色99| 天天久久狠狠色综合| 91碰超| 六月婷婷五月丁香| XX色综合| 久草热在线视频| 丁香六月激情国产| 久久久五月四色| 国产视频婷婷| 激情五月激情综合网| 色五月在线播放| 玖玖热视频| 亚洲无码色| 99在线视频免费| 97人人操人人| 亚洲操逼网| 精品久久艹| 超碰狠狠操| 国产毛片精品一区二区色欲黄A片| 777影视理论片大全在线观看| 丰满少妇猛烈A片免费看观看| 色五月婷婷在线| 艳妇野外情欲放荡HD| 五月婷婷很很色| 美女被肏网站在线看| 另类丁香综合| 五月丁香色色| 亚洲激情亚洲激情| 99热国产国产| 色五月六月婷婷| 色婷婷成人| 激情六月天| 色情五月综合婷婷| 激情五月丁香五月色| 色玖玖网| 婷婷天堂综合| 婷婷久久五月| 五月丁香AV在线| 亚洲第一综合| 1000部毛片A片免费观看| 久久ri精品| 激情五月综合久久| 综合玖玖性爱免费视频| 激情丁香五月激情婷婷| 狠狠色丁香久久婷婷综合五月| 国产午夜精品一区二区| 成人看片网站| 夜夜操激情| 九九热中文| 久久在线视频免费观看| 久久久久五月丁香| 丁香五月婷婷色| 五月天婷婷丁香视频| 爱婷婷都市激情| 婷婷91| 极品九九九九九九| 五月天国产成人| 99re思思热久久| 超碰精品在线| 色婷婷成人色网| 亚洲无码另类| 五月天停停成人网| 亚洲综合婷婷| www.99免费视频| 激情com| 婷婷五月天激情电影小说| 丁香五月大香蕉| 日日夜夜九九| 九月丁香| 深爱五月婷婷| 99噜噜噜在线播放| 欧美天堂久久| 亚洲无码九九| 丁香六月激情综合| 激情五月九九九| www。狠狠干。com| 9九色首页| 蜜乳av一级av| 天天做天天爱天天搞| 51avj视频大全| 久久婷婷五月天| 亚洲免费99| 激情五月天激情综合网| 少妇被躁爽到高潮无码文| 夜夜久久综合网| 99精品久久久久久久婷婷久久| 丁香六月婷婷缴情欧美| 99热97| 欧美午夜乱妇午夜福利| 大香蕉久久久久| 丁香激激情网| 91男同视频| 思思久久99热| 91人人操人人爱| 婷婷丁香婷婷97| 天天日狠狠| 日日夜夜天天综合| 亚洲av网址| 色婷婷成人| 九九精品9| 色欲丁香久久| 久久婷婷色| 伊人久久婷婷| 粉嫩av蜜桃av蜜臀av| 色色狼人综合| 欧美五月婷婷| 五月天大香蕉视频| 5月丁香六月婷婷| 色婷婷成人做爰A片免费看网站| 色五月激情网| 99啪啪| 丁香婷婷五月激情| 色情五月婷| www.五月丁香| 丁香五月天堂网| 激情五月天色色色| 热99久久这里只有精品| 色狠狠色综合久久久绯色aⅴ影视| 日韩色色小视频| 六月激情婷婷| 五月天婷婷色| 人人操AV| 激情六月下句是什么| 狠狠狠狠狠| 深爱激情中文五月天av| 国产激情综合五月久久| 国产在线中文字幕| 综合网色| 538午夜激情| 色婷婷综合网站| 99热精品网| 99ER热精品视频| av在线色五月丁香婷区久| 操操综合网婷婷| 日日夜夜爽| 丁J香六月首页| 欧美99视频| 大香蕉婷婷色| 99只有精品| 成人在线观看国产| 2023天天日夜夜爽| 欧美色综合天天久久综合精品 | 操逼三区| 久久伊人婷婷| 俺来也综合网精品一区| 婷婷五月激情综合| 五丁香激情综合| 激情婷婷。| 五月天激情四射网站| 九九99免费视频| 91狠狠综合久久| 欧美丁香六月激情视频| 国产AV一区二区三区最新精品| 五月综合色播播丁香婷婷| 亚洲欧美国产A片免费观看| 成人免费高清在线播放| 99热超碰在线| 免费无码毛片一区二区A片 | 丁香五月偷拍| 九九精品网站| 国产精品第一国产精品| 成人综合伍月天| 97色色综合| 五月丁香久久| 久久66精品| 久久婷婷网| 99激情| 婷婷五月另类网站| 久综合色| 中文字幕 中文字幕明步| 五月丁香六月激情狠狠| 国产91九色| 激情五月综合网| 人人摸人人干人人做| 亚洲无码11| 最近中文字幕在线中文视频| 五月婷狠狠| 九九色影视| 另类小说五月天综合网| 色狠狠综合入口| 99热精品在线在线| 五月婷婷片| 涩 五月 婷婷 狠狠| 亚洲丁香花色| 色天五月天在线观看视频| 五月丁香猫咪久久婷婷综合视频激情四射网入口| A片试看120分钟做受视频红杏 | 伊人久久婷婷| 九九机热| 91丨九色丨熟女高潮| 九九爱精品网站| 97天堂| 成人免费高清在线播放| 婷婷六月丁香1| 蜜臀av粉嫩av懂色av| 欧美大片免费观看| 99综合在线| 夜夜躁爽日日| 婷婷丁香午夜综合影视| 婷婷天堂视频| 五月丁香婷婷欧美色图视频五月丁香777电影 | 九九爱激情| WWW.婷婷| AA丁香综合激情| 俺去也在线官网| 成人必爱视| 欧美色宗和激情| 色99xx| 熟妇内谢69XXXXXA片| 91色噜噜狠狠狠狠色综合| 99.色| 成人精品一区二区三区四区五区| 99热碰碰| 亚洲成人日韩无码精品| 99在线观看| 182TV大香蕉| 亚洲婷婷欧美婷婷| 六月丁香好婷婷| 亚洲日韩人妻操逼| 激情av| 久久综合中文字幕| 丁香五月婷婷综合精品素人| 婷婷桃色网| 在线看的免费网站| 伊人在线视频| 婷婷的99视频网站| 少妇搡BBBB搡BBB搡毛茸茸 | 久热网站| 五月婷婷乱| 色婷婷成人影片| 九九九精品视频免费观看| 丁香九月激情| 亚洲不卡欧洲| 97五月天婷婷综合激情网| 日本色色视频| 色婷婷色综合久久精品V| 99热这里有精品| 青青久在线视频免费观看| 超碰99在线观看| 五月在线| 五月天伊人| 丁香五月在线| 五月天婷婷久久| 久久人人妻| 丁香五月天综合| 色色色综合网| www色色com| AV网在线| 亚洲六月综合激情久久下卡| 日本人妻伦在线中文字幕| 北京熟妇搡BBBB搡BBBB| 99热伊人| 成人五月丁香花| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 久久人操| 91狠狠综合久久| 久久九九视频网站| 五月天激情播播网| 99热最新精品| 99r久久这里只有精品| 五丁香激情综合| 色青五月天| 色丁香影院| 亚洲成人高清在线| 97九色| 思思精品视频| 91欧美| 婷婷中文字幕网站| 九九热99在线视频| 色九月欧美| 婷婷五月天久久久| 激情涩涩网| 色狠狠综合| 九九色视频| 97干婷婷| AAA久久久| 成人看片网站| 碰碰碰97国产| 91色在线 | 日韩| av九九| 怡红院院久久| 激情深爱综合网| 91久久久久久久久| 乱乱av| 国产免费av在线| 日本精品在线噜噜噜| 久久久精品人妻录| 成人精品人妻| 久久久激情| 七七久久婷婷| 大香蕉五月丁香| 色综合五月婷婷狠狠干| 五月丁香亭亭A片| 色情久久久| 婷婷激情六月| 九月丁香八月婷婷加勒比| 五月香蕉网| 激情小说五月天| 国产精品热搜丁香五月婷婷| 91碰超| 麻豆AV一区二区三区| 欧美一级毛卡片无码| 99九九99九九九视频精彩| 五月伊人视频在线看| 特级西西4444www无码| 九九热这里| 男人的天堂99| 毛片网站谁有| 六月婷婷在线| 久热91| 婷婷五月综合色中文字幕| 99超级碰免费视频| 丁婷婷五月天在线播放| 色99在线| 91综合在线观看首页| 色综合五月婷婷狠狠干| 五月色综合| www.91av.com| 超碰成人免费| 色99在线观看| 成人做爰高潮A片免费视频| 婷婷 伊人 久久| 五月开心六月婷婷在线播放网站| aaa久久| 日本波多野结衣视频| 91久久婷婷| 99视频精品全部观看10| WW婷婷五月天com| 久久婷五月天| 亚洲色热| 婷婷五月天性色| 新99色色色色色色| AAA久久久| 墨西哥毛片内射精| 九九热这里精品| 九月激情网| WWW.夜夜| 五月天婷婷色| 91操人视频| 99热这里只有精品在线| 五月婷婷操操| 天天爱天天日| 99亚洲精品视频| 99资源在线视频| 天天精品视频在线观看视频| 婷婷丁香六月天| 啪啪综合网| 伊人婷婷大香蕉| 九月婷婷在线观看| 影音先锋 91工厂| 伊人综合网站| 五月丁香综合啪啪| 五月精品| 亚洲成人在线电影网站| 日本色婷婷五月天成人电影| www.色婷婷| 九九亚洲综合| 丁香五月网址| 亚洲色综久久五月| 综合五月网| 91.www综合| 五月丁香亚洲五月| 免费视频WWW在线观看网站| 五月天色婷婷激情综合| 婷婷五月色|