amazon aws非常慢,mysql和apache吃了很多内存

时间:2014-03-14 01:39:23

标签: mysql apache amazon-web-services amazon-ec2 mysql-workbench

我正在使用amazon aws ec2,它非常慢。我不知道哪里出错了。

我正在使用freetop命令,并使用大量内存找到mysqlapache

free -m

以下是top -M

top -M

我发现apachemysql吃的更多。

这是apache信息:

[ec2-user@www ****]$ httpd -v
Server version: Apache/2.4.6 (Amazon)
Server built:   Sep 20 2013 18:01:06

Mysql信息:

Server version: 5.5.34 MySQL Community Server (GPL)

我不修改任何mysql& apache配置文件,接下来该怎么办? 欢迎提出任何建议。

1 个答案:

答案 0 :(得分:2)

你没有告诉我们任何理由认为这很慢。您所拥有的显示的是,您的内存中几乎所有都是免费的,并且您的CPU从图中闲置。

在分析内存使用情况时,请记住“缓存”内存用于保存从硬盘驱动器中检索的内容。 Linux内核不是释放内存然后浪费它,而是巧妙地将数据留在内存中,必要时将其清除。这是一件好事 - 它意味着很多东西,例如mysql数据文件,尽可能存在于内存中。在内存中缓存文件是一件好事!你实际上有6个以上的演出。

顶部的VIRT内存基本上没有意义 - 忽略它。请参阅https://serverfault.com/questions/138427/top-what-does-virtual-memory-size-mean-linux-ubuntu你应该看到的是RES - 和256M for mysql以及几十个megs for Apache和mod-php是非常名义的。事实上,对于你似乎拥有的服务器(大型内存有7个内存),如果你的数据库中有超过200兆左右的数据,你可能应该使用 more 来为mysql,因为它会带来很大的性能提升。

如果你的网站很慢,那不是因为内存。

要考虑的几个问题,以确定可能的性能瓶颈:

  • 您使用的是哪种实例类型?
  • 是Ephemeral支持,还是EBS Backed?
  • 您是否在服务器“慢”的等待时间内看到峰值?
  • 你在运行什么php应用程序?

AWS实例的内存和临时存储通常不足。例如,大型实例有7个ram,但只有2个2ghz大约2007年的处理器。所以他们无论如何都不快。 c1和m3系列实例在此方面做了很多改进。