centos 测试get请求_11-CentOS7服务器搭建-ab压力测试
使用apache httd的ab工具可以進(jìn)行壓力測(cè)試。-n 2000總的請(qǐng)求數(shù),-c 200是并發(fā)數(shù),最高并發(fā)數(shù)為20000。
ab -n 2000 -c 200 http://localhost/
高并發(fā)設(shè)置
如果訪問服務(wù)器的請(qǐng)求和并發(fā)量很大(如請(qǐng)求數(shù)量超過20萬),系統(tǒng)會(huì)認(rèn)為受到了SYN flood攻擊,從而采取保護(hù)措施。在高并發(fā)測(cè)試的時(shí)候,會(huì)出現(xiàn)一下錯(cuò)誤:
apr_socket_recv: Connection reset by peer (104)
可以設(shè)置內(nèi)核參數(shù),關(guān)閉保護(hù)功能
vim /etc/sysctl.conf
增加一下配置:
net.ipv4.tcp_syncookies = 0
讓配置生效
sysctl -p
嘗試高并發(fā)
nginx不愧是性能高手,設(shè)置好worker_processes和worker_connections,內(nèi)核關(guān)閉net.ipv4.tcp_syncookies,靜態(tài)文件可輕松達(dá)到20000并發(fā)量。
ab -n 200000 -c 20000 http://localhost/
tomcat在開啟apr的情況下,靜態(tài)文件處理能力約為nginx的1/10。還是有很大差距。
高并發(fā)帶寬
很多客戶會(huì)要求高并發(fā)量,但要支撐高并發(fā)有很多限制條件,比如帶寬。
假如10000并發(fā)量,每秒訪問一次,每次請(qǐng)求的文件大小為10KB,則數(shù)據(jù)量100M,大約需要1000Mbps帶寬。而一般服務(wù)器有10Mbps已經(jīng)不錯(cuò)了,通常一個(gè)機(jī)柜(約20臺(tái)服務(wù)器)共享100Mbps帶寬。
10000個(gè)人使用,并不代表10000個(gè)并發(fā),如果前后錯(cuò)開10秒,相當(dāng)于1000并發(fā)。如果10000個(gè)人平均每2分鐘點(diǎn)擊一次,則平均并發(fā)數(shù)為100。當(dāng)然一次點(diǎn)擊可能不止一個(gè)請(qǐng)求,一個(gè)頁面可能會(huì)包含很多圖片、js、css等文件。
總結(jié)
以上是生活随笔為你收集整理的centos 测试get请求_11-CentOS7服务器搭建-ab压力测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 23个硬币问题
- 下一篇: WebSocket简单使用