一尘不染

为什么Magento这么慢?

php

Magento通常这么慢吗?

这是我的第一次使用体验,管理面板只需花一些时间即可加载和保存更改。这是带有测试数据的默认安装。

托管该服务器的服务器可超快地服务于其他非Magento站点。Magento使它如此缓慢的PHP代码有什么用,该如何解决?


阅读 597

收藏
2020-05-29

共1个答案

一尘不染

我只是切身参与优化Magento的性能,但这是系统速度如此缓慢的一些原因

  1. Magento的某些部分使用在MySQL之上实现的EAV数据库系统。这意味着查询单个“事物”通常意味着查询多个行

  2. 幕后有很多东西(应用程序配置,系统配置,布局配置等),涉及在内存中建立巨型XML树,然后“查询”这些树以获取信息。这需要占用内存(存储树)和CPU(解析树)。其中一些(尤其是布局树)很大。另外,除非启用了缓存,否则这些树都是 根据磁盘 上的 文件 以及 每个请求 来构建的。

  3. Magento使用其配置系统允许您覆盖类。这是一项强大的功能,但是这意味着在实例化模型,帮助程序或控制器时,都需要运行额外的PHP指令来确定是否需要原始类文件或替代类文件。这加起来。

  4. 除了布局系统,Magento的模板系统还涉及许多递归渲染。这加起来。

通常,Magento工程师首先要负责构建尽可能灵活,可定制的系统,然后再担心性能。

确保更好性能的第一件事就是打开缓存(系统->缓存管理)。这将缓解Magento构建各种XML树时发生的某些CPU /磁盘阻塞。

您要做的第二件事是 确保您的主机和运营团队 具有调整Magento的性能经验。如果您依靠每月7美元的计划来顺利度过难关,那么祝您好运。

2020-05-29