体验阿里云SSD云盘+ECS(I/O优化)的性能
阿里云推出SSD云盘+I/O优化的ECS已有一段时间,这个功能优化可以为ECS服务器与SSD云盘提供更好的网络能力。据阿里云官网介绍,SSD云盘最高提供20000次随机读写IOPS、256MB/S吞吐量的存储性能。这里需要解释一下如果想要达到20000次IOPS,需要SSD云盘容量达到667GB以上。下面的文章中会对这个做进一步解释。近期拿到了这款产品的公测机会,下面就让我们一起开启一段体验之旅吧。
首先在订购页面中选择自己所需的配置,由于我是测试体验就先按照最低配置来进行购买(CPU:2核,内存:4GB,SSD云盘:20GB),如下图。

创建成功之后就可以使用ECS了,通过Google了解到AnvilPro是用来测试SSD硬盘常用的软件,那我就用这款工具来对阿里云的SSD云盘进行测试。目前对于SSD硬盘测试最主要的测试指标就是——IOPS,这个有代表什么意思呢? IOPS的全称是Input/Output Per Second,即每秒的输入输出量(或读写次数),指单位时间内系统能处理的I/O请求数量,一般以每秒处理的I/O请求数量为单位,I/O请求通常为读或写数据操作请求。

既然有了测试依据,那么我就在服务器上打开AnvilPro软件,分别以C盘1G、E盘4G、E盘16G为测试,得到如下图的测试数据。



这款软件读取部分以Seq 4MB(连续读取)、4K(随意读取,并发1个队列)、4K QD4(随意读取,并发4个队列)、4K QD16(随意读取,并发16个队列)、32K、128K划分;写入部分为Seq 4MB、4K、4K QD4(随意读取,并发4个队列)、4K QD16(随意读取,并发16个队列)。从图中可以看出IOPS与MB/S可以直接进行换算,比如以C盘1G的测试标本,4K读取是1201.75,即每秒可以读取1201个4K文件,即1201*4K/1024 = 4.69MB/S。
通过这几天的学习以及阿里云童鞋的指导,得知目前SSD云盘的性能是跟存储容量有关系,按照官方介绍的计算标准,SSD云盘每1GB空间提供30个IOPS,30GB空间提供900个IOPS,以此类推100GB空间提供3000个IOPS,如果想要达到20000个IOPS,需要667GB。那么根据这个计算标准,我之前购买的配置是按照SSD云盘最小标准——20GB,根据上图所测试出来的IOPS,阿里云的SSD云盘在20GB下的性能已经很不错啦。但是我又真的想体验一下20000个IOPS是什么水准?那么就继续下单购买,分别购买了Windows Server 2012 配置如下:CPU:2核,内存:4GB(I/O优化),数据盘:700G,带宽:1M(峰值)。同时我也购买了相同配置的Ubuntu服务器,测试一下SSD云盘在Linux下的性能。
这次在Windows Server下测试我依旧选择了以上次测试同样的软件——AnvilPro,而没有使用朋友推荐的HD Tune,主要是为了与上次的测试条件达到统一。只不过这次我根据自己的选择进行测试,比如我选择了以Block Size:4K、32K、64K,Queue Depth=16为标准,进行了三组测试,如下图:



然后又测试了随机写入数据的,这次以Block Size:32K、64K,Queue Depth=16为标准进行测试


通过上面的Random Read和Rand Write 结果得出,SSD云盘的性能确实是跟容量大小有关系,我上周做的以最小容量为基准的测试虽然也能反应出SSD云盘的性能,但是要想获取最大性能的SSD云盘还是建议在有条件的情况下购买大容量的SSD云盘。下面看一下在Ubuntu服务器下面的测试结果,在Linux环境下会使用FIO进行测试,只需要通过命令行输入:
fio -direct=1 -iodepth=64 -rw=randwrite -ioengine=libaio -bs=16k -size=10G -numjobs=1 -runtime=1000 -group_reporting -name=/data/testfile

这段测试的含义是测试随机写,每次写入大小16K,文件大小为10G,ioengine=libaio,运行1000秒(runtime),跳过buffer 下面的测试结束,每秒写速bw=235413KB/s,IOPS=14713。
通过上面的性能测试得到的数据,SSD云盘可以解决随机读取IOPS性能的问题,就如产品介绍那样1GB提供30个IOPS,100GB提供300个IOPS。那么问题来了,如何来选择ECS的配置?下面了解一下目前按量付费的计算公式(以1000元为准)。4核16G的配置可以使用13天,16核16G的配置可以使用9天。剩下的就按照自己的需求来订购配置了。

