為什么我ab測(cè)試數(shù)據(jù)庫(kù)部分,比原生php+mysql慢?
慢了好多 不知道哪里調(diào)整
這個(gè)是原生的mysql開(kāi)啟1000次最大請(qǐng)求的情況下大概3秒6完成了全部請(qǐng)求
這個(gè)是webman的測(cè)壓數(shù)據(jù)
webman比原生慢了大概10倍
直接輸出字符串無(wú)mysql交互,webman比原生快了大概3倍
原生的是mysqli,webman用的thinkorm
執(zhí)行的是 SELECT * FROM xx limit 10000
環(huán)境centos,大佬們看看
一共1000個(gè)請(qǐng)求,你的原生有150個(gè)失敗,還有850個(gè)非200響應(yīng),看起來(lái)成功率是0,應(yīng)該是報(bào)錯(cuò)了,很可能沒(méi)訪問(wèn)到數(shù)據(jù)庫(kù)。
現(xiàn)在瀏覽器都默認(rèn)keepalive的,壓測(cè)最好帶上-k參數(shù),能夠反映相對(duì)真實(shí)的承載能力。
帶數(shù)據(jù)庫(kù)的話,webman進(jìn)程數(shù)最好開(kāi)成cpu的3-4倍,在config/server.php里設(shè)置,設(shè)置完restart重啟
原生明顯報(bào)錯(cuò)了,原生請(qǐng)求只返回150個(gè)字節(jié),根本沒(méi)讀數(shù)據(jù)庫(kù),失敗率100%。
而webman每個(gè)請(qǐng)求返回1.2M,成功率100%。
還有如果每個(gè)請(qǐng)求返回1.2M,啥語(yǔ)言框架QPS都一樣,因?yàn)?00M網(wǎng)卡每秒也就支持10個(gè)這樣的請(qǐng)求。