网站速度极慢 - 无响应 - 在 Linode 上

网站速度极慢 - 无响应 - 在 Linode 上

我最近从托管/自动缩放主机迁移到了 linode。

我的网站非常慢 - 大多数时候都没有响应。我之前使用的是 512 MB、20 GB 存储空间、200 GB 传输量计划,但升级后觉得可能需要更多。现在我使用的是 712 MB、300 GB 存储空间、300 GB 传输量计划。

我的网站在 mysql 中占用了 1.5 GB,每天的页面浏览量约为 3k。我安装了 iotop,下面的图片就是我得到的结果。我发现 mysql 占用了大量空间。

对于我该如何维护我的网站,您有什么建议吗?

我对服务器管理还很陌生。

非常感谢。在此处输入图片描述

答案1

从输出结果来看,缓慢问题可能是由于高交换使用率造成的。通常,您永远不希望服务器使用任何(或大量)交换空间,因为它比 RAM 慢得多。如果 MySQL/Apache 或您在服务器上运行的其他任何程序配置不正确,它很容易消耗比应有的更多的内存,从而导致使用交换。

您可以使用并按top内存使用情况查看进程(命中M),这应该可以快速显示哪些应用程序占用了最多的内存。对于 MySQL,您可以使用MySQLTuner脚本可以快速告诉您配置是否使用了过多内存。对于 Apache,您可以将其降低到MaxClients非常低的水平(低于 10),直到您更详细地了解内存使用情况。

除了交换使用之外,另一种可能性是您的 MySQL 查询使用了 1.5GB 数据的全部或大部分。由于您只有约 500MB,这会导致查询对磁盘造成很大影响,而这正是您的统计数据所显示的。最简单的解决方案是获取更多内存,以便您可以将整个工作集保存在内存中(这可能小于 1.5GB)。其他可能性包括确保 MySQL 查询缓存已设置并正常工作(假设您的查询可缓存)或优化您的应用程序和查询以尽量减少使用整个数据库。

答案2

您提到您的服务器现在有 712MB 的 RAM,但输出free显示您只有 512MB。无论如何,“交换”数字远大于零,这意味着更多的 RAM 对您更有利。

相关内容