可能重复:
如何对网站进行负载测试和容量规划
让我细化一下我的问题:
1. 如何提高 MySQL 性能?
2. 添加更多 RAM 有帮助吗?
3. 即使有更多 RAM,服务器 1(详情如下)也会陷入困境吗?
我的设置:
服务器 1 - 双核 Xeon,1GB RAM(最大 8GB),LAMP(作为图像 cdn 服务器,实际上并未使用 M 部分)
服务器 2 - 四核 Xeon,8GB(最大 24GB),LAMP(作为主服务器,AMP 仅在此服务器上运行)
当前情况:
服务器 1(top 命令)- 相当空闲,没有太多事件发生,CPU 利用率大部分时间处于空闲状态
服务器 2(top 命令)- MySQL 负载很重(其中 mysqld 的 CPU 利用率很容易达到 100-175%)
我的计划是在两台服务器之间进行原始的 MySQL 负载平衡(编辑 PHP 并将 40% 的 mysql 查询引导至服务器 1)。
答案1
4 核机器上的 CPU 达到 100-175% 不一定是个问题。性能改进必须遵循此过程,
- 基线 - 了解给定工作负载下的性能统计数据,事实上,有几个明确定义的工作负载(即 0 个连接、100 个连接、10 个查询、5 个用户,无论什么有意义的工作负载)。
- 改变 - 做出改变,mysql 有很多调整选项需要您去了解,主要是关于缓存大小。
- 重新基准化 - 进行更改后,重新运行测试以查看其现在的行为。
性能调整没有什么灵丹妙药,特别是当您没有告诉我们有关您的应用程序的任何信息时。