免费国产精品自在自线-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
返回資訊列表
99在线精品免费视频| 欧美婷婷六月丁香综合色| av 一区三区四区| 鲁鲁色五月| 九九久久五月天| 久久女人天堂| 五月婷婷久草在线视频综合| 另类激情综合| 欲求不满的人妻| 日日夜夜狠狠| 五月丁香婷婷综合在线| 日韩久久欧亚| 久久性爱视频| 五月天天综合| 丁香六月天色婷婷| 久久久中文| 狠狠色婷婷7777久| 天天色99| 九九精品在线网| 97sese婷婷| 国内精品玖玖| 91人人爽狠狠狠| 丰满少妇猛烈A片免费看观看 | 亚洲婷婷免费| 精品久久这里热66| 综合丁香婷婷五月天| 狠狠婷婷色| 亚洲激情综合| 99九九视屏| 日熟女| 99在线热| 欧美日韩aaa| 欧美色色色| 色色网站日本91| 日本一级一片免费视频| WWW五月| 99手机在线精品视频| 五月丁香香蕉| 激情综合五月天| 久久机热这里只有精品| 狠狠色婷婷7| 五月天丁香婷婷网| 三年高清大片免费观看国语| 99热这里只有精品免费| 亚洲在线资源| 俺去也婷婷| 婷婷五月天色丁香| 九九热这里只有精品7| 玖玖在线视频| www.超碰在线| 97干欧美| 久久婷婷色| 99热99色| 亚洲五月天婷婷综合| 九月婷婷| 婷婷六月丁香在线| 五月婷亚洲精品AV天堂| 久久9久久| 国产毛多水多女人A片| 日本久久精品18| 亚洲综合色网站| 九九人人精品| 国产成人高清| VA色婷婷| 99色激| 色五月大| 九九热视频99| 噜噜色天天开心| 日韩成人综合| 丁香婷婷色| 婷婷丁香综合色AV| 五月天婷婷情色| 色婷婷四色| 色婷婷yy久| 国产精自产拍久久久久久蜜| 乱岳熟女50岁| 国产特黄色精品一区二区三区精品无广告| 色五月六月| 五月天激情综合| 五月丁香六月情| 思思热久久久在线| 伊人在线视频| 婷婷色影院| XX久久| 欧美天堂久久| 99久久综合| 婷婷爱五月天| 婷婷无五月无码视频| 无码AV免费精品一区二区三区| 99热精品在线观看| 久久久91精品| 伦乱天堂| 婷婷狠狠五月综合| 五月丁香久| 五月丁香六月色| 91免费看片| 99ri在线观看视频| 国产成人精品123区免费视频| 国产精品99久久久久久久女警 | 色播激情| 色香欲综合| 97超级操操| 婷婷色综合网日韩国产| 五月天基地| 久草视频一,二三四| 91人人操人人| 五月丁香六月花| 国产26uuu| 色五月亚洲| 婷婷五月丁香六月| 色综合综合综合| 国产麻豆视频| 91九色首页| 狠狠色婷婷777| 99性色| 日本婷婷| 五月天婷婷激情在线色图| 天天肏高清在线| 99色激| 五月丁香天堂网婷婷| 九九精品视频在线6| 99精色| 欧美性猛交99久久久99| 99在线视频网址在线观看| 国产激情在线观看| 日日夜夜小色哥| 狠狠色大香蕉| av一区免费看| 五月婷婷激情综合在线| 91久久九久久九久久九久久九久久| 久久色情| 天天色综和网| 国产成人在线精品| 色婷婷影视99| 欧洲综合色| 丁香色成人| 亚洲成人在线播放| 婷婷丁香色五月亚洲| 国产色色网址网站| 婷婷五月色播| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 激情小说婷婷五月| 99热这里都是精品| 99久久久久久www| 天天爽—爽| 亚洲综合另类| 超碰精品国产首页| 五月婷婷激情综合网 | 亚洲色网络| 九色视频九色九色91jiuseshipin| 97碰啪啪| 超碰在线人人| 精品婷婷| 夜夜操夜夜操| 六月婷婷六月天天在线免费| 欧美这里只有精品| 久久五月天激情美女| 色五月婷婷基地| 伊人婷婷福利网| 伍月婷婷免费视频| 中文字幕无码人妻少妇免费视频| 久久久久久久综合狠狠综合| 99热在线播放| www.丁香五月| 97人妻碰碰中文无码久热丝袜| 婷婷五月激情在线| 九九亚洲视频| 丁J香六月首页| 婷婷综合网在线| 婷婷五月丁香久久| 色之综合网| 亚洲99热| 日日夜夜狠狠婷婷色| 荷兰av一级| 色五月婷婷青娱乐| 色综合色五月| 激情婷婷久久| 天天插天天插天天插天天插| 日韩a热| 色五月综合| 国产操碰| 婷婷五月花| 激情涩涩网| 深爱激情五月网| 色九月| 中文字幕永久免费| 五月婷婷干干干| AV在线免费播放| 丁香大香蕉| 狠狠久久婷婷| 日韩成人AV在线播放| 涩丁香91| 99热99这里免费的精品| 婷婷色五月开心五月| 色激情五月| 色色色婷婷五月天| 超碰久热| 激情婷婷五月丁香啪啪啪| 日韩精品成人在线| 国产亚洲在线| 五月天色婷婷网| 影音先锋五月天婷婷丁香在线观看| 五月色婷婷激情| 激情五月天婷婷播播久久综合91| 激情丁香五月天图片| 97碰在线免费观看| 日日日日日| 91九色丨国产丨爆乳| 成人电影在线免费试看| 天天日日人| .精品久久久麻豆国产精品| 丁香五月激情视频在线| 七七九色| 熟妇无码乱子成人精品| 日本五月婷婷| 五月婷婷色播视频| 激情五月婷婷色色| 99热66| 色婷婷国色天香综合| 玖玖色综合色| 人人摸人人搞| 五月播播| 婷婷亚洲五| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 婷婷五月激情片| 五月婷婷色| 99热这里只有在线| 婷婷色婷婷亚洲成人| 久热免费视频| 婷婷丁香五月网| 丁香五月综合色婷婷| 色色色欧美| 丁香婷婷六月激情| 九九九九综合| 91精品综合久久久久久五月天| 婷婷色中文字幕| 九色自拍| 伊人五月天久久| 色色操| 天天操天天谢| 亚洲综合激| 天色综合网| 久热9| 五月天桃色深爱网| 色五月天本日| 丁香五月天啪啪| 91久久精品视频| 伊人久久婷婷| 激情综合五月天| 站长推荐无码播放| 五月天成人在线视频网站| 日日爽日日操| 色婷綜合网| 色婷婷视频| 久久182| 俺去也五月天婷婷| 五月天天堂久久| 九九成人电影婷婷| 全部老头和老太XXXXX| 五月婷激情| 亚洲综合网激情小说| 99日本在线| 亚洲成人无码免费| 中文字幕在线不卡视频| 亚州第一黄网| 丁香婷婷影院| 国产在线激情视频| 开心色色五月天综合| 亚洲五月婷婷| 99热在线只有精品| 日本三级韩三级99久久| 色色色999| 亚洲九九九九| 五月丁六月婷| 五月婷婷激情综合拍| 伊人丁香五月| 婷婷五月天手机版视频| 色五月婷婷DVD| 婷婷久久欧美| 五月丁香久久综合| 色五月丁香激情视频| 视频综合网| 开心久久五月天| 97人人操| 操笔无码| 色久五月天| 激情五月,婷婷五月,丁香五月| www色中色综合| 久久机热思思热| 26uuu欧美宗合| 欧美婷婷精品激情| www.99色| 五月丁香六月片| 欧洲电影在线观看免费版英语版| 婷婷五月天丁香综合网| 非洲一级AV| 久久五月婷天天干| 久久综合色情网站| 在线成人网站| 九九热免费观看视频| 九九爱这里只有精品| 亚洲五月丁| 亚洲人人操BD| 99热碰碰热| 99re这里只有| 丁香五月玖玖| 色婷婷基地在线| 天天色播| 操你av| 99精品小视频| 亚洲欧美婷婷五月色综合| 五月丁香综合啪啪| 色综合久久88色综合天天| 色五月婷婷1| 99热这里在线精品| 韩国激情五月天综合网| 天天综合精品| 丁香香蕉婷婷| 深爱激情九九五月天| 99视频| 婷婷网五月天| 色色网91| 97婷婷丁香五月天激情图片| 婷婷五月激情的图片| AV操操操| 丁香婷婷欧美综合| 337p大胆噜噜噜噜噜91Av| 五月丁香六月日逼| 91视频综合网| 婷婷五月性感| 久久五月天激情美女| 久狠日av| 99免费| 狠狠爱深色婷婷综合| 九热电影av| WWW、日本色丁香co m| 天天干天干| 久草婷婷| 激情小说五月天社区丁香| 婷婷亚洲在线| 成人做爰A片免费看网站找不到了 噼里啪啦在线观看免费完整版视频 | 久久久.COM| 97丁香花五月天激情小说| 天天干天天爽天天爽| 丁香花色色网| 九九九午夜视频| 深爱网深爱综合网| 日韩高清成人| 91狼友视频网页更新| 丁香六月婷婷综合| 另类激情首页| 色五月婷婷在线| 国产性爱在线| AV色五月婷婷| 婷婷综合亚洲| 婷婷六月综合基地| 日日综合网| 日本少妇裸体做爰高潮片| 激情四射婷婷| 婷婷五月天综合久久| 成人综合视频网址| 丁香五月激情性色郤| 亚洲人妻av| www,黄色在线,con| 婷婷激情欧美| AV网在线| 欧美色色色| 超碰在线国产| 激情网站五月| 婷婷五月天视频| 久久久9久| 色欲五月天| 五月开心激情| 综合欧美五月婷婷| 久久97| 91尤物九色在线| 五月天婷婷激情小说电影| 激情网五月天| 操丝袜视频影院导航| 九九伊人网| 99综合视频一体| 日本久久高清| 丁香五月天导航| 91一起操| 五月丁香综合激情在线观看| 另类天堂| 六月丁香好婷婷| 精品久久久中文字幕大豆网推荐理由| 99综合99| 一区=区操屄高清大全av| 南京搡BBBB搡BBBB| 色婷婷亚洲综合网站| 人人操人人爱丁香五月| 国产操逼网站| 超碰爱爱爱| 色综合色色色色| 人人看人人要| 日hao1区| 中文av网| 好好干av| 91精品视频男人的天堂| 婷婷五月大香蕉| 九九99免费视频| AV在线观看网站| 中文字幕av久久爽一区| 色色色综合网| 亚洲日日操| 亚洲人妻电影| 五月婷婷丁香六月| 五月丁香激情深爱婷婷| 操九色| 色情五月婷婷| 3p日韩网站视频| 99欧美热| 日本久热| 偷拍视频五月天| 亚洲无码猫咪| 丝袜大香蕉| 丁香五月另类小说在线阅读| 97涩婷婷| se99视频| 夜夜做夜夜愛| 26uuu青青| 香蕉久久国产AV一区二区| 人妻系列久久久久久久久久久 | 人妻第九页| 99视频只有精品| 色丁香五月婷婷婷| 超碰精品国产首页| 丁香五月综合| 亚洲AV网址| 操人91| 久久草大香蕉| 久草热视频在线观看| jiujiu热在线视频| 久re热视频| 日本人妻伦在线中文字幕| 无码橾| 六月伊人婷婷| 久久久婷婷婷| 色婷婷成人做爰A片免费看网站| 丁香午夜天| 全网最新网黄大秀直播高清,主播国产录屏在线 | 呦呦AV| 婷婷五月天综合久久日| 天天色天天| 综合五月网| 亚洲精品乱码久久久久久按摩观| 日本黄色在线观看| 色九四色| 欧美人与性动交CCOO| 99精品综合视频| 国产在线6| 亚洲超级碰| 国产黄色在线观看| 婷婷伊人| 六月婷婷五月丁香| 五月丁香亭亭操逼| 综合网啪| 久久婷婷亚洲| 精品无吗va视频免费观看| wwxx日本| 色噜噜狠狠色综合伊人| 玖玖婷婷色五月| 久久综合五月天激情小说网站| 色九九综合| 婷色五月天| 天天夜夜六月丁香五月婷婷老师| 丁香六月婷婷| 五月天激情国产综合婷婷婷| 天天综合精品| www.成人婷婷综合| 婷婷六月伊人| 国产精品久久久久久五月天加勒比| 五月婷婷六月丁香免费| 狠狠综合网| 夜夜躁婷婷AV| av在线中文| 久久黄色片| 99精品在线观看| 可以看的AV| 色婷婷丁香| 日本久久人| 久久草婷婷丁香网站| 狠狠肏综合网| 啪啪干伊人婷婷| 九九这里有精品视频| 玖热精品综合视频| 婷婷六月爽| 亚洲 精品 综合 精品| 久热久色| 天天日,夜夜爽| 五月婷婷m| 五月丁香色狠狠干大屄| 欧美婷| 欧美视频在线观看噜噜| 久久婷婷激情视频| 色99视频| 日本三级中国三级99人妇网站| 射区导航| 五月丁香六月花| 天天天天天久久久久久| 九九婷婷五月天| 天天做天天爱天天玩| av色婷婷| 在线只有精品| 9在线9在线婷婷在线国产| 九九精品9| 亚洲乱码日产精品BD| 亚洲亚洲人成综合网络| 91女人18毛片水多国产| 欧美在线97| 丁香九月综合| 开心五月深爱五月丁香五月激情五月| WWW,五月| 国产精品久久久久9999小说| www.刺激色网站www.| 五月天婷婷久草丁香| 大香蕉五月天婷婷丁香91| 五月丁香av中文| 日本一级一级一级一级| 久久精品在线| 久久久久丁香婷婷五月天| 九色视频91| 91Chinese在线| Av狠狠色丁香婷| 五月天丁香成人社| 香蕉久久国产AV一区二区| 色中色综合| 五月丁香激| 五月天综合色| WWW久| 无码四色色色| 天天摸天天舔| 五月天激情小说| 国产午夜精品AV一区二区麻豆| 99国产精品白浆在线观看免费| 日韩AV中文在线观看| 97碰碰碰| 丁香五月偷拍| 色99婷婷五月天| eeuus五月婷| 婷婷五月天成人小说| 五月香婷婷| 精品热青草| 日本色色图| www.激情五月天| 99热大香蕉| 五月天丁香久久综合| 婷婷综合在线视频| 开心四月婷婷在线色播播| 五月丁香婷婷AV| 99热99色| 五月婷啪啪| 五月丁香五月天现场视频| 激情婷婷久久| 日韩性爱无码| 伊人午夜综合色啪| 五月花婷婷| 久久激情婷婷| 激情网站综合五月天| 婷婷六月丁| 成人国产欧美大片一区| 久久超级碰视频| 五月婷婷色吧!| 这里有精品| 国产综合婷婷| 色欲一二三| 天天干天天av天天射| 五月婷婷伊| 精品视频99看在线视频| 丁香五月欧美| 中文AV网站| 97超级操操| 99热国产这里只有精品| 亚洲av综合在线| 婷婷丁香五| 色色色网站| 国产免费AV网站| 狠狠色噜噜狠狠狠狠综合| 牛牛澡牛牛爽| 色色色.com| 国产古装妇女野外A片| 夜夜骑操AV| 女人天堂AV| 五月婷婷黄色| 五月丁香六月婷| 色噜噜婷婷| 日韩aaaaa| 色99免费视频中文| 久久99大全| 伦乱人妻| 天堂婷婷丁香六月网| 五月天播播中文字幕| 五月丁香成人网| 五月丁香五月丁香五月丁香五月丁香91| 久久99这里只有精品视频 | 五月综合婷婷久久在线| 91九色 熟| 五月天天爱| 九月停停| 天天操天天插| 久9热| 六月丁香啪啪啪| 五月色视频| 国精产品一区一区三区免费视频| 色婷婷先锋| 久久久五月五丁香| 天天日天天做天天舔| 91丨九色丨43老版熟女| Se.婷婷五月天| 婷婷成人五月天成人文学| 久婷婷五月激情| 无码人妻少妇色欲AV一区二区 | 欧美三9久九观看| 99精品22| 大香蕉伊人99| .精品久久久麻豆国产精品| 26UUU精品一区二区Com| 色色婷婷丁香五月天| 中文字幕在线资源| 激情婷婷五月女| 色综合久久久无码中文字幕999| 操射国产日本| 色老久久| 97热视频| 激情小说五月天中文字幕| 丁香六月亚洲| 日本色色网| 丁香婷婷五月天色播| 色综合中文综合网| 亚洲天天操| 另类图片五月天婷婷| 青青999| 99亚洲精品视频| 欧美va| 婷婷五月丁香香蕉| 九九Av| 五月激情网站| 婷婷丁香色五月亚洲| 伊人久久丁香狠狠婷婷综合香蕉 | 丁香婷婷啪啪啪| 狠狠色五月| 成人做爰高潮A片免费视频| 婷婷五月综合网| 噜噜噜噜噜在线| 亚洲中文字幕在线电影| 色999亚洲人成色| 天天干天天射综合网| 久久久大香蕉| 超碰五月婷婷五月天| 五月婷婷激情五月| 狼友超碰| 99热这里只有精品22| 丁香五月天欧洲在线| 丁香五月停停av| 色婷婷丁香五月| 五月天婷婷色综合| 国产精产国品一二三在观看| 99色精品| 色婷婷色五月天| 另类图片天天影视在线观看| 万月丁香狠狠爱| 婷婷激情五月| 日本婷婷色日| 激情五月婷婷啪啪| 91热99| 精品操逼一区二区| 亚洲综合色成丁香五月色| 桃色五月天| 中文字幕成人影视| 五月婷婷激情综合av| 婷婷激情5月| a色色色色色| 996er热| 九九超碰人人| 中文字幕在线aⅴ免费观看| 五月天.com| 类似婷婷激情综合网站| 99久久玖玖| 久久机热这里只有精品| 五月天久久www| 人人舔人人色人人高潮| 婷婷激情五月天综合| 99自拍视频网站| 成人五月天丁香婷| 色婷婷亚洲在线观看| 在线18av | 另类小说五月天| 五月综合激情| 991国产精选视频在线播放下载| 日日操夜夜骑| 五月天婷婷丁香社区| 久久婷婷五月草视频| 亚洲看av的网站| 开心五月综合| 色小说婷婷五月天天天| 色9色| www.激情在线| 天天激情5月天亚洲| 97人人干| 天天爽天天日人人爱 | 午夜婷婷| 五月丁香网站| 久久精品99国产精品日本| 天天插天天射| 亚洲妇女熟BBW| 丁香五月天社区| 激情内射人妻1区2区3区| 亚洲三级无码| 天天操精品| 久久久久9久无码视频| 99精品国产在热久久| 苗黎美女四级成人版一级二级毛片| 三十熟女| 97久久精品视频| 久久久27操| 91色五月| 五月天婷婷激情干干| 久久精品在线| 热99只有里视频| 日韩AV大全| 色哟哟www| 91超级碰| 伊人99久久| 99超碰人人| 久久九九@| 5月婷婷视频网站综合| 人人干Av| 综合五月丁香六月婷婷| 婷婷五月天开心网| 色婷婷性爱网| 四月婷婷五月丁香| 六月色日韩| 激情网开心网| 在线视频99| 天天插天天射| 九热视频免费观看| 欧美天天爽| 99久久思思| 婷婷色色丁香五月天| 久99| 婷婷五月a| 五月天无码| 亚洲色激情| 色五月婷婷综合| 级人人91| 日韩成人无码人妻| 中文国产五月天| 天天干天天做| 国产真实乱对白精彩| 99亚洲精美视频在线观看| 热久久成人| 大香蕉视频99| 婷婷五月综合久久中文字幕| 五月婷婷久久开心网| 色色色色色网| 欧美成人AAA片一区国产精品| 1024婷婷综合久久五月天| 婷久看人爽| 亚洲色图五月丁香| 久久AV无码精品人妻系列试探| 9伊人网| 天天爱天天做天天爽| 成人版视频在线观看| 激情五月黄色| 伍月婷婷免费视频| 色综合综合色| 欧美性猛交 XXXX 乱大交| 九九激情| 色婷婷影音| wwwss在线观看| www.五月婷| 五月天激情日色在线| 五月天伊人网| 久久九九激情五月天| 成人做爰A片免费看网站找不到了| 婷婷五月天免费视频| 激情内射人妻1区2区3区| 天天日天天舔天天摸| 婷色五月天| 色爱爱综合网| 6080av| 996er热| 亚洲综合五月天婷婷丁香| 五月天婷婷激情小说电影| 婷婷情色开心五月天99| 天天日日人| 成人短视频在线免费观看| 亚洲熟妇AV乱码在线观看 | 亚洲中文字幕av| 五月婷婷天天| 九九Y精品热播| 99热国产免费| 秋霞电影一级黄| 成人精品在线观看| 婷婷五月天黄色| 99re热在线视频观看| 超碰京东热av男人的天堂| 欧美天天干天天草| 射婷婷中文字幕| 热久69| 欧美一级操逼视频| 中文成人在线| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 天天射影视综合网| 国产91资源在线| 99在线视频在线观看| 激情婷婷五月天网址| 99精品热| 色之综合网| 色婷婷99| 五月香蕉婷婷| 99色爱| 天天综合永久| 欧美日韩色色| 色情五月综合婷婷| 成人av在线网址| 激情人妻综合| 99热最新网址| 色99视频| 99视频精品8| 97色综合| 丁香综合婷婷五月天| 丁香婷婷色九月| 欧美熟女99| 91蜜桃婷婷狠狠久久综合9色| 九九99久久| 91日综合欧美| 99re免费精品视频| 99惹在线精品免费观看| 日日干日日| 五月丁香婷婷激情澎湃四射| 色噜久| 无码人妻一区| 狠狠爱婷婷爱| 婷婷色色五月天| 天天天天天天天操| 久久婷婷夜| 丁香色五月天| 热久久视频99| 五月婷婷啪啪啪| 婷婷五月天成人网| www夜夜操comwww| 欧美日韩123| 婷婷久久网| 中文字幕婷婷五月天在线观看| 99久久精彩视频| 色色婷婷丁香| 亚洲五月花| 午夜一区| 依人大香蕉在钱1| 熟女网站久久| www.夜夜操| 天堂AV在线看| 婷婷色导航| 五月婷婷丁香日韩在线| 久艹大香蕉| 婷婷五月丁香成人| 色五月婷婷操逼| 国产乱人偷精品人妻A片| 人人射人人高潮| 五月丁香六月在线欧美| www网站在线观看| 99热国产精品| 婷婷丁香五月综合网上| 婷婷久久丁香五月| 色婷婷五月天在线观看| 天天五月情| 丁香花操逼| a久久| 无码色| 五月开心婷婷| 成人精品人妻| 五月天婷婷无码| 26uuu精品一区二区| 婷香五月激情视频| 激情播丁香| 日韩啪| 日韩五月婷婷久久| 狠狠色狠狠操| 少妇性按摩无码中文A片| 丁香六月av| 久天综合| 亚洲国产网站| 色呦呦在线| 九九热99视频| 99爱视频在线| 99色热综合| 五月丁香六月激情综合网| 国产成人亚洲综合亚洲| 亚洲综合在线视频| 少妇高潮一区二区三区99欧美| 99热99re6国产在线播放| 99热这只有| 中文字幕av在线播放| 7777久久亚洲中文字幕| .精品久久久麻豆国产精品| 丁香五月天.com| 欧洲亚洲免费视频区| 操99| 欧洲一区二区| 成人在线高清| 欧美成人va| 六月色播| 色丁香五月婷婷| 丁香成人色情五月天| tingtingzonghewang| 天天拍天天做视频| 超碰九九热| 99男人天堂| 中文字幕无码成人电影| 丁香婷婷浪潮AV久久综合| 99热99艹在线观看| 中文字幕日产A片在线看| 亚洲人妻一区二区| 性爱电影科技贸易有限公司| 精品一二三区视频立| 婷婷香香五月| 久久色五月天| 九九热视频精品2| 激情久久五月网| 天天网站天天爽| 美女丁香五月天| 欧美激情 日韩无码 婷婷 五月天| 欧美精品99久久久| 色综合久久99色| www.色五月.com| 99碰碰| 夜夜夜天天操| 伊人婷婷色| 亚洲天堂啪啪| 爆乳熟妇一区二区三区爆乳| 日韩久热| 无码地址| 久久这里都是精品视频| 区区欧美你爱| 99网| 午夜成人网站在线观看| 亚洲精品亚洲人成人网| 五月综合激情网| 中文字幕日产A片在线看| 人妻无码视频网| 激情综合亚洲| 中文字幕有多少字| 色吊操色妞| 玖玖激情网| 亚洲综合99| 久久久妻人人人| 99九九视屏| 夜夜骑夜夜撸| 久碰视频| 97啪在线观看视频| 91国产精品视频播放| 五月狠狠| 亚洲网站在线鸭子av| 91大屁股| 久久天堂| 久久性爱视频| 日本精品人妻无码77777| 亚洲激情六月| 五月丁香激情综合网| 色墦五月丁香| 91超级碰| 丁香六月婷婷综合色| 99精品无码网站| 激情五月色婷婷| 99热精品在线在线| 狠狠干婷婷| 99综合视频在线| 丁香五月五月婷婷五月天激情四射| 激情九色| 国产69精品久久久久999小说| 性爱激情小说AV五月丁香花| 五月天开心色情网| 综合视频五月| 久久婷婷综| 婷婷六月丁香五月图区| 国产综合婷婷| 综合六月激情婷婷| 91操片| 丁香情色五月| 婷婷五月丁香啪啪| 99精品久久久久久久婷婷久久 | 偷拍五月丁香| 亚洲激情五月| 91人久| 轮奸综合网| 国产色色视频| 午夜少妇在线观看视频| 国内一级片| 9热在线视频精品| 九九久久五月天| 这里只有精彩亚洲视频推荐| 日韩人妻无码精品| 最新无码专区| 91九色国产| 中文字幕成人日韩| 丁香五月综合激情啪啪| 天天色综和网| 99这里| 五月婷婷中文| 国产毛片精品一区二区色欲黄A片| 人人人人人人人人人草| 色综合9| 国产欧美日韩性爱| 日韩色五月| 国产成人精品一区二三区熟女在线| 九九亚洲无码| 色婷丁香五月| 九热视频在线精品15| 久久婷婷五月综合色丁香花| 五月总合激情网| 999热在线视频| 色色国产| 五月丁香婷婷啪啪| 五月婷六月| 欧美123区免| 五月丁香美女| 天堂草在线看www| 欧美三级巜人妻互换| 五月丁香怕啪啪| 五月天天天色| 99久久婷婷| 六月色婷婷色| 色婷婷狠狠| 91丨九色丨熟女丰满| www狠狠| 99色在线观看视频| 五月天婷久精视频| 六月色婷婷| 大香蕉五月天婷婷丁香91| 五月丁香| 99热啪啪| 丁香五月婷婷亚洲人| AV在线观看网站| 超碰人人操| 九九色精品| 日韩青青| 婷婷丁香午夜综合影视| 久久99热这里只频精品6学生| 色色狼人综合| 五月天婷婷基地综合网| 婷婷精品综合| 26uuu欧美| 综合久久十三| 欧美色片中文字幕久久久久| 日韩人妻操逼视频| 亚洲丁香婷婷| 婷色五月| 五月丁香久久| 婷婷激情六月综合| 亚洲视频在线网| 五月激情影院| 综合激情五月综合激情五月激情1| 久久成人性爱| 天天干天天爽天天操| 色婷婷8| 这里只精品热在线18| 99热综合| www.久久99| 五月天亚洲最大成人| 五月Huangsewang| 五月婷婷成人网首页| 欧美性色A片免费免费观看的 | 成人午夜天| 成人狠狠成人狠狠成人狠狠成人狠狠| 婷婷五月影院| 激情丁香五月激情婷婷| 日本激情综合| 性色五月天| 九九干视频| 99热e| 天天激情5月天亚洲| 日本99热| 大地资源色婷婷视频在线| 欧美色综合天天久久综合精品| 色国产五月| 亚洲情综合五月天| 五月丁香久久综合| 婷婷五月天小说| 三十路磁力链接| 综合九九久久| 天天插综合| 六月婷婷影院| 日本久久精品18| 青青草成人网| 五月久久五月激情| 91婷婷视频| 婷婷五月天成人网| 99热这里有精品6| AV片在线观看| 亚洲人成色A777777在线观看| 五月天婷婷基地综合网| 日本综合久久| 色色色色色色97| 91精品又长又大又粗又爽又猛| 久热大香蕉| 日本人人xxx| 最新午夜理论片| 就去色色五月丁香婷婷久久久| 偷拍91九色| 亚洲十月婷婷综合| 超碰93在线观看| 亚洲va国产va天堂va综合va| 九九视频这里只有精品在线播放| 香港九九六区八区99| 能直接看的av网站| 五月天婷婷在线播放| 色婷婷五月天亚洲| 激情五月天99色| 92久久精品一区二区| 玖玖午夜视频| 久久成人天| 婷婷色五月噜噜| 色综合久久8| 国外亚洲成AV人片在线观看| AV在线观看网站| 思思热精品在线| 这里只有精品视频看看| 嫩草国产| 冬月かえでAV无码播放| 久久婷婷七月丁香| 婷婷97| 无码动漫av| 婷婷五月丁香基地| 九九久久综合网站| 久热精品视频在线观| 殴美日韩成人| 久草婷| 桃色成人网| 色婷婷亚洲婷婷| 五月丁香六月婷婷色情| 丁香五月av在线| 99久热这里有精品| 婷婷色在线播放| 在线亚洲综合网| 欧美槡BBBB槡BBB少妇| 丁香五月婷婷视频| 中文字幕 久久9999| 日操五月婷| 久久五月丁香伊人青草| 操操天堂| 久久九九国产| 色色丁香色五月| 99re在线观看视频| www.夜夜操.con| 丁香五月天激情网址| 亚洲小电影在线观看黄999| 99热欧美精品| 91婷婷五月丁香碰| 熟美女麻豆| 天天综合中文| 欧美激情 日韩无码 婷婷 五月天| 日日噜噜夜夜狠狠久久丁香六月| 色五月婷婷大香蕉| 婷婷成人综合免费视频| 亚洲激情亚洲激情 | 亚洲aV写真天天综合网久久| 亚洲婷婷丁香五月天激情小说| 婷婷综合五月| 日韩九区| 五月丁香久人妻中文| 激情五月天丁香| 妇激情基地| 这里只有精品视频222| 色婷婷操逼| 99色在线观看| 婷婷综合色色| 久碰综合| www.五月天婷婷| 亚州操操| 亚洲久久激情| 欧洲亚洲激情五月天在线| 五月婷婷六月丁香免费| 婷婷天天日婷婷| 泰州成人视频| 色五月丁香在线| 情涩婷婷五月天| 男人的天堂五月丁香| 激情性五月天免费小说视频| 91婷婷五月天综合视频| 九九亚洲小视频| 丁香激情网| 黄色片区子| 国产精品色婷婷久久久精品| 天天操五月天| 欧美三日本三级少妇三99| 99精品视频在线观看免费| 97色婷| 婷婷六月激情啪啪| 天天射色五月天| 九九爱激情| 开心五月婷婷综合在线精品素人| 色婷婷a| 五月丁香婷婷婷激情爱爱| 久操人妻| 久久色五月| 新久久五月天激情| 午夜色色色极品视频| caopeng97日韩| 丁香婷婷六月激情文学| 99久久思思| 99视频精品在线| 成人丁香五月| 亚洲视频在线网站| 超碰色女人| 五月天婷综合网站| 在线视频色五月| 6月丁香婷婷| 六月婷婷狠狠| 久久婷婷五月综合伊人| 亚洲成人无码网站| 99操99| 丁香97综合| 五月天婷婷激情网| 操操操www.com| 久久婷婷丁香六月天| 直接看的AV| 欧美一级色| 九九精品9| 亚洲区,视频区,视频区免费| 久久黄色网扯| 丁香五月欧美午夜视频| 激情五月激情综合网| 99综合97| 婷婷丁香97| 亚洲综合婷婷六月丁香五月| 99热这里只有精品国产免费| 五月丁香狠狠| 色欲色香综合网| 激情综合色| 波多野结衣成人作品在线| 五月综合丁香婷婷| 超碰京东热av男人的天堂| 任你干嘛免费视频播放| 99热精这里只有精品| 五月香婷婷| 亚洲午夜AV| 丁香 亚洲 久久| 激情五月综合网丁| 538午夜激情| 久久精品人妻| 中文字幕高清av| 五月丁香日本片| 深夜男女福利刺激影院一区完整| 五月丁香婷婷色啪| 久去色色| 99在线观看| 99色五月| 色五月婷婷影院| 天天操天天干天天射| 五月婷高清视频| 丁香五月伊人| 99情色五月天| 激情婷婷五月久久| 欧美日韩成人在线| 九九操操| 婷婷色丁香五月| 91婷婷色五月| 久久精品99| 97成人丁香婷婷| 丁香色五月天| 丁香亭亭久久| 亚洲精品久久久无码| 久草五月天电影网|