目前这款产品是适合对数据可靠性要求高的I/O密集型等核心业务系统或者中大型开发测试环境。如果你的业务发展碰到用户访问量大、高并发等问题,那么还是通过这种硬件上的投入来解决问题。因为当你的业务发展遇到这样的情况,说明你的网站或是App等产品是有用户群体和知名度的,所以对于基础设施产品的投入会随着越来越多的增长用户摊薄投入成本。
总之现在的互联网行业,用户体验是每个开发人员和运营者所追求的目标,能为自己的用户带来更好的使用体验是一件幸福的事情。其实这也是云计算厂商所追求的目标,通过为网站开发者提供有针对性、适合各种业务场景的产品来解决我们的问题,让我们开发者聚焦在自己熟悉的领域,关注自己的产品开发,提升产品竞争力,这才是一个有序的发展生态。
体验阿里云SSD云盘+ECS(I/O优化)的性能的更多相关文章
- 【免费公测】阿里云SSD云盘,不仅仅是IO提速10倍
今天很高兴为大家介绍最新的ECS存储服务:SSD云盘. SSD云盘基于全SSD存储介质.利用阿里云飞天分布式存储技术,提供数据可靠性99.999%的高性能存储:该产品具备以下特点: l 高性能:单个 ...
- 阿里云CentOS7挂载SSD云盘的方法
https://bbs.aliyun.com/read/151152.html 阿里云购买的第2块云盘默认是不自动挂载的,需要手动配置挂载上. 1.查看SSD云盘 sudo fdisk -l Disk ...
- 阿里云CentOS 7系统挂载SSD云盘的教程_Linux
一.查看SSD云盘 sudo fdisk -l Disk /dev/vda: 42.9 GB, 42949672960 bytes, 83886080 sectors Units = sectors ...
- 在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境
阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...
- 阿里云服务器云数据库免费体验(Java Web详细实例)
一.效果展示 博主部署了两个war包到阿里云服务器上,一个是没有连接数据库的,另外一个是连接了数据库的. (由于阿里云服务器免费使用15天,下面链接约2016年3月9日后无效) (1)无数据库版访问地 ...
- (转)在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境
阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器.我们在 ...
- 基于阿里云SLB/ESS/EIP/ECS/VPC的同城高可用方案演练
今天基于阿里云SLB/ESS/EIP/ECS/VPC等产品进行了一次同城高可用方案演练: 基本步骤如下: 1. 在华东1创建VPC网络VPC1,在华东1可用区B和G各创建一个虚拟交换机vpc1_swi ...
- 阿里云视频云 Retina 多媒体 AI 体验馆开张啦!
带你体验视频更多可能 海量视频管理难度大?翻库检索特定人物费时费力?视频内容剪辑效率低?您的得力助手"Retina多媒体AI"体验馆已上线.带你感受视频AI黑科技,开启极致智能体验 ...
- AWS/阿里/Azure,云厂商价格大PK
以下选取热门型号Linux虚拟机,AWS和Azure的虚拟机配置包括本地SSD临时盘,阿里云虚拟机不带本地SSD临时盘,而且需要另配网卡带宽.以下价格为人民币含税(6%) 按使用量网站直接付费购买(O ...
随机推荐
- java 基础一
一.Java命名规则 Java命名规则有两种,第一种匈牙利命名要求望名知意,第二种驼峰命名要求首字母大写(关键单词) 类名必须首字母大写,方法名首字母小写后面的单词首字母大写 .类名和方法名要用英文开 ...
- WCF Binding
<Programming WCF Services>有一幅图也能说明各自的特征: 下面的图给出了我们选择Binding的方式
- JMeter学习-034-JMeter调试工具之一---HTTP Mirror Server
通常,编程工具IDE都提供了相应的调试模块,供开发者使用,以便更快速的定位问题所在.那么在JMeter编写测试脚本的过程中,JMeter都提供了哪些调试工具供我们使用呢? JMeter常用的调试工具有 ...
- Big Data
Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0 http://dblab.xmu.edu.cn/blog/install-hadoop-in-centos/ Spark ...
- java8 学习系列--NIO学习笔记
近期有点时间,决定学习下java8相关的内容: 当然了不止java8中新增的功能点,整个JDK都需要自己研究的,不过这是个漫长的过程吧,以自己的惰性来看: 不过开发中不是有时候讲究模块化开发么,那么我 ...
- Trace-语句启动Profiler中暂停的跟踪会出现什么状况
2016-09-08 22:09 整理,未发布Profiler创建客户端跟踪.常规页不保存文件.不勾选服务器处理跟踪数据:事件选择RPC:Completed和SQL:BatchCompleted,列筛 ...
- mac 安装jdk1.5
前期准备 Java安装包 JDK 1.5:Java for Mac OS X 10.5 Update 10(From: Apple) 辅助工具 Pacifist:用于提取*.dmg安装包中的文件(点我 ...
- JsonOperate 帮助类
引用 Newtonsoft.Json using Newtonsoft.Json; using System; using System.Collections.Generic; using Syst ...
- linux命令行中单个减号表示标准输入输出流
tar cvf - /src/myprojectsrc 这里本来是要输出到一个.tar文件的,目标.tar文件应该放在上面命令的减号处,因此这里的减号表示标准输出流. 减号单独作为命令行参数时,是标准 ...
- HTML5&CSS3练习笔记(二)
HTML5&CSS3 练习CSS3伪选择器使用 1.first-line 格式:元素:first-line 说明:设置同一个标签下所有行内容的第一行的样式,例如: <table st ...