Io AmazonEC2和Linode之间的性能差异

Io AmazonEC2和Linode之间的性能差异,io,amazon-ec2,amazon,cpu,linode,Io,Amazon Ec2,Amazon,Cpu,Linode,根据我的发现,我只是对EC2和Linode之间的区别感兴趣。我意识到有很多事情可能会出错。只是想知道从哪里开始 我一直在对博客登录页面的请求进行计时(通过Apache基准测试)。它有大约22个sql查询和相当数量的html。我在两台服务器上设置了完全相同的站点 Web1-托管在Linode(512大小的VPS) Web2-托管在亚马逊(micro VPS) 然后我测试了100个并发连接。我首先运行测试来预热数据库,然后真正地运行它 Web1-每秒33个请求。 Web2-每秒5个请求。 然后我安装

根据我的发现,我只是对EC2和Linode之间的区别感兴趣。我意识到有很多事情可能会出错。只是想知道从哪里开始

我一直在对博客登录页面的请求进行计时(通过Apache基准测试)。它有大约22个sql查询和相当数量的html。我在两台服务器上设置了完全相同的站点

Web1-托管在Linode(512大小的VPS)

Web2-托管在亚马逊(micro VPS)

然后我测试了100个并发连接。我首先运行测试来预热数据库,然后真正地运行它

Web1-每秒33个请求。

Web2-每秒5个请求。

然后我安装了页面缓存。在这里,它将完整的html返回存储在一个文件中。因此,它只返回静态html文件,而不是通过PHP控制器进行数据库连接

Web1-每秒32个请求。

Web2-每秒88个请求。

您会注意到,文件缓存在Web1上并没有起到多大作用。似乎数据库/PHP返回的速度一样快,只需打开一个文件并返回它。你会注意到,在Web2上,它比第一个请求快得多

我一天中做了很多次这样的测量。这不是一次性的问题


这是我所知道的

  • 这两个系统是相同的。因为我用相同的方法配置了它们 部署脚本
  • Web2(Amazon)很可能运行在SAN(文件系统)上
  • Web1(Linode)很可能从本地硬盘驱动器(文件系统)运行
  • 不确定它背后是什么CPU。我假设它们是不同的CPU。我无法想象CPU有多大差别

我非常感兴趣的是,当没有缓存时,是什么让Web2变得如此缓慢,当有缓存时,是什么让Web1变得相当快,而Web1在这两方面都是一样的

你的想法是什么?CPU,IO

您将如何追踪瓶颈

我没有看到任何疯狂的负载(带有“w”)。不是“iostat”中100%有价值的东西(至于我应该看什么)



谢谢。

一个可能的因素是EC2 EBS卷与标准HDD相比速度非常慢(与SSD相比甚至更慢)

这可能不是速度慢的全部原因,但如果Linode选项使用的是真正的HDD,这至少是部分原因。

所以我找到了答案


瘸子。但是如果你在亚马逊有一个微型实例,它们会限制你的CPU。因此,当我尝试使用并发连接多次连接时,它们限制了我的CPU

看来EC2的速度很慢。除非你是一个大网站,需要大量的扩展


我找到了。在比较EC2微实例时,它们似乎非常棒

更正。当缓存打开时,在当天晚些时候进行测试可以在Web1中获得更好的结果。我现在每秒接近130个请求。因此,最大的问题是,当缓存未打开时,是什么阻止了Web2。每秒5个请求的速度很慢。这是微实例的主要原因。CPU被节流。不管怎样,正如Peter所说,与云中的其他应用程序相比,Amazon EBS的流量确实很慢。