性能測(cè)試介紹
指通過(guò)自動(dòng)化的測(cè)試工具模擬多種正常舀武、峰值以及異常負(fù)載條件來(lái)對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試
對(duì)性能的認(rèn)識(shí)
---從用戶的角度:
---從開發(fā)的角度:
---從系統(tǒng)管理員的角度:
性能測(cè)試意義
????????研究表明,對(duì)于Web網(wǎng)站离斩,多1秒的頁(yè)面延遲相當(dāng)于少了11%的PV银舱,相當(dāng)于降低了16%的顧客滿意度瘪匿。這就意味著:如果一個(gè)網(wǎng)站每天掙10萬(wàn)元,那么一年下來(lái)寻馏,由于頁(yè)面加載速度慢1秒棋弥,可能導(dǎo)致?lián)p失25萬(wàn)元的銷售額?; Compuware公司分析了超過(guò)150個(gè)網(wǎng)站和150萬(wàn)個(gè)瀏覽頁(yè)面,發(fā)現(xiàn)頁(yè)面響應(yīng)時(shí)間從2秒增到10秒诚欠,會(huì)導(dǎo)致38%的瀏覽放棄率 顽染。隨著各個(gè)企業(yè)的業(yè)務(wù)發(fā)展、用戶訪問(wèn)量的增加轰绵,其服務(wù)系統(tǒng)承載的負(fù)荷也會(huì)隨著增加粉寞,系統(tǒng)性能的好壞將嚴(yán)重影響企業(yè)的利益,因此對(duì)于性能測(cè)試與優(yōu)化也越來(lái)越受業(yè)界的重視藏澳。
性能測(cè)試類型
基準(zhǔn)測(cè)試:在給系統(tǒng)施加較低壓力時(shí)仁锯,查看系統(tǒng)的運(yùn)行狀況并記錄相關(guān)數(shù)做為基礎(chǔ)參考
負(fù)載測(cè)試:是指對(duì)系統(tǒng)不斷地增加壓力或增加一定壓力下的持續(xù)時(shí)間,直到系統(tǒng)的某項(xiàng)或多項(xiàng)性能指標(biāo)達(dá)到安全臨界值翔悠,例如某種資源已經(jīng)達(dá)到飽和狀態(tài)等 业崖。
壓力測(cè)試:壓力測(cè)試是評(píng)估系統(tǒng)處于或超過(guò)預(yù)期負(fù)載時(shí)系統(tǒng)的運(yùn)行情況,關(guān)注點(diǎn)在于系統(tǒng)在峰值負(fù)載或超出最大載荷情況下的處理能力蓄愁。
穩(wěn)定性測(cè)試:在給系統(tǒng)加載一定業(yè)務(wù)壓力的情況下双炕,使系統(tǒng)運(yùn)行一段時(shí)間,以此檢測(cè)系統(tǒng)是否穩(wěn)定撮抓。
并發(fā)測(cè)試:測(cè)試多個(gè)用戶同時(shí)訪問(wèn)同一個(gè)應(yīng)用妇斤、同一個(gè)模塊或者數(shù)據(jù)記錄時(shí)是否存在死鎖或者其他性能問(wèn)題
性能測(cè)試基本概念
響應(yīng)時(shí)間
1.定義:從用戶發(fā)送一個(gè)請(qǐng)求到用戶接收到服務(wù)器返回的響應(yīng)數(shù)據(jù)這段時(shí)間就是響應(yīng)時(shí)間
2.關(guān)鍵路徑:下圖為一次http請(qǐng)求經(jīng)過(guò)的路徑,請(qǐng)求會(huì)經(jīng)過(guò)網(wǎng)絡(luò)發(fā)送到web服務(wù)器進(jìn)行處理丹拯,如果需要操作DB站超,再由網(wǎng)絡(luò)轉(zhuǎn)發(fā)到數(shù)據(jù)庫(kù)進(jìn)行處理,然后返回值給web服務(wù)器乖酬,web服務(wù)器最后把結(jié)果數(shù)據(jù)通過(guò)網(wǎng)絡(luò)返回給客戶端
3.計(jì)算方法:Response time = (N1+N2+N3+N4)+ (A1+A2+a3)死相,即:(網(wǎng)絡(luò)時(shí)間 + 應(yīng)用程序處理時(shí)間)
4.響應(yīng)時(shí)間-負(fù)載對(duì)應(yīng)關(guān)系:
圖中拐點(diǎn)說(shuō)明:
(1)響應(yīng)時(shí)間突然增加
(2)意味著系統(tǒng)的一種或多種資源利用達(dá)到的極限
(3)通常可以利用拐點(diǎn)來(lái)進(jìn)行性能測(cè)試分析與定位
吞吐量
1.定義:?jiǎn)挝粫r(shí)間內(nèi)系統(tǒng)處理的客戶端請(qǐng)求的數(shù)量
2.計(jì)算單位:一般使用請(qǐng)求數(shù)/秒做為吞吐量的單位咬像,也可以使用頁(yè)面數(shù)/秒表表示算撮。 另外,從業(yè)務(wù)角度來(lái)說(shuō)也可以使用 訪問(wèn)人數(shù) /天 或 頁(yè)面訪問(wèn)量/天 做為單位县昂。
3.計(jì)算方法:Throughput = (number of requests) / (total time).
4.吞吐量-負(fù)載對(duì)應(yīng)關(guān)系:?
圖中拐點(diǎn)說(shuō)明:
(1)吞吐量逐漸達(dá)到飽和
(2)意味著系統(tǒng)的一種或多種資源利用達(dá)到的極限
(3)通嘲构瘢可以利用拐點(diǎn)來(lái)進(jìn)行性能測(cè)試分析與定位
并發(fā)數(shù)
(1)并發(fā)用戶數(shù):某一物理時(shí)刻同時(shí)向系統(tǒng)提交請(qǐng)求的用戶數(shù),提交的請(qǐng)求可能是同一個(gè)場(chǎng)景或功能倒彰,也可以是不同場(chǎng)景或功能审洞。
(2)在線用戶數(shù):某段時(shí)間內(nèi)訪問(wèn)系統(tǒng)的用戶數(shù),這些用戶并不一定同時(shí)向系統(tǒng)提交請(qǐng)求
(3)系統(tǒng)用戶數(shù):系統(tǒng)注冊(cè)的總用戶數(shù)據(jù)
三者之間的關(guān)系:系統(tǒng)用戶數(shù) >= 在線用戶數(shù) >= 并發(fā)用戶數(shù)
并發(fā)待讳,QPS预明,響應(yīng)時(shí)間缩赛,三者之間重要的關(guān)系
QPS*T(s)約等于并發(fā),約等于含義是在同數(shù)量級(jí)上
錯(cuò)誤率
錯(cuò)誤:一般就是實(shí)際的響應(yīng)數(shù)據(jù)不是期望得到的響應(yīng)數(shù)據(jù)
錯(cuò)誤一般分為撰糠,請(qǐng)求異常(接口或環(huán)境問(wèn)題),業(yè)務(wù)異常(代碼或數(shù)據(jù)問(wèn)題)
PV/UV
PV:Page View辩昆,訪問(wèn)一個(gè)頁(yè)面阅酪,產(chǎn)生一個(gè)PV
UV:Unique Visitor,一個(gè)用戶訪問(wèn)網(wǎng)站汁针,產(chǎn)生一個(gè)UV
備注:1.每日每個(gè)網(wǎng)站的總PV量是形容一個(gè)網(wǎng)站規(guī)模的重要指標(biāo)
? ? ? ? ? ?2.作為一個(gè)獨(dú)立的用戶术辐,訪問(wèn)站點(diǎn)的所有頁(yè)面均算作一個(gè)UV
容量評(píng)估的公式:
第一步:先根據(jù)日活用戶數(shù),計(jì)算所需的tps
計(jì)算原則:1.20%的高峰時(shí)間內(nèi)完成80%的日活用戶數(shù)的請(qǐng)求
? ? ? ? ? ? ? ? ? 2.為了降低風(fēng)險(xiǎn)施无,一般設(shè)定的目標(biāo)是評(píng)估值的3-5倍
目標(biāo)tps的計(jì)算:
(日活用戶數(shù)*每個(gè)用戶在系統(tǒng)中產(chǎn)生的請(qǐng)求數(shù)*0.8)/(時(shí)間段*3600*0.2)*5
第二步:壓測(cè)現(xiàn)有系統(tǒng)的實(shí)際性能
結(jié)合目標(biāo)tps與現(xiàn)有系統(tǒng)的實(shí)際tps辉词,即可估算整個(gè)系統(tǒng)所需要的服務(wù)器數(shù)目
例:用戶系統(tǒng)目標(biāo)tps-1000,現(xiàn)有的壓測(cè)結(jié)果是猾骡,單臺(tái)服務(wù)器用戶模塊的整體qps-500瑞躺,故用戶模塊要想維持目標(biāo)日活需要至少2臺(tái)服務(wù)器
資源利用率
1.定義:指的是對(duì)不同系統(tǒng)資源的使用程度,通常以占用最大值的百分比來(lái)衡量
2.通常需要關(guān)注的服務(wù)器資源如下:
(1)CPU:就像人的大腦兴想,主要負(fù)責(zé)相關(guān)事情的判斷以及實(shí)際處理的機(jī)制
(2)內(nèi)存:大腦中的記憶塊區(qū),將眼睛,皮膚等收集到的信息記錄起來(lái)的地方矩距,以供cpu進(jìn)行判斷忆绰,但是是臨時(shí)的,訪問(wèn)速度快毙替,如果關(guān)機(jī)或斷電這里的數(shù)據(jù)會(huì)消失岸售。
(3)磁盤IO:大腦中的記憶區(qū)塊,將重要的數(shù)據(jù)保存起來(lái)(永久保存厂画,關(guān)機(jī)或斷電不會(huì)丟失凸丸,速度慢),以便將來(lái)再次使用這些數(shù)據(jù)木羹。
(4)網(wǎng)絡(luò)/帶寬:?jiǎn)挝粫r(shí)間內(nèi)從網(wǎng)絡(luò)中的某一點(diǎn)到另一點(diǎn)所能通過(guò)的數(shù)據(jù)量(BPS)
3. 資源利用-負(fù)載對(duì)應(yīng)關(guān)系:
圖中拐點(diǎn)說(shuō)明:
(1)服務(wù)器某薦資源使用逐漸達(dá)到飽和
(2)通臣籽牛可以利用拐點(diǎn)來(lái)進(jìn)行性能測(cè)試分析與定位
命令:sar -u ALL -r -q -d -p -n DEV 2
CPU? ? all 表示統(tǒng)計(jì)信息為所有 CPU 的平均值?
%user 在用戶模式運(yùn)行所使用 CPU百分比?
%nice 在用戶模式用于nice操作所使用 CPU百分比?
%system 在系統(tǒng)模式運(yùn)行所使用 CPU 百分比?
%iowait 用于等待I/O操作所占用 CPU 百分比?
%steal 管理程序?yàn)榱硪粋€(gè)虛擬進(jìn)程提供服務(wù)而等待, 占CPU 百分比
?%idle 空閑CPU占用的百分比
指標(biāo)
kbmemfree:服務(wù)器空閑的內(nèi)存
kbmemused:服務(wù)器使用的內(nèi)存
%memused:物理內(nèi)存使用率, 這個(gè)值是kbmemused和內(nèi)存總量(不包括swap)百分比
kbbuffers:塊設(shè)備(block device)所占用的緩存頁(yè),包括直接讀寫塊設(shè)備坑填、以及文件系統(tǒng)元數(shù)據(jù)(metadata)如SuperBlock所使用的緩存頁(yè)
kbcached:表示普通文件所占用的緩存頁(yè)
kbcommit:保證當(dāng)前系統(tǒng)所需要的內(nèi)存,即為了確保不溢出而需要的內(nèi)存(RAM+swap).
%commit:這個(gè)值是kbcommit與內(nèi)存總量(包括swap)的一個(gè)百分比
runq-sz:運(yùn)行隊(duì)列的長(zhǎng)度(等待運(yùn)行的進(jìn)程數(shù))
plist-sz:進(jìn)程列表中進(jìn)程(processes)和線程(threads)的數(shù)量
ldavg-1:最后1 分鐘的系統(tǒng)平均負(fù)載(System load average)
ldavg-5:過(guò)去5 分鐘的系統(tǒng)平均負(fù)載
ldavg-15:過(guò)去15 分鐘的系統(tǒng)平均負(fù)載
DEV :磁盤設(shè)備名稱
tps:? 每秒到物理磁盤的請(qǐng)求數(shù)
rd_sec/s:? 每秒從設(shè)備讀入的扇區(qū)數(shù)(1扇區(qū)=512字節(jié))
wr_sec/s:? 每秒寫入設(shè)備的扇區(qū)數(shù)目
avgrq-sz:?? 平均每次設(shè)備I/O操作的數(shù)據(jù)大信兹恕(以扇區(qū)為單位)
avgqu-sz:?? 平均I/O隊(duì)列的長(zhǎng)度
await:??? 從請(qǐng)求磁盤操作到系統(tǒng)完成處理的平均消耗時(shí)間,包括請(qǐng)求隊(duì)列等待時(shí)間,單位ms
svctm:?? 平均每次設(shè)備I/O 操作的服務(wù)時(shí)間(毫秒)
%util:???? 一秒中有百分之幾的時(shí)間用用于I/O操作
IFACE: 網(wǎng)絡(luò)接口設(shè)備
rxpck/s: 每秒接收的數(shù)據(jù)包數(shù)目??????????? txpck/s? : 每秒發(fā)送的數(shù)據(jù)包數(shù)目
rxkB/s: 每秒接受的字節(jié)數(shù)?????????????????????? txkB/s :每秒發(fā)送的字節(jié)數(shù)
rxcmp/s: 每秒接受的壓縮包數(shù)目?????????? txcmp/s :每秒發(fā)送的壓縮包數(shù)目
rxmcst/s: 每秒接受的多播數(shù)據(jù)包數(shù)目
總結(jié)——
1.? us+sy參考值為80%,如果大于80%脐瑰,說(shuō)明可能存在CPU資源不足的情況
2.? %util若接近100%妖枚,表示磁盤產(chǎn)生I/O請(qǐng)求太多,I/O系統(tǒng)已經(jīng)滿負(fù)荷地在工作苍在,該磁盤可能存在瓶頸
3. %memused參考值為98%绝页,如果大于98%荠商,說(shuō)明可能存在內(nèi)存不足的情況
4. rxkB/s或txkB/s,如果是百兆網(wǎng)卡续誉,參考值是12MB/s莱没,如果是千兆網(wǎng)卡,參考值為120MB/s酷鸦,如果是萬(wàn)兆網(wǎng)卡饰躲,參考值為1.2GB/s,帶寬超過(guò)參考值臼隔,說(shuō)明可能存在帶寬不足的情況
5. await的大小一般取決與svctm的值和I/O隊(duì)列長(zhǎng)度以及I/O請(qǐng)求模式嘹裂。如果svctm與await很接近,表示幾乎沒(méi)有I/O等待摔握,磁盤性能很好寄狼;如果await的值遠(yuǎn)高于svctm的值,表示I/O隊(duì)列等待太長(zhǎng)氨淌,可能就會(huì)導(dǎo)致運(yùn)行的應(yīng)用程序變慢泊愧,則需要檢查程序或更換更快的磁盤
工具
常見的性能測(cè)試工具,如:Jmeter, Loadrunner, Apche AB,WRK, unixbench, ubench,iperf,fio,IxChariot等等宁舰,每種工具的優(yōu)缺點(diǎn)各異拼卵,目前我們常用的Jmter,上手快蛮艰,接口測(cè)試的各種需求基本都能夠滿足腋腮。
報(bào)告
性能測(cè)試報(bào)告中,既要包含重要性能指標(biāo)的值壤蚜,又要包含服務(wù)器負(fù)載的情況即寡,如下圖,所示:
不僅要在報(bào)告中記錄好本次壓測(cè)的客戶端與服務(wù)器端的性能數(shù)據(jù)袜刷,而且還應(yīng)用在發(fā)性能報(bào)告的郵件中聪富,明確的寫清楚,本次壓測(cè)的目的著蟹,環(huán)境墩蔓,結(jié)論,存在的問(wèn)題萧豆,風(fēng)險(xiǎn)等奸披,方便研發(fā),產(chǎn)品涮雷,項(xiàng)目的相關(guān)人員閱讀阵面。
瓶頸
1. 通過(guò)基準(zhǔn)數(shù)據(jù)判斷性能瓶頸?
基準(zhǔn)數(shù)據(jù),就是指框架或者中間件的單服務(wù)的性能極限,如tomcat框架样刷,在目前思源環(huán)境_2C4G_docker下的極限性能QPS_4w左右(apache-tomcat-7.0.85)Mysql的select空查詢仑扑,在目前思源環(huán)境_2C4G_docker下的極限性能QPS_1.8w左右(mysql-5.1.73),Nginx轉(zhuǎn)發(fā)能力,在目前思源環(huán)境_2C4G_docker下的極限性能QPS_3.6w左右(nginx version: nginx/1.5.9)置鼻,基準(zhǔn)性能數(shù)據(jù)镇饮,為查找性能瓶頸提供一種判斷的基準(zhǔn),如沃疮,在制定基于tomcat框架的接口性能目標(biāo)時(shí)盒让,其值應(yīng)該低于4w的qps,才比較合理司蔬;測(cè)試調(diào)用sql查詢的接口,如果性能已達(dá)1.5w左右姨蝴,那基本也沒(méi)有調(diào)優(yōu)空間了俊啼;如果有需求nginx轉(zhuǎn)發(fā)能力要達(dá)到5w,則就要優(yōu)先考慮框架配置調(diào)優(yōu)左医。
tomcat框架-2C4Gdocker的基準(zhǔn)性能:QPS_4w(apache-tomcat-7.0.85)
http://172.28.34.98:8080/docs/tomcat.html
tomcat框架-2C4Gdocker的基準(zhǔn)性能:QPS_4w(apache-tomcat-7.0.85)
http://172.28.34.98:8080/docs/tomcat.html
Mysql的select空查詢- 2C4G docker的基準(zhǔn)性能:QPS_1.7w
jdbc:mysql://172.28.34.98/jizhuntest test/test(mysql-5.1.73)
Nginx框架-2C4G docker的基準(zhǔn)性能:QPS_3.6w (nginx/1.5.9)
http://172.28.34.98:8081/helloword.html
2. 通過(guò)服務(wù)器資源判斷性能瓶頸
CPU使用率99.5%
千兆帶寬滿
內(nèi)存不足
磁盤I/O
3. 通過(guò)APM協(xié)助判斷性能瓶頸
具體哪行代碼的問(wèn)題
數(shù)據(jù)庫(kù)的SQL語(yǔ)句問(wèn)題
GC頻繁
第三方調(diào)用
網(wǎng)絡(luò)延時(shí)問(wèn)題
jprofile可看到方法的調(diào)用層次授帕,cpu熱點(diǎn)方法等
總結(jié):
1. 通過(guò)框架或者中間件的基準(zhǔn)性能數(shù)據(jù),可界定性能數(shù)據(jù)的上線
2. 在定位性能瓶頸前一定要清楚請(qǐng)求的整個(gè)鏈路拓?fù)涓∩遥ㄟ^(guò)監(jiān)控拓?fù)涓鱾€(gè)環(huán)節(jié)服務(wù)器的負(fù)載情況跛十,可以進(jìn)一步的確定到底哪個(gè)環(huán)節(jié)是性能瓶頸
3. 可以借助APM,進(jìn)行代碼級(jí)別的定位性能瓶頸的具體原因
4.APM也不是萬(wàn)能的秕硝,很多情況下芥映,也是會(huì)發(fā)生漏監(jiān)控的情況,所以性能瓶頸的定位也不能夠完全依賴APM
其它常用概念
TPS:Transactions Per Second远豺,每秒事務(wù)數(shù)
思考時(shí)間:用戶每個(gè)操作后的暫停時(shí)間奈偏,或者叫操作之間的間隔時(shí)間,此時(shí)間內(nèi)是不對(duì)服務(wù)器產(chǎn)生壓力的
點(diǎn)擊數(shù):每秒鐘用戶向WEB服務(wù)器提交的HTTP請(qǐng)求數(shù)躯护。 這個(gè)指標(biāo)是WEB應(yīng)用特有的一個(gè)指標(biāo):WEB應(yīng)用是”請(qǐng)求-響應(yīng)”模式,用戶發(fā)出一次申請(qǐng),服務(wù)器就要處理一次惊来,所以點(diǎn)擊是WEB應(yīng)用能夠處理的交易的最小單位。 如果把每次點(diǎn)擊定義為一個(gè)交易棺滞,點(diǎn)擊率和TPS就是一個(gè)概念裁蚁。容易看出,點(diǎn)擊率越大继准,對(duì)服務(wù)器的壓力越大枉证。點(diǎn)擊率只是一個(gè)性能參考指標(biāo),重要的是分析點(diǎn)擊時(shí)產(chǎn)生的影響锰瘸。 需要注意的是刽严,這里的點(diǎn)擊并非指鼠標(biāo)的一次單擊操作,因?yàn)樵谝淮螁螕舨僮髦校蛻舳丝赡芟蚍?wù)器發(fā)出多個(gè)HTTP請(qǐng)求.
性能測(cè)試模型
曲線拐點(diǎn)模型
?
X軸代表并發(fā)用戶數(shù)舞萄,Y軸代表資源利用率眨补、吞吐量、響應(yīng)時(shí)間倒脓。X軸與Y軸區(qū)域從左往右分別是輕壓力區(qū)撑螺、重壓力區(qū)、拐點(diǎn)區(qū)崎弃。
隨著并發(fā)用戶數(shù)的增加甘晤,在輕壓力區(qū)的響應(yīng)時(shí)間變化不大,比較平緩饲做,進(jìn)入重壓力區(qū)后呈現(xiàn)增長(zhǎng)的趨勢(shì)线婚,最后 進(jìn)入拐點(diǎn)區(qū)后傾斜率增大,響應(yīng)時(shí)間急劇增加盆均。
接著看吞吐量塞弊,隨著并發(fā)用戶數(shù)的增加,吞吐量增加泪姨,進(jìn)入重壓力區(qū)后逐步平穩(wěn)游沿,到達(dá)拐點(diǎn)區(qū)后急劇下降,說(shuō)明系統(tǒng)已經(jīng)達(dá)到了處理極限肮砾,有點(diǎn)要扛不住的感覺诀黍。
同理,隨著并發(fā)用戶數(shù)的增加仗处,資源利用率逐步上升眯勾,最后達(dá)到飽和狀態(tài)。
最后疆柔,把所有指標(biāo)融合到一起來(lái)分析咒精,隨著并發(fā)用戶數(shù)的增加,吞吐量與資源利用率增加旷档,說(shuō)明系統(tǒng)在積極處理模叙,所以響應(yīng)時(shí)間增加得并不明顯,處于比較好的狀態(tài)鞋屈。但隨著并發(fā)用戶數(shù)的持續(xù)增加范咨,壓力也在持續(xù)加大,吞吐量與資源利用率都達(dá)到了飽和厂庇,隨后吞吐量急劇下降渠啊,造成響應(yīng)時(shí)間急劇增長(zhǎng)。輕壓力區(qū)與重壓力區(qū)的交界點(diǎn)是系統(tǒng)的最佳并發(fā)用戶數(shù)权旷,因?yàn)楦鞣N資源都利用充分替蛉,響應(yīng)也很快;而重壓力區(qū)與拐點(diǎn)區(qū)的交界點(diǎn)就是系統(tǒng)的最大并發(fā) 用戶數(shù),因?yàn)槌^(guò)這個(gè)點(diǎn)躲查,系統(tǒng)性能將會(huì)急劇下降甚至崩潰它浅。
地鐵模型
假設(shè):
某地鐵站進(jìn)站只有3個(gè)刷卡機(jī)。
人少的情況下镣煮,每位乘客很快就可以刷卡進(jìn)站姐霍,假設(shè)進(jìn)站需要1s。
乘客耐心有限典唇,如果等待超過(guò)30min镊折,就暴躁、嘮叨介衔,甚至放棄恨胚。
場(chǎng)景一:只有1名乘客進(jìn)站時(shí),這名乘客可以在1s的時(shí)間內(nèi)完成進(jìn)站炎咖,且只利用了一臺(tái)刷卡機(jī)与纽,剩余2臺(tái)等待著。
場(chǎng)景二:只有2名乘客進(jìn)站時(shí)塘装,2名乘客仍都可以在1s的時(shí)間內(nèi)完成進(jìn)站,且利用了2臺(tái)刷卡機(jī)影所,剩余1臺(tái)等待著蹦肴。
場(chǎng)景三:只有3名乘客進(jìn)站時(shí),3名乘客還能在1s的時(shí)間內(nèi)完成進(jìn)站猴娩,且利用了3臺(tái)刷卡機(jī)阴幌,資源得到充分利用。
場(chǎng)景四:A卷中、B矛双、C三名乘客進(jìn)站,同時(shí)D蟆豫、E议忽、F乘客也要進(jìn)站,因?yàn)锳十减、B栈幸、C先到,所以D帮辟、E速址、F乘客需要排隊(duì)。
那么由驹,A芍锚、B、C乘客進(jìn)站時(shí)間為1s,而D并炮、E默刚、F乘客必須等待1s,所以他們3位在進(jìn)站的時(shí)間是2s渣触。
場(chǎng)景五:假設(shè)這次進(jìn)站一次來(lái)了9名乘客羡棵,有3名的“響應(yīng)時(shí)間”為1s,有3名的“響應(yīng)時(shí)間”為2s(等待1s+進(jìn)站1s)嗅钻, 還有3名的“響應(yīng)時(shí)間”為3s(等待2s+進(jìn)站1s)皂冰。
場(chǎng)景六:如果地鐵正好在火車站,每名乘客都拿著大小不同的包养篓,包太大導(dǎo)致卡在刷卡機(jī)堵塞秃流,每名乘客的進(jìn)站時(shí) 間就會(huì)又不一樣。刷卡機(jī)有加寬的和正常寬度的兩種類型柳弄,那么拿大包的乘客可以通過(guò)加寬的刷卡機(jī)快速進(jìn)站(增 加帶寬)舶胀。
場(chǎng)景七:進(jìn)站的乘客越來(lái)越多,3臺(tái)刷卡機(jī)已經(jīng)無(wú)法滿足需求碧注,為了減少人流的積壓嚣伐,需要再多開幾個(gè)刷卡機(jī),增 加進(jìn)站的人流與速度(提升TPS萍丐、增大連接數(shù))轩端。
場(chǎng)景八:到了上班高峰時(shí)間了,乘客數(shù)量上升太快逝变,現(xiàn)有的進(jìn)站措施已經(jīng)無(wú)法滿足基茵,越來(lái)越多的人開始抱怨、 擁擠壳影,情況越來(lái)越糟拱层。單單增加刷卡機(jī)已經(jīng)不行了,此時(shí)的乘客就相當(dāng)于“請(qǐng)求”宴咧,乘客不是在地鐵進(jìn)站排隊(duì)根灯,就是 在站臺(tái)排隊(duì)等車,已經(jīng)造成嚴(yán)重的“堵塞”悠汽,那么增加發(fā)車頻率(加快應(yīng)用服務(wù)器箱吕、數(shù)據(jù)庫(kù)的處理速度)、增加車廂數(shù)量(增加內(nèi)存柿冲、增大吞吐量)茬高、增加線路(增加服務(wù)的線程)、限流假抄、分流等多種措施便應(yīng)需而生怎栽。
備注:以上內(nèi)容包含網(wǎng)上收集整理以及公司培訓(xùn)內(nèi)容整理丽猬。