2012-07-27 106 views
2

我正在编写一个在后端使用MySQL的PHP​​应用程序。我期待大约800个用户秒杀我们的服务器,请求来自iOS应用程序。性能测试我的PHP/MySQL应用程序的AWS

该应用程序分布在大约8个diffrenet PHP脚本上,它们执行非常简单的SELECT查询(偶尔有1个连接)和简单的INSERT查询,我一次只插入一行(数据少于10kb平均每行)。 Theres关于SELECTS和INSERTS之间的50/50分裂。

该计划是使用亚马逊网络服务,并在EC2上托管应用程序以传播CPU负载和RDS(使用MySQL)来处理数据库,但我知道RDS不会扩展,只能向上扩展。因此,在提交AWS解决方案之前,我需要在我们的开发服务器上测试我的应用程序(不是一百万英里的RDS解决方案规范),以便大致了解我的应用程序和MySQL可以处理多少次请求(对于棒球数据) - 在AWS上进行实际基准测试之前。我相信我只需要真正需要在PHP中进行性能测试,因为EC2应该处理CPU负载,但是我确实需要了解RDS(MySQL)在很多用户的情况下是否应该如何应对。

有关如何处理这种情况的任何意见,将不胜感激。

提前感谢您!

回答

0

你有没有考虑过使用Apache Benchmark?应该在这里完成这项工作。此外,我已经听到关于siege的好消息,但尚未测试。

+0

最后我用Siege和CurlLoader卷起。谢谢! – Schodemeiss 2012-08-20 09:58:44

0

如果您每秒有800个用户点击,那么首先考虑分片是个好主意。在开始设计和实施分片权利后,您可以从少量主机开始,然后再轻松扩展。如果您只设计一台服务器,即使现在它将处理负载,但很快您需要扩展,然后在应用程序已经投入生产时切换到分片架构将变得更加复杂。