增加LAMP应用程序中的并发用户性能

我们有一个LAMP应用程序,由于连接到应用程序的大量并发用户,我们已经开始感觉到性能不佳。 我已经看了Apache和MySql的个别参数,我们需要configuration它们以获得更好的性能和大量的用户,我不认为这会导致任何进一步的改进。 我想知道是否有任何其他的策略,我们可以看看增加谁可以使用我们的基于Web的LAMP应用程序的并发用户的数量,并没有看到性能下降。 是否有可能添加更多的Apache服务器或更多的MySQL服务器和负载平衡呢?

查询性能可能是启用数据库的应用程序性能的第一大命中。 你有没有运行任何查询分析你的应用程序/数据库来查看你的查询时间花在哪里?

在优化查询性能之后,在考虑将数据库分布到更高性能的多节点体系结构之前,还有其他针对第一个数据库的优化策略。 您可以查看以下内容: – 键和索引(与查询性能相关,但对表优化也很重要) – 数据库大小和磁盘分区(包括数据大小) – 存储引擎(什么版本的LAMP / MySQL?MyISAM引擎默认对于5.5.5之前的MySQL) – caching/caching调优

您可以在FOSS服务器项目http://www.veriserver.net/a/fossmain.htm上获得有关FOSS服务器的更多信息,包括LAMP和MySQL安装。 在这个地址有一个技术论坛的链接,它为服务器pipe理员提供了FOSS的帮助。

即使人们由于你的低接受率而警告你不能回答你的问题,但我在这里是新的,所以不确定这意味着什么。 直到我发现,这里有一些选项。

首先你需要做的是找出你的应用程序的瓶颈。 首先用xDebug的分析器浏览应用程序的开发副本。 这将给你一个非常精确的执行概述。

如果你不幸,而你的问题只出现在生产(负载下),我build议尝试Facebook的xhprof ,它大致做xDebug相同的事情,但更轻量级。

多数情况下,慢应用程序的问题是数据库。 正如你使用MySQL,我build议把它的慢查询login ,让它运行24-48h。 这会稍微拖慢你的应用程序,但如果你找出问题将是值得的。

过了一段时间,您使用Percona Toolkit(ex-Maatkit)的pk-query-digest来分析慢日志。 它可能(也可能会)向你显示一个或两个你可以修复并提高你的性能的查询。

最后,你可能最终不需要新的硬件。