购买VPS前主要是使用一些网络测试工具如ping、tracert、WinMTR之类的工具进行测试,确定VPS所走线路的好坏,购买后主要测试VPS的性能。下面主要介绍一下常用的工具:
一、网络测试工具
1、ping测试工具
http://www.17ce.com/ 主要用来测试国内各地市、香港、台湾、少量国外的ping值、路由跟踪。
http://www.webkaka.com/Ping.aspx 主要用来测试国内各地市的ping值,也有香港、美国、日本的ping服务器节点。
http://cloudmonitor.ca.com/en/ping.php 主要用来测试世界各地的ping值。
http://ping.chinaz.com/ 主要用来测试国内的ping值。
2、tracert工具
http://www.17ce.com/ 路由跟踪测试
http://www.webkaka.com/Tracert.aspx 路由节点跟踪
WinMTR windows上的一个tracert工具工具比Win系统自带的tracert快很多,功能上也要强大。
具体使用方法及参数介绍:
在【Host】文本框中输入要要查询的主机的域名或IP,然后点【Start】。随后下面将会显示查询的结果。每个栏位所代表的意思是:
- Hostname:主机名
- Nr:节点的数量。
- Loss%: ping 数据包回应失败的百分比。
- Sent:已经发送的数据包。
- Recv:成功接收的数据包数。
- Best:回应时间的最小值。
- Avrg:平均回应时间。
- Worst:回应时间的最大值。
- Last:最后一个数据包的回应时间。
3、下载测试
本地测试从VPS上下载速度:下载测试主要依赖浏览器,最好使用单线程下载,如用IE。
服务器上测试VPS上的下载速度:使用wget命令下载其他美国机房的文件。
4、VPS端口测速
VPS上运行:wget http://cachefly.cachefly.net/100mb.test && rm -f 100mb.test
二、VPS性能测试
1、
http://www.vpser.net/opt/unixbench.html :比较常用的性能测试工具
2、硬盘性能测试:
Linux上运行:dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync && rm -f test
此命令最好慎用,会占比较多的磁盘IO,有些服务商可能会不高兴。
hdparm -Tt也是不错的硬盘IO测试工具,主要用来测试SSD硬盘。
Windows上可以使用HD Tune进行测试。
3、搭建好环境对http://www.vpser.net/opt/webserver-test.html (web服务器进行性能测试)可以使用:http_load、webbench、ab、Siege 这些工具,教程:http://www.vpser.net/opt/webserver-test.html
三、查看硬件配置
1、查看CPU
cat /proc/cpuinfo
2、查看内存
free -m
这里分享一个一键脚本检测Linux VPS性能:CPU核心、内存、在线时间、下载速度
cat vpsdownloadtest.sh
#!/bin/bash cname=$( awk -F: ‘/model name/ {name=$2} END {print name}‘ /proc/cpuinfo ) cores=$( awk -F: ‘/model name/ {core++} END {print core}‘ /proc/cpuinfo ) freq=$( awk -F: ‘ /cpu MHz/ {freq=$2} END {print freq}‘ /proc/cpuinfo ) tram=$( free -m | awk ‘NR==2 {print $2}‘ ) swap=$( free -m | awk ‘NR==4 {print $2}‘ ) up=$(uptime|awk ‘{ $1=$2=$(NF-6)=$(NF-5)=$(NF-4)=$(NF-3)=$(NF-2)=$(NF-1)=$NF=""; print }‘) echo "CPU model : $cname" echo "Number of cores : $cores" echo "CPU frequency : $freq MHz" echo "Total amount of ram : $tram MB" echo "Total amount of swap : $swap MB" echo "System uptime : $up" cachefly=$( wget -O /dev/null http://cachefly.cachefly.net/100mb.test 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from CacheFly: $cachefly " coloatatl=$( wget -O /dev/null http://speed.atl.coloat.com/100mb.test 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Coloat, Atlanta GA: $coloatatl " sldltx=$( wget -O /dev/null http://speedtest.dal05.softlayer.com/downloads/test100.zip 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Softlayer, Dallas, TX: $sldltx " linodejp=$( wget -O /dev/null http://speedtest.tokyo.linode.com/100MB-tokyo.bin 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Linode, Tokyo, JP: $linodejp " i3d=$( wget -O /dev/null http://mirror.i3d.net/100mb.bin 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from i3d.net, Rotterdam, NL: $i3d" #linodeuk=$( wget -O /dev/null http://speedtest.london.linode.com/100MB-london.bin 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) #echo "Download speed from Linode, London, UK: $linodeuk " leaseweb=$( wget -O /dev/null http://mirror.leaseweb.com/speedtest/100mb.bin 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Leaseweb, Haarlem, NL: $leaseweb " slsg=$( wget -O /dev/null http://speedtest.sng01.softlayer.com/downloads/test100.zip 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Softlayer, Singapore: $slsg " slwa=$( wget -O /dev/null http://speedtest.sea01.softlayer.com/downloads/test100.zip 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Softlayer, Seattle, WA: $slwa " slsjc=$( wget -O /dev/null http://speedtest.sjc01.softlayer.com/downloads/test100.zip 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Softlayer, San Jose, CA: $slsjc " slwdc=$( wget -O /dev/null http://speedtest.wdc01.softlayer.com/downloads/test100.zip 2>&1 | awk ‘/\/dev\/null/ {speed=$3 $4} END {gsub(/\(|\)/,"",speed); print speed}‘ ) echo "Download speed from Softlayer, Washington, DC: $slwdc " io=$( ( dd if=/dev/zero of=test_$$ bs=64k count=16k conv=fdatasync && rm -f test_$$ ) 2>&1 | awk -F, ‘{io=$NF} END { print io}‘ ) echo "I/O speed : $io"