我想知道在 LAMP 堆栈上构建典型站点时,如何优化它以获得最佳加载时间。我正在描绘一个典型的数据库驱动站点。
这是一个高级外观,可能会引起问题,让我将其分解为堆栈的每一层。
L - 在系统级别,(设置和文件系统)你可以做些什么来提高速度?我能想到的一件事是图像大小,这里的压缩可以帮助优化任何东西吗?
A - Web 服务器中必须有大量与站点速度相关的设置。不是我的强项。可能很大程度上取决于同时运行的站点数量。
M - MySQL 在数据库驱动的站点中,数据库性能是关键。是否有更好的规范化方法,即使用链接表?Web 开发人员通常只制作类似于 1NF 的简单单片表,这会影响性能。
P - 除了像缓存这样的性能提升设置,程序员可以做些什么来影响高水平的性能?我真的很想知道 MVC 设计方法是否比快速而肮脏的方法更能提高性能。其他简单的技巧,比如会话比 cookie 更快,会很有趣。
显然,你必须深入了解细节,找出让你慢下来的代码。我也意识到许多站点具有许多不同的性能特征,但是让我们假设一个典型的站点具有更多的读取然后写入。
我只是想知道我们是否可以汇编一堆最佳实践并完全期望人们将其他问题联系起来,以便我们可以有效地制定一份清单。
我的目标是看看除了性能方面的常见问题之外,我们是否还能看到一些你可能不会想到的奇怪事情,以及最佳实践总结。
所以我的问题是,如果您从头开始,您将如何确保您的 LAMP 站点快速运行?