免费国产精品自在自线-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
返回資訊列表
天堂综合久久| 婷婷玖玖五月天| 色高清无码视频| 色综合色色色色色色综合| 色婷婷91| 激情人妻蜜夜系列区| 婷婷激情六月| 九九热精品视频九九| 中文字幕,综合,91| 五月天桃色深爱网| 色色色婷婷五月天| 激情综合激情综合| 婷婷十月激情综合网| 亚洲色综合| 五月婷婷色在线| 超碰在线看| 激情综合另类| 26uuu欧美亚洲日韩| 欧美久久婷婷| www.久久爱.com| 亚洲AV久久久久久久久久久久久久久久| 免费婷婷| 99久久99九九九99九他书对| 婷婷久久丁香五月| 激情五月天色播| 五月丁香六月婷婷中文版| 丁香五月色网| 人人操女人| 丁香花大香蕉婷婷综合| 国产性av| 久久婷婷五月丁香蜜桃网| 九九RE视频在线精品| 日日夜夜小色哥| 久久无码激情视频| 五月婷婷六月丁香激情深爱| 欧美激情丁香五月| 99爱在线| 九九免费在线视频| 亚洲啪啪精品| 99精品视频推荐| 在线不卡AC| 中国女人做爰A片| 偷拍五月丁香| 国产日韩精品SUV| 婷婷五月天色播| www.99热在线观看| 久久六月综合| 久久免费精彩视频| 国外亚洲成AV人片在线观看 | av免费在线看不卡无毒| a毛片二逼wwwwwwwwww| 成人精品视频99在线观看免费| 丁香婷婷啪啪| 丁香五月亚洲婷婷| 五月激情六月综合| 久久性刺激| 国产成人高清| 亚洲无AV在线中文字幕| 婷婷丁香婷婷97| 99re久热| 九九热AV| 色综合久久88色综合中文字幕| 丁香久久五月天视频在线观看 | 超碰免费人妻| 五月丁香六月激情| αV电影| 久久加勤综合| 亚洲午夜电影| 五月丁香激情综合网官网| 99久操视频| 婷婷丁香91综合| 91精品刘玥| 亚洲狠狠丁香婷婷香蕉| 大香蕉久久婷婷| 五月婷婷啪啪啪| 五月天天天操天天爽夜夜操| 97色女人在线| 激情q青青草在线婷婷| 色的色综合| 色五月婷婷、老熟女| 五月婷婷综合色啪首页| 久久草中文日韩欧美| 啪啪一区| 四川操逼站| 操操自拍| 丁香五月六月激情| 色色五月天激情| 99色综合| 日韩成人av在线| 热99热| 人人人操97| 激情网婷婷五月天| 中国女人内射6XXXXX| 九月丁香婷婷网| 久大香蕉| 五月天久久综合婷婷丁香| 亚洲婷婷91丁香| 五月天婷婷婷| 91综合在线| 草久私拍| 九九久久99| 久久婷婷五月综合色奶水99啪| 激情丁香五月| 五月婷婷啪啪| 狠狠干狠狠干| 久久久久久9热不雅视频| 国产免费一区二区在线A片视频| 激情都市五月天| 天天爱天天狠天天透| 色五月婷婷综合| 久久久亚洲成人无码A片| 91九色在线| 五月WWW| 久久久.COM| www.97视频| 五月丁香操婷逼| 色五月激情综合| 五月天婷综合网站| 久9热在线视频| 天天综合色99| 这里只有免费精品| 琪琪色综合网站| 日韩无码专区| 丁香六月啪| 沈娜娜av| 国产资源91在线| 激情五月婷婷丁香| 九九热在线观看6| 九九热最新地址| 国产肥白大熟妇BBBB视频| 日本WWW九九九| 五月丁香色婷婷熟女| 丁香五月六月综合激情| 亚洲精品网站色视频| 99精品视频免费| 少妇被下春药玩弄A片| 五月天婷婷基地综合网| 99热综合在线| 亚洲六月婷婷| 激情久久久| 婷婷娌伦网| 青青草原精品久久| 91久久精品视频| 99热的无码| 99精品偷自拍| 日日日影院| 玖玖色综合| AAA久久| 亚欧州精品视频| 久久伊人婷| 成人丁香婷婷五月天| 97色色色| 99re热免费观看视频精品| 麻豆AV一区二区三区| 99视频超级精品| 色优久久| 5月婷婷激情6月| 少妇高潮呻吟A片免费看软件 | 北京熟妇搡BBBB搡BBBB| oVV4WIB3vFi8D| 美国少妇性做爰| 色婷婷五月天激情在线播放| JlZZJlZZ8JlZZ亚洲熟女| 丁香五月第九色| 丁香网站| 色综合伊人网| 99久久国产成人精品| 五月色综合| 天天噜天天爱| 色综合偷拍| 色播五月天激情| AV成人在线播放| 婷婷激情九月| 五月丁香六月日逼| 亚洲国产另类av| 激情www| 99视频91| 最近中文字幕在线中文视频| 色久天| 婷婷五月天丁香激情| 女人天堂久久| 色五月激情五月丁香五月婷婷啪啪综合 | 97色伦另类图片小说视频 | 六月色丁香婷婷| 婷婷丁香五月高清| 97干在线视频| 六月丁香AV| 五月天成人网在线观看| 久久99热这里只有| 五月婷婷丁香综合,亚洲天堂| 五月天成人在线视频网站| 99riAV国产精品视频| 久久99网| 久久久精品人妻| 婷婷丁香成人| 中文字幕天天干| 国产激情在线| 五月婷婷五月天亚洲无码| 五月天婷婷久草丁香| 97色色色色色| 99A片| 99热只有精品综合| www.1024久久| 激情99| 日本人人xxx| 97碰超级人人看| 1024操逼| 五月天大香蕉| 久久久8| 激情丁香网| 99视频网址| 国产av天堂| 婷婷综合网| 亚洲性受XXXX五月丁香| 九色PORNY自拍成人精彩视频| 亚洲亚洲人成综合网络| 婷婷五月天精品| 天天爽天天草| 天天日夜夜夜操操操操| www.日本久久videos| 色五月在线综合| 天天操天天操天天操天天操天天操 | 夜夜谢天天干| 五月久久婷婷丁香| 天天综合色| 激情丁香五月激情婷婷| 激情精品久久| 五月丁香婷婷无码中文| www狠狠| 美女被肏网站在线看| 色99色| 99碰网站| 玖玖在线| 亭亭色网| 丁香五月天黄色片| 天天操B| 天天色综网| 亚洲激情 久久| 任你搞网站| 丁五月激情视频免费| 可以直接看的av网站| 色人久久| 五月婷婷在线丁香| 色愛综合网| 99re热99| 色玖玖| 久久3p| 9色免费网| 在线看片h站| 色婷久久| 五月婷婷爽爽爽| 色噜噜综合网| 婷婷中文字幕| 草草色情综合网| 强辱丰满人妻HD中文字幕| 超碰99在线观看| 偷偷操99| 激情六月婷婷| 久久久天堂国产精品女人| 婷婷六月天| AA丁香综合激情| 99热18| 亚洲人妻av| 免费精品99| 五月婷婷开心网| 婷婷色婷婷| 五月丁香黄色视频| 五月天综合在线| 99啪啪视频| 亚洲综合激情五月久久| 久久久全国免费视频| 日本综合99| 丁香婷婷浪潮AV久久综合| www99精品在线观看| 激情五月天天| 9l视频自拍9l视频自拍九色学生| 亚洲人妻AV| 日日爱678| 开心婷婷五月激情网小说| 色之综合网| 激情综合网,五月| 五月婷婷综合潮喷| 丁香五月婷婷亚洲综合精品| 国产成人片| 精品9久| 色情开心五月| 26uuu美女三级视频| 国产99视频永久免费| 五月天婷网| 91九色中文字幕女在线观看| 免费精品99| 亚洲人操亚洲人| 精品99在线观看| 99视频自拍| 婷婷丁香第一页| 深爱婷婷丁香五月激情| 日韩AAAAA| 国产午夜精品一区二区三区嫩草| 久久狠婷婷| 九九碰九九爱97| 婷婷六月久久| 九九热免费| 91re色综合视频| 色婷婷激情四射视频| 超碰国产在线| 夜夜躁爽日日| 一二线视频 另类| 综合久久久婷| 婷婷六月伊人| 99久久婷婷| 99视频日韩| 99色视频| 天堂五月婷婷| 日韩人人操| 色噜噜狠狠色综合无码久久欧美| 丁香六月欧美| 九九九九九999999| 久久99热这里| 九九视频这里只有精品| 五月狠狠| 无码人妻一区| 色婷丁香91| 婷婷丁香五月综合| 99热天堂| 激情五月份婷婷| 激情五月天之六月婷婷| 激情婷婷五月天| 亚洲激情五月| 九九视频这里只有精品| 丁香五月天成人| 人人爽天天莫| 日本一级一级一级一级| 特黄三级片| 26uuu欧美日本| .青娱乐天天操B| 色八月婷婷| 538任你爽| 九月av在线| 日日射天天射| 中文字幕无码AV| 欧美群妇大交乱婬网| 五月丁香色综合| 婷婷五月在线视频| 五月大香蕉| 9久9久9久女女女九九九一九| 婷婷在线播放av| 天天天天天天操| 色综合99无码| 久久五月激情| 国产色色色色色| 五月天婷婷影院影院| 五月天成人免费视频| 婷婷六月综合| 激情久久久久久久久久久| 日本97在线观看| 色综合久久88色综合中文字幕| 99精品免费| 99久久亚洲精品视频| 99碰碰视频| 亚洲乱码w在线观看| 日婷婷久久开心| 1024在线视频| 五月综合激情| 婷婷色五月丁香六月欧美啪| 国产.亚洲.欧洲视频在线| 色五月中文字幕| 五月综合色播播丁香婷婷| 欧洲MV日韩MV国产| 五月天自拍视频| 免费看欧美成人A片无码| 丁香六月婷婷激情综合| 天天操夜夜操| 精品无码人妻一区| 亚洲成人日韩无码精品| 成人开心五月天| 亚洲中文字幕翔田千里| 日韩九九| 久久久久婷婷| www色色com| 婷婷五月天最新综合你懂的| 亚洲无AV在线中文字幕| 日操夜撸| 2020日日干| 亚洲人成色A777777在线观看| 婷婷久久色| 婷婷五月天激情电影小说| 在线超碰91| 久久伦乱| 欧美婷婷六月丁香综合色连续高潮抽搐| 五月丁香黄色视频| 五月停停丁香| 欧美网站视频4399| 99精品视频免费观看| 26uuu视频欧美| 国产人妻人伦精品一区二区| 婷婷丁香激情综合色情| 99九无网码| 九九热99视频| 这里只有精彩视| 天天日天天插| 五月婷视频久久| 婷婷激情五月| 影音先锋91资源站| 梁铮版蜘蛛女在线观看| 婷婷丁香综合色AV| 色色色欧美| 色婷婷香蕉丁丁网| 9久国产精品| 婷婷色在线| 五月天四色房丁香| 99ri精品| 久久九九99.www| 色99在线观看| 狠狠搞亚洲| 光棍影院日韩精品| 无码免费人妻A片AAA毛片西瓜 | 色J香五月天| 99热丁香| 性爱激情五月| 少妇熟女视频一区二区三区| 色欲午夜无码久久久久久张津瑜 | 天天干天天日蜜臀av| 亚洲热热视频| 色青青视频| 一月婷婷色色| 久久44| 国产精品色婷婷久久久精品| 五月丁香亚洲婷婷| 狠狠色丁香久久久婷| 真实的国产乱XXXX在线91| 五月色婷婷影院| 日日夜夜综合| 成人色五月天| 涩五月婷婷| a网站免费观看| 婷婷综合97| 激情狠狠丁香月| 九洲一级A片| 色色97丁香婷婷五月天| 国产精品美女久久久久AV超清| 播播网色播播| 五月婷婷亞洲中文| 亚洲最大五月六月丁香婷婷| 涩涩涩婷婷| 久久人操| 啪啪操超碰| 色五月开心久久网| 狠狠色噜噜狠| 色婷婷五月天| 夜夜爽77777妓女免费下载| 色婷婷五月综合在线| 激情婷婷狠狠干| 玖玖在线视频福利| 激情五月天色| 伊人久久婷婷| 超碰激情网| 欧美精品久| 中文字幕综合色| 国产全是老熟女太爽了| 六月激情婷婷| 久久久免费精彩视频| 天天爽天天操| 狠狠狠色激情综合适合| 可以直接看的AV| 亚洲综合色棒| 丁香 婷婷 亚洲 熟女| 天天免费成年人视频| 色五月综合| 超碰在线成人| 五月丁香爱婷婷深深| 成人综合AV| 91精产一区三区免费观看| 日韩无码人妻一区二区| 99热99操| 五月天综合激情网| 色色色色热热| 日韩成人五月天| wuyuedingxiang99| 婷婷的五月天另类视频| 开心五月激情婷婷| 久热免费| 99热这里都是精品| 久久婷婷视频| 国产性av| 色久一| 色婷婷影| 婷婷欧美偷拍综合| 五月天婷婷色小说| 久久人妻视步| 超碰免费在线| 99re6在线视频精品免费| 一起草AV| 激情图片亚洲| 色呦呦美女| 久久亚洲婷婷| 狠色狠色狠色狠色狠色网| 人妻尝试久久久久久久久久久久| 色婷婷久久综合丁香五月| 怡红院视频| 欧美色五月| 岛国av网站| 人人摸人人干| 五月色情婷婷| 婷婷五月激情热播| 伊人五月成人| 91日本在线| 色色色综合网| 97婷婷五月激情六月丁香伊人| 99色在线观看视频| 狠狠操.com| 久久这里有精品视频在线免费观看| 噜噜视频| 欧美色五月| 五月婷婷综合成人| 五月婷六月综合在线观看| 深爱激情五月天婷婷网| 久99热在线观看| 99精品偷自拍| 色婷婷AV在线| 韩国婷婷丁香五月| 五月丁香777| 欧美精品18| 色激情网| 丁香五月AV综合| 天天舔天天爽| 亚洲情综合五月天| 婷婷狠狠18禁久久| 五月天影院| 91婷婷丁香| 国产一区二区av免费| 久久婷婷综合基地| 五月丁香激情婷婷综合| 婷婷综合久久| 日韩三级视频一区二区| 婷婷五月天伊人网在线观看视频| 无码区婷婷五月花开| 无码免费人妻A片AAA毛片西瓜| 日本久久人| 狠狠干2007| 五月婷婷激情| 久久综合图片| 丁香婷婷色五月合集| 色婷婷AAA| 色天使久久综合| 我要色综合五月婷婷| 色综合九九色综合88| av免费在线看不卡无毒| 婷婷九月激情网| 亚洲视频五区| 色婷婷瘦婷婷日韩| 野战毛片三一3| 三男玩一女三A片| 97在线精品视频| 婷婷激情五月天亚洲综合| 狠狠五月天| 六月丁香婷婷色狠狠久久| 6080av| 六月丁香网| 99re热99| 五月丁香婷草| 丁香五月六月综合激情| 亚洲天堂aaaa| 碰超在线九色| 九九久久视频| 九九99视频精品| 97色色色色色色色色色色色色色| 亚洲爆乳无码精品AAA片蜜桃| 噜噜噜狠狠色综合| 久碰视频| 97成人丁香婷婷| 99视频在线| 九色91国产| 久久九精品| 欧美在线视频免费播放| 丁香婷婷情色五月天| 91操女| 色五月婷婷丁香五月| 色域五月丁香| www五月天com| 九九综合色综合| 丁香五月AV| 国产无人区大片| 99热精品在这里| 日韩欧美一道四区中文字幕| 97欧美在线| 丁香激情四射| 激情五月综合亚洲另类| 26uuu美女三级视频| 另类小说色婷婷| 久色视频首页| 久草婷婷网| 久久九九蜜| 91色碰| 婷婷操超碰| 亚洲第一成人无码A片| 丁香五月成人网| 五月天激情偷拍| 免费观看全黄做爰的视频| 色五月丁香在线| 任你搞免费视频观看| 99在线精品免费视频| 亚洲AV日韩在线观看| 99精品视频网站| 亚洲视频国产一区| 天天爽天天| 激情综合网激情五月欧美| 五月天综合色| 五月天精品视频| 婷婷久久久久久久| 9热在线视频| 丁香婷婷啪啪| 伊人狠狠综合| 丁香五月另类色婷婷麻豆| 天天拍天天操| 五月丁香在线综合| 精品99这里有| 久久电影五月天丁香电影| 日本婷色| 天天久久综合| 91人人网| 婷婷丁香五月综合网| 97婷婷狠狠| 色五月在线| 综合久久六月| 黑人巨粗进入警花疼哭A片| 五月天另类小说| 色9999日韩国产| 色在线免费观看| 狠狠色婷婷7777久| 99热免| 人人亚洲| 久人操| 99国产精品白浆在线观看免费| 五月天久久婷婷| 激情综合播播| 丁香五月婷婷亚洲另类| 黄色片久久| 五月激情网站| 亚洲国产色色| 99色色网站| 丁香五月天天| 影音先锋美国A| 热99这就是精品视频| 久久性爱视频久久性爱视频| 久久婷婷五月| 五月婷婷激情| 五月天成人综合| 伊人国产婷婷五月天| 久久停停超碰| 九九99在线视频| 大地9中文在线观看免费高清| 综合色色婷婷| 丁香五月av| 激情综合综合综合| 日韩免费乱轮网站| 精品在线网站| 99riAv1国产在线观看| 五月桃花网综合| 狠狠干婷婷| 九月婷婷久久| 久久hd| 亚洲色A| 人人看人人草人人摸| 五月婷婷在线短视频| 激情五月综合久久| 懂色av蜜臀av粉嫩av永陈冠希| 无码激情AAAAA片-区区| 激情五月丁香五月| 国产激情综合五月久久| 99这里只有| 99热综合在线| 亚洲综合色色| 丁香婷婷九月| 天天色丁香| 亚洲熟妇无码乱子AV电影| 99热在线观看免费| 日韩爱操视频| 激情小说婷婷五月| 色丁香影院| 婷婷色五月天在线| 国产午夜一区二区三区| 色色COm| 久久婷婷综合五月趴| 99愛国产| 四色五月婷婷在线观看| 亚洲天堂aaaa| 日本爆乳片手机在线播放| 五月丁香六月婷婷无码| 99亚州综合精品成人网| 丁香六月久久| 嫩草视频在线观看| 五月婷婷性爱| 欧美日韩99| 中国女人内射6XXXXX| 疯狂做受XXXX高潮A片动画| 97天堂| 色综合久久久无码中文字幕999| 爱久久小说下载网| 中文字幕成人版| 草榴视频网| 色色色在线| WWW,色五月| 五月激情另类| www.26uuu.com亚洲电影| 久久久久er热| 丁香六月色婷婷| 色色日本| 碰人人97| aa久久| 深爱激情AV| 久久精品亚洲一级牲爱综合| 婷婷五月丁香五月| 国产精品a无线| 99热传媒| www.97碰碰com| 国产在线6| 涩涩涩.com| 综合大香蕉| 99热精品在线| 色很久综合| 丁香五月激情六月欧亚激情综合导航| 手机AVAV天堂看网| 日日操夜夜撸| 成人片黄网站色大片免费毛片| 碰人人97| 狠狠色丁婷婷日日,伊人激情综合网 | 色色狼人综合| 国产精品五月丁香| 久婷久婷| 丰满少妇猛烈A片免费看观看| 91趴趴| 日本婷婷综合精品| 五月天成人在线播放| 亚洲成人一区| 九九精品re免费视频| 午夜丁香| 五月婷婷官网色| 天天日天天干天天操| 日韩欧美成人网| 天天干,天天舔| 久久这里只| 人妻AV在线| 中文字幕亚洲-区久久99婷婷| 激情综合网五月在线播放| 99热精品中文字幕| 亚洲亚洲人成综合网络| 99色五月| 99久久极情精品一区| 亚洲无码99| 中文无码婷婷| 丁香五月香蕉| 国产看真人毛片爱做A片| 国产亚洲在线| 天天操天天插| 五月婷婷9| 激情综合网激情五月网| 丁香激情久久| www.maotanji.com| 99久久免费精品| 无码成人AAAAA毛片AI换脸| 97操操操| 中文成人在线| 婷婷五月天毛片| 中文字幕久久一区二区三区 | 精品久久久中文字幕大豆网推荐理由| 婷婷午夜| 婷婷激情综合| 啪啪夜久久| 婷婷六月天激情| 五月天操逼激情| 三级成人网站| 欧美成人AAA片一区国产精品| 性欧美日本| 第四色大香蕉| 97婷婷在线视频| 五月婷婷69| 色婷婷激情视频| 久久人妻系列| 色天使久久综合| 激情综合网亚洲色图| 超碰9799| 丁香5月啪啪| 九九亚洲| 亚洲人妻一区二区| 亚洲无AV在线中文字幕| 啪啪干伊人婷婷| 麻豆AV一区二区三区| 人人草成人视频| 五月综合色| 快乐婷婷五月天| 91久久久久久| 九九热只有这里是精品| 久久99热这里只频精品6学生| 色在线五月天免费| 情欲禁地| 91久久婷婷人人澡草 | 五月婷婷人人人操| 五月丁香久久| 无码色| 逼逼AV| 综合久久五| 五月宗合激情网| 玖玖五月丁香| 亚洲综合视频在线| 激情五月婷婷免费视频| 五月婷婷六月丁香| 亚洲成人电影aaaa| 九九精品re免费视频| 色婷婷五月天久久| 五月天激情小说| 五月丁香综合啪啪| 操逼棍操逼| 久久婷婷东京热大香樵| www.91婷婷| 久久亚洲婷婷综合色五月| 五月天婷婷色| 色XX综合网| 人人综合久| 婷婷五月激情中文字幕| 这里只有精品视频视频在线观看| 俺也去色| 99精品视频网| WWW.天天日| 久久99大| 色色色婷婷五月天| www。狠狠干。com| 天天透天天干| 五月天色社区| 91久久综合亚洲噜噜成人在线 | 激情五月综合婷婷| 激情网五夜婷婷| 久久婷婷六月综合国际| 成人综合AV| www.sd-xiangsu.cpm| 91色综合网站在线| 天天色综网| 久久精品小视频| 久操福利| 亚洲精品字幕| AAA久久| 亚洲综合视频一下| 日韩精品一区二区亚洲AV观看| 婷婷社区五月天| 日韩一本操| 成人 在线 日韩| 丁香五月婷婷亚洲另类| 深夜男女福利刺激影院一区完整| 免费看欧美成人A片无码| 激情五月五月婷婷| 六月综和久久| 3p久久| 91丨九色丨国产| 久久婷婷色| 五月花在线观看视频| 色婷婷五月天中文字幕| 涩涩婷婷五月| 久久婷婷七月丁香| 久久婷婷伊人| 久色婷婷200| 欧美丁香六月在线观看视频| 九九九九综合| 99久久天堂婷婷| 性av| 九月婷婷| 激情丁香六月| xxx.色婷婷| 久久视频九九视频| 轮奸综合网| 久久综合综合综合| 影音先锋 萱萱| 丁香五月成人网| 在线看片av| 色婷婷六月丁香综合欲精品| 欧洲亚洲欧洲99久久| 综合色图区| 4399在线观看免费高清黄色视频| 激情五月黄色| 日本色色色| 五月天婷婷免费视频| 婷婷激情五月综合丁| 激情综合色五月六月婷婷| 五月天综合激情网| 99噜噜| 四川操逼站| www.久操| 婷婷丁香六月天激情四射网| 欧美十二区| 图片区 小说区 区 亚洲五月 | 激情婷婷五月色| 99久久丝| 热无码A∨| 亚洲色色色色色色色色色| 影音先锋男人AV资源站| yw国产AV| 9视频在线成人网站| 色婷婷综合久久| 国产精品久久久久久久久久免费 | 强辱丰满人妻HD中文字幕| 狠狠色成人影片| 婷婷丁香六月天| 99色免费观看全部| 久久婷婷五月天| 99热这里只有精品9| 狠狠操综合| 99操| 精品一区二区三区四区五区六区| 五月天另类小说| 另类激情综合| 五月丁香网站| 91九色精品熟女内射| 中文字幕日产A片在线看| 色五月激情五月开心五月| 99久久99久久综合| 色婷婷激情| 久久R激情| 久久久久久久久月丁| www.1024久久| 午夜日韩久久久网站| 亚洲婷婷婷| 六月丁香av| 色噜噜伊人| 思思99精品视频在线观看| 色青五月天| 99九九精品| 狠狠狠狠狠操| 久久久久婷| 久久久大香蕉| 国产精品VIDEOSSEX久久发布| 亚洲视频在线观看| 日本三级片片| 国産精品| 婷婷色丁香五月| 激情深爱五月| 97人人干| 牛色色碰| 大香蕉中文| 激情五月丁香婷婷夜夜操| 另类小说五月天综合网| 九九色综合九九色| 久久伊人五月天| 国产成人精品一区二三区熟女在线| 热久久这里只有三级视频| 久草狼人| 六月丁香深深爱| 丁香成人视频| 日日夜夜狠狠| 激情综合色婷婷啪啪五月天| 欧美日本国产欧美日本韩国99| 激情深爱五月婷婷| 九九色综合九九色| 丁香婷婷网| 欧美A片在线视频免费观看| 性爱人人网| 久久婷婷啪啪视频| 五月婷婷激清网| 亚洲99在线| 日本视频久久| 国产成人AV在线播放| 色9色| 激情五月丁香婷婷| 最新高清无码专区| 五月天久久网站| 欧洲综合视频在线观看。欧洲,亚洲综合食品在线观看。 | 99热99热在线| 色婷婷久久| 91|疯狂丨高潮丨对白| 91操在线视频| 色的色综合| 新97人人上人人| 99燥99日| 综合激情伊人影视在线| 国产亚洲99| 噜噜色五月| 婷婷色在线| 五月丁香六月婷婷啪啪| 先锋资源996| 日本三久久| 99热在线观看| www.超碰在线| 色五月婷婷五月天| 2018夜夜草| 久久激情综合| 天天色图| 五月激情射| 欧美天天干天天草| 国产看真人毛片爱做A片| 欧美激情中文字幕| 激情五月,激情综合网| 激情综合五月| 六月丁香婷婷五月天| 天天舔天天爽| 丁香五月婷婷少妇| 婷婷成人五月天一区| 九九热AV| 99热偷拍| 丁香五月综合婷婷| 色久99| 激情五月婷婷开心网| 亚洲亚洲人成综合网络| 国产日批视频| 依人大香蕉| 色婷婷综合网站| 热99在线精品| 99草视频在线观看| 狠狠干五月丁香综合网| 久久婷婷五月综合色区| 同性gv国产精品一区二区| 伊人五月天| 婷婷综合激情| 夜夜干 夜夜操| 婷婷五月天AV| 日韩欧美一级大黄网站| 97久久人人操| 久久精品9| 开心五月综合激情网| 综合五月天| 久久WW| 99热只有| 久操福利| 中文字幕AV在线播放| 丁香五月婷婷激情网| av在线免费网站 | 五月婷婷丁香91| 蜜臀嫩草| 噢美99| 五月丁香六月情| 五月天堂六月丁香亚州中文字幕久久 | 日本爆乳片手机在线播放| 伊人碰碰婷婷| 丁香六月婷婷五月婷婷| 丁香五月综合激情啪啪| 免费AV播放| 午夜大香蕉| 国自产拍偷拍精品啪啪一区二区| 第四色五月激情网| 666555。COm毛片| 婷婷日日天天| 综合超碰熟| 五月天婷婷丁香基地在线观看| 五月天丁香成人社| 91人人操人人| 99高级会所久久| 成人无码精品1区2区3区免费看| 91精品国产综合久久密臀| 精品欧美一区二区三区久久久| 国产精品热搜丁香五月婷婷| 天天综合久久| 亚洲综合婷婷| 天天操天天操| 六月丁香AV| 亚洲成人AV在线播放| 色噜噜婷婷| 牛牛澡牛牛爽| 天天干天天色综合| 九九综合色| 无码激情AAAAA片-区区| 丁香婷在线| 中文字幕综合| 欧美精品99久久久| 日本五月婷| www.99婷婷| 韩国中文字幕91| 日日色综合| 深爱丁香网| 粉嫩AV久久一区二区三区| 激情五月开心五月丁香五月| 五月色网| 久久无码成人| 色婷婷免费观看| 99热欧| 91疯狂操操操操| 超碰九色| 婷婷五月天av| 久鲁鲁色网| 婷婷五月丁香色播| 影音先锋女人AA鲁色资源| 激情五月狠狠| 《诡秘之主》在线观看| www.ywav| 日本99视频| 99久久玖玖| 六月色伊人婷婷| 亚洲视频国产一区| 九九人人操| 日本激情91| 五月色欧美| 丁香五月久久| 久久密臀婷婷| 久久综合婷婷| AV在线免费播放| 小视频一区| 精品久久二6| 日本欧美999久久久三级片| 国产精产国品一二三在观看| 免费在线观看欧美激情xx小视频| 丁香五月天婷婷久久| 久久婷婷婷| 五月丁香久久激情综合| 五月天婷婷综合| www.久久综合| 九九视频这里只有精品| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 九九热在线观看视频| 天天干电影| site:feetmall.com| 婷婷性爱| 久9无码视频| 色欲AVV| 天天插天天日| 97热这里精品在线视频| 五月婷婷丁香狠狠撸久久| 66精品国产成人| 91视频综合网| 亚洲欧美成人在线观看| 五月开心播播网| 99热这里只有精| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 青青草轻轻操| 成人无码中文| 99久久综合狠狠综合久久| 五月天丁香网| 五月天综合久久| 国产亚洲精品久久一区二区三区| 婷婷综合精品视频97| 丁香五月冃欧美| 五月熟妇婷婷久久| 免费99情趣网视频| 91狠狠综合久久久久久| 色欲婷婷五月天| 色色狼人综合| 亚洲AV无码影院| 亚洲超级碰| 色婷婷亚洲综合av| 涩玖玖免费视频| www.99免费视频| jiujiuxiangjiaowang| 99久久婷婷精品视频| 欧美性生交XXXXX无码小说| 欧美在线视频99| 亚洲精品又粗又大又爽A片| 亚洲天堂色色| 偷拍五月丁香| 色五月丁香网| 91超级碰碰碰| 熟女少妇内射日韩亚洲| 被男人添B超爽视频| 国产真实乱对白精彩| 久久小说| www超碰com| 热99久| 操操熟女| 午夜成人综合| 久色五月天| 色婷婷亚洲婷婷| 99 频99热国里只有精品| 丁香五月狠狠在线观看| 开心婷婷五月花| www.91.com处女在线直播| 亚洲色小说在线综合| 天天舔天天摸视频| 这里精品| 一区二区成人电影| 大香网伊人久久综合| 久久五月婷| 91久女| 婷婷色基地在线看 | 五月天操逼网| 国产毛片精品一区二区色欲黄A片| 99riAv1国产在线观看| 五月天六月色| 国产精品99久久久久久久女警| 1024操逼| 国产视频福利| a在线观看| yazhouzonghesese| 少妇人妻综合色6699| 91婷婷丁香五月| 六月婷婷综合| 亚洲99精品九九在线| 色婷婷AV在线| 日本va欧美va精品发布视频| 亚州日本欧州韩美高青高潮一| 激情五月天开心总和网| 色婷婷超碰| www.色婷婷| 9在线9在线婷婷在线国产| 秋霞AV淫| 开心五月综合激情综合五月| 国产综合网在线| 狠狠色婷婷7777久| 色婷婷成人| 五月天久久激情| 亚洲免费看片| 日逼免费视频| 夜夜 操无码| 精品亚洲国产成人A片在线鸭王| 日韩三级视频一区二区| 97精品综合久久| 99热精品一区| 久久九区| 99爱视频| 99色色网| 日韩99视频| ...婷婷国产成人亚洲日韩| 五月婷婷综合丁香视频| 久久精品国产一区二区三区四区| 青青操成人福利| 天天爽天天弄| 亚洲综合草草| 亚洲色就是色色色| 91chinese在线| 五月婷婷六月丁香在线| 五月激情在线| 激情五月婷婷视频一区二区三区| 最新精品视频99| 五月天激情小说| 日本91在线播放| 九九久久综合| 狠狠五月天| 日韩99无码| 99er日韩| 色综合丁香婷婷| 男人的天堂99| 天天激情综合| 色五月婷婷基地| 99色视| 人妻熟妇六区| 久99热| 丁香六月色婷婷| 久久性爱视频这里只有精品 | 色综合久久88色综合天天99| 婷婷精品综合| 国产一级片色色| 欧美三级巜人妻互换| 99婷婷国产最新视频| 男女久久婷婷五月天| 五月丁香婷婷成人网| 久久伊人9| 深爱激情九九五月天 | 26UUU亚洲欧美| 激情五月婷婷网| 五月丁香操婷逼| 久久精品系列| 9精品国产在热久久| 九九热这里只有精品9| 国产在线aaa片一区二区99| 一区视频网站| 91成人电影| 日本天堂爱爱| 婷婷五月天视频亚洲| 色色综合五月| 人草人人| 狠狠色噜噜狠| 婷婷丁香五月六月激情| 国产欧美熟妇另类久久久 | 九九色影院| 久99久在线| 久超超碰| 五月丁香婷婷深深爱| 国产精品色婷婷久久久精品| 另类激情首页| 欲求不满的人妻| 欧美五月婷婷| 婷婷丁香久久| 久激情网| 99综合网|