前言
本文转载自:主机排行棒https://www.zhujitop.com/43.html
我们在购买服务器、vps之类的时候,多数正常需求情况下,都会考虑服务器的性能,是否符合自己的要求。
特别是做为企业,在为自己项目选择服务器的时候,就一定要先多选几家,大概测试一下。
现在我们就根据初步需要,说下云服务器、vps的简单性能测试。
在测试之前我们先安装一些常见的组件,免得后面又来安装。
常见的有:
wget:yum -y install wget
gcc:yum install gcc
gcc ctags检测脚本要用:yum install -y gcc ctags
perl-Time-HiRes跑分脚本要用:yum install perl-Time-HiRes
一、服务器vps基础信息检测
包括了服务器硬件和内存方面的信息
所用命令:
cat /proc/cpuinfo
显示服务器vps的CPU详细参数,如内核、频率、型号等信息。
主要参数解释:
physical_id表示物理CPU个数,cpu cores是内核数,Siblings表示位于这一物理封装上的逻辑处理器的数量,它们可能支持也可能不支持超线程(HT)。
如果有一个以上逻辑处理器拥有相同的core id 和 physical id,则系统支持超线程(HT)。如果有两个或两个以上的逻辑处理器拥有相同的physical id,但是core id不同,则说明这是一个多内核处理器。
如果“siblings”和“cpu cores”一致,则说明不支持超线程,或者超线程未打开。如果“siblings”是“cpu cores”的两倍,则说明支持超线程,并且超线程已打开。
其他命令:
查逻辑CPU,执行:cat /proc/cpuinfo |grep \'physical id\' |sort |uniq
查CPU型号,执行:cat /proc/cpuinfo |grep \'model name\' |sort |uniq
查单个CPU的内核数,执行:cat /proc/cpuinfo |grep \'cpu cores\' |sort |uniq
查总的CPU线程数,执行:cat /proc/cpuinfo |grep \'processor\'
然后我们再看看服务器vps的内存信息,主要是看内存大小、交换空间、高速缓存等,代码命令:
cat /proc/meminfo
以上的显示结果可以大概看下,要简单明了的,我们直接执行下面的命令:
df -h
free -m或者free -h
df -h是看你系统的内存和分区信息。
free -m是看内存的真正使用情况,具体计算方式不一样,主要是下面截图的服务器是阿里云的,阿里云现在的服务器采用的是先进入共享内存,然后再来占用。
二、服务器vps的硬盘IO读写速度测试
当然这个不能完全信的,如果母鸡给来个黑科技,HDD的硬盘都能让你测出SSD的速度。并且通过这个可以猜是采用的RAID多少,当然要专业的老司机就能猜个大概,特别是在知道是不是SSD的情况下。
I:Input输入,O:Output输出。
dd if=/dev/zero of=test bs=64k count=4k oflag=dsync
dd if=/dev/zero of=test bs=8k count=256k conv=fdatasync
三、服务器vps的ping速度、上传下载、以及路由跟踪测试
1:ping测试可以用:
http://ping.chinaz.com/
http://www.webkaka.com/Ping.aspx
http://www.ipip.net/ping.php(推荐)
然后在自己本地电脑上用CMD也测试下,以及在服务器内去ping电信、移动、联通看看,然后再看看返回速度。
2:路由器跟踪用Best Trace路由跟踪软件即可。下载地址:ipip.net官网。
3:speedtest网络测试
安装组件
wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
给权限:chmod x speedtest.py
执行脚本测试:./speedtest.py
然后等跑的结果就好了,speedtest会根据服务器ip找最近的节点测试。
speedtest脚本文件其他节点:
国内阿里云路线wget https://www.zhujitop.com/test/speedtest.py
美国路线wget http://103.79.76.206/speedtest.py
4:mtr网络诊断测试
先安装:
yum install mtr
#适用于centossudo apt-get install mtr
#适用于debian/ubuntu我们提供的是国内服务器文件,服务器是阿里云北京节点。如果要测试下载国外的文件,自己随便找个就行了。至于上传速度,自己用FTP试试都行。
国内阿里云文件节点:wget https://www.zhujitop.com/test/100mb.test
美国洛杉矶文件节点:wget http://103.79.76.206/100mb.test
谷歌网盘文件1G:连接下载
谷歌网盘文件100M:连接下载
6:也可以安装smokeping,来监控服务器的网络状态。由于我们只是简单测试,就不走这个过程了。
如果你的服务器是长期使用的,可以试一下。
7:speedtest带宽测试,HTML5版本:http://beta.speedtest.net
四:服务器vps的压力测试
一般可以用Apache Bench,Webbench,http_load这三种来测试,但是Apache Bench和http_load需要先安装运行环境,一般就用Webbench就行了,Webbench是测试并发压力的,http_load是测试吞吐量和负载。
然后执行Webbench的命令:
阿里云国内节点文件:
wget https://www.zhujitop.com/test/webbench-1.5.tar.gz
#下载
美国洛杉矶节点文件:
wget http://103.79.76.206/webbench-1.5.tar.gz
#随便选个下载都行
tar zxvf webbench-1.5.tar.gz
#解压文件
cd webbench-1.5
#进入webbench目录
make && make install
#编译
如果出现install -m 644 webbench.1 /usr/local/man/man1这段差不多的错误,就先执行:
mkdir -p /usr/local/man
chmod 644 /usr/local/man
或者mkdir -m 644 -p /usr/local/man/man1
再回来执行make && make install
都没有问题了,就执行测试代码,不能是https的网址,后面的“/”一定要带上。
-c:发送多少次请求,-t:多少时间
webbench -c 1000 -t 60 http://需要测试压力的网址或者ip/
#1分钟1000个用户访问
以下表示:30秒发送200次请求,可以看出每分钟响应的请求数可以达到30812,每秒传送数据量是283523,成功了15406次请求,0次失败。
Speed:每分钟请求数,每分钟传输量;Requests:结果数量。
为了更准确的知道服务器所承受的压力,我们需要进行多次测试,并发数逐渐增加,看看并发数到多少了,你的网站就打不开了。这样也可以根据你网站目前的用户量,来判断是否要升级服务器。
关于Webbench测试,也看你购买的云服务器或者vps是否带有防御能力,如果没有,那测试也没什么用。
五、服务器vps的UnixBench跑分工具测试
UnixBench也只是参考,类似手机的安兔兔、电脑的鲁大师这些。并且在服务器上还有个重点是,服务器架构不同,跑分也区别极大。OVZ一般都3000分起步,部分KVM和XEN却都在1000分左右起步。
顺便说下国内几家的框架:阿里云:XEN、腾讯:KVM
wget https://www.zhujitop.com/test/UnixBench5.1.3.tgz
tar -zxvf UnixBench5.1.3.tgz
cd UnixBench
make
./Run
等一会,速度快慢和服务器性能有关,比较差的服务器,有的要跑1个小时以上才出结果。
如果遇到-bash: ./Run: /usr/bin/perl:这种错误,就是开头说的组件要安装perl-Time-HiRes。
不管什么架构什么配置的低于500分就别考虑了,除非你自己就是想拿来玩玩。
UnixBench文件节点:
阿里云国内:wget https://www.zhujitop.com/test/UnixBench5.1.3.tgz
美国:wget http://103.79.76.206/UnixBench5.1.3.tgz
六、服务器vps一键检测硬件配置、节点下载和IO读写脚本测试
这个脚本也可以看基本配置、固定节点的下载速度之类的,还是方便,不过在测试下载速度的时候,运行比较慢,需要等很久,特别是国内服务器里面测试。类似的还有teddysun和91yun服务器一键测试包。其实你自己也可以用这个脚本来修改,自己增加测试节点。
wget https://www.zhujitop.com/test/bench.sh
wget -qO- bench.sh | bash
或者 wget -qO- 86.re/bench.sh | bash
测试脚本文件节点:
阿里云国内:wget https://www.zhujitop.com/test/bench.sh
美国:wget http://103.79.76.206/bench.sh
也可以用wget https://www.zhujitop.com/test/x/bench.sh(这个是先测试网络节点才处理I/O读写)
测试命令:
sh bench.sh
七、检测服务器采用的什么架构(可忽略)
有的人买国外特别便宜的vps,多数都是为了那啥啥的,但是也有可能被忽悠,毕竟有的不能加速。
那么我们就需要来看看你手里的云主机到底是什么了。
可以先用ls /proc/命令看看有没有kvm、xen、openvz相关的显示,如果没有就用下面的工具:
wget http://people.redhat.com/rjones/virt-what/files/virt-what-1.15.tar.gz
#官网最新安装包
tar -zxvf virt-what-1.15.tar.gz
#解压文件
cd virt-what-1.15
#进入目录
./configure
#先设置生成makefile
make && make install
#编译安装
如果没有错误,就直接执行命令查看
virt-what
virt文件其他节点:
国内阿里云路线:
wget https://www.zhujitop.com/test/virt-what-1.15.tar.gz
美国洛杉矶节点:
wget http://103.79.76.206/virt-what-1.15.tar.gz
八、通过一键脚本安装运行环境测试
这个就比较简单了,推荐用军哥的liunx安装包或者oneinstack安装包,当然还有其他好几位的,都是公开开源的。
官网:https://lnmp.org/或者https://oneinstack.com/install/
安装运行环境就是看安装完成大概用了多长时间、安装好之后,自己弄个网站上去,访问看看。
在安装的时候,都选择高配的软件,看看你的服务器在这种情况下是否还能支撑住。
本文转载自:主机排行榜https://www.zhujitop.com/43.html
文章评论