在一篇提交 IEEE 亚太区云计算大会的论文中,蒋清野先生使用 UnixBench 和 Hadoop Wordcount 对国内两款公有 IaaS 云(阿里云和盛大云)的 VM 做了性能对比测试,得出了一些颇有意思的结论。
经测试发现,VM 的配置(如 CPU 数及内存大小)不再能反映 VM 的性能;UnixBench 和 Hadoop Wordcount 测试都显示,VM 配置越高,其性价比越低;在另一组 Hadoop Wordcount 测试中,多个小配置的 VM 的集群能够获得比大配置的 VM 更好的性价比。
论文中作者首先解释了超额承担(over-commit)的概念,并指出大多数主流 hypervisor 都支持分配超过实际数目的 CPU 及内存。而“超额承担”可能导致终端用户实际上并未享用 VM 所标榜的性能指标。所以,作者对阿里云和盛大云进行了一系列基于 UnixBench 和 Hadoop Wordcount 的测试,以测量它们的性能及性价比。
以下是论文中经过对测试结果的分析得出的一些结论:
- 很难判断阿里云是否“超额承担”;盛大云则可能存在严重的“超额承担”。
- 对于同一公有云供应商,VM 配置越高,其性价比越低。
- VM 的水平扩展几乎能够获得线性的性能上升。
- 在集群中增加 VM 不改变整体性价比。
- 集群的性价比要好于最佳性能的单个 VM 的性价比。
最后作者总结:“不论从技术还是经济上看,当应用需要更多计算资源时,实施水平扩展都是可行的”。对于需要使用公有云作为其应用运行的基础设施的用户而言,这一结论无疑是值得参考的。
除上述结论之外,作者在对结果的分析中还指出了阿里云和盛大云在设计上可能存在的问题,如阿里云一款价格较高 VM(运行在更好的 CPU 上,提供更大的内存)的效率竟然低于另一款价格更低的 VM;而对盛大云进行 Hadoop Wordcount 发现,VM 的配置与性能几乎无关,问题出在哪里?也许只有盛大云的技术人员才能解释这个现象。
欲了解该论文的更多详细内容及测试数据分析,请下载该论文草稿版。
评论