【问题标题】:Developing a Concrete5 site in a VM / Vagrant environment - how to speed it up?在 VM / Vagrant 环境中开发 Concrete5 站点 - 如何加快速度?
【发布时间】:2016-02-16 21:01:50
【问题描述】:

我使用 VirtualBox / Vagrant 在以下 CMS 和平台上本地开发网站:Magento、OpenCart、WordPress 和 Concrete5。

在上述所有网站中,Concrete5 网站是迄今为止最慢的,并且可能需要超过 10 秒才能完全加载页面。如果登录,页面可能需要 20 秒以上。

如果我在开发过程中启用缓存,则未登录和登录会话的加载时间分别减少到大约 6 秒和 14 秒。

我为 Concrete5 定制了我的设置以尝试加快它,甚至为 VM 分配了 4GB 的 RAM。我通常为使用其他平台的所有其他 VM 分配 2GB。分配额外的 RAM 在性能方面绝对没有任何效果。

我一直使用 CentOS 6.4 作为客户操作系统...

如上所述,似乎只有 Concrete5 给我带来了问题。有没有其他人经历过这种情况,如果有,你知道它为什么这么慢的任何特殊原因吗?

【问题讨论】:

  • 您的主机操作系统是什么?你在哪里存储 Concrete5 文件?我猜他们驻留在主机上的一个文件夹中,该文件夹稍后通过vboxfs 共享到 Vagrant 框。我说的对吗?
  • 这非常正确。 Concrete5 文件位于我的主机和虚拟机之间同步的“shared/www”文件夹下。我的主机操作系统是 Windows 8.1 Pro。
  • 共享文件夹速度很慢。 vboxfs 文件夹非常很慢。我几乎 100% 肯定,一旦你在 vagrant box 中复制文件,你会得到很大的加速。
  • 执行此操作:登录 vagrant box 并将共享文件复制到其他位置,在 Vagrantfile 中评论共享文件夹并重新加载该框,再次登录该框并将先前共享的数据复制到 webroot 并检查 CMS 是否加载快点。如果你得到了不错的改进,那么你可能想要使用NFS 共享文件夹,或者甚至将你的文件放在盒子里,然后通过SMB 将它们共享到你的主机操作系统
  • 谢谢阿里克。我会试一试并及时通知您。

标签: performance vagrant virtual-machine virtualbox concrete5


【解决方案1】:

根据您设置虚拟机的方式,在 *Unix 环境中,您可以通过在 PHP 中使用 opcaching 扩展来实现大幅提升。

我将 OPCACHE 与 PHP 5.5.x 一起使用,我发现 Concrete5.7.x 运行得非常好,而针对使用 APC 进行 opcaching 的 PHP 5.4 或 5.3,差异是可见的。

关于 Opcaching 扩展的工作方式,最好调整它的设置,使其尽可能多地将预编译脚本保留在 RAM 中,因为这样可以提升任何 php 应用程序的性能。

还要提一下,我将 Concrete5 设置为适合开发,并且对于不变的事物没有问题。

【讨论】:

    【解决方案2】:

    我设法半解决了我上面的问题。我的大多数具体站点构建都包含相当多的 jQuery 模块/包。我一直将这些设置为noConflict 模式,因此登录时它们不会干扰 Concrete5 自己的 jQuery,因此与未登录时相比,登录或编辑模式时我可以很好地查看实际站点。

    我没有这样做,而是将所有 jQuery 文件包含和内联语句包装在 if 语句中,如下例所示:

    <?php
    $u = new User();
    if(!$u->isLoggedIn()) { ?>
    
    <script>
    jQuery here
    </script>
    <script src="<?php echo $this->getThemePath()?>/js/flex.js"></script>
    
    <?php } ?>
    

    这似乎在登录时加快了网站速度。

    当使用比 Concrete5.6 使用的 1.7.2 版本更新的 jQuery 版本时,我已经使用了上面的 if 语句。

    不过,我在其他平台上没有遇到过这种情况 - 我会继续研究。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多