有個站點,我用ab做壓測,結果ab總是返回錯誤,我做了如下的一些調優,最後正常了。
.conf:
worker_processes 32;
worker_connections 65536;
在壓力中,通過netstat發現很多time_wait的連線描述符:
netstat -n | awk '/^tcp/ end '
ss -ant | awk 'nr>1 end '
乙個網路連線斷開後,會有30秒的time_wait時間,如果並行過大會導致連線耗盡。
通過檢視/proc/sys/net/ipv4/ip_local_port_range可以知道設定的linux核心自動分配埠的埠範圍:
shell> cat /proc/sys/net/ipv4/ip_local_port_range
1025 65535
解決:
/etc/sysctl.conf
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
然後執行 /sbin/sysctl -p 讓引數生效,使得連線得到復用和**。
ab返回apr_socket_recv: connection timed out (110)
原因:dmesg檢視系統錯誤資訊顯示大量nf_conntrack: table full, dropping packet,所以需要修改這個模組的引數。
解決:
vi /etc/sysctl.conf
net.nf_conntrack_max = 655360
net.netfilter.nf_conntrack_tcp_timeout_established = 1200
sysctl -p /etc/sysctl.conf
Apache ab引數 壓力測試
apache附帶的ab,它非常容易使用,ab可以直接在web伺服器本地發起測試請求。這至關重要,因為我們希望測試的伺服器的處理時間,而不包含資料的網路傳輸時間以及使用者pc本地的計算時間。需要清楚的是,ab進行一切測試的本質都是基於http,所以可以說它是對於web伺服器軟體的黑盒效能測試,它獲得的...
Apache ab引數 壓力測試
apache附帶的ab,它非常容易使用,ab可以直接在web伺服器本地發起測試請求。這至關重要,因為我們希望測試的伺服器的處理時間,而不包含資料的網路傳輸時間以及使用者pc本地的計算時間。需要清楚的是,ab進行一切測試的本質都是基於http,所以可以說它是對於web伺服器軟體的黑盒效能測試,它獲得的...
使用AB壓力測試工具進行系統壓力測試
ab是apache自帶的乙個很好用的壓力測試工具,當安裝完apache的時候,就可以在bin下面找到ab linux mac windows 1 我們可以模擬100個併發使用者,對乙個頁面傳送1000個請求 ab n1000 c100 其中 n代表請求數,c代表併發數 返回結果 首先是apache的...