我跟着sylius' install instructions的作曲家,让我的本地副本正常工作。问题是当我去本地/ app_dev.php时需要很长时间才能加载,12-18秒。然而,探查器显示更快的时间......
此外,安装说明不解释如何使本地/ app.php工作或生产环境。任何信息都会有所帮助:)。
答案 0 :(得分:10)
首先让我感谢@Florian的链接和推动让我挖掘一点:)。
按照sylius' getting started页面上的说明操作时:
$ wget http://getcomposer.org/composer.phar
$ composer.phar create-project sylius/sylius -s dev
$ cd sylius
$ app/console sylius:install
默认情况下,您使用config_dev.yml文件进行安装。这会将您的数据库设置为{dbname} _dev,并在app_dev.php中进行调试。当调试开启时"cache files are dynamically rebuilt on each request."这就是导致速度慢的原因。
关于使用app.php(生产环境),您可以运行app / console sylius:install -e prod。这将设置一个常规数据库,您可以使用app.php。
神秘解决了:)。
答案 1 :(得分:4)
如果你在Windows上,请确保按照SensioDistributionBundle的建议,在php.ini中将“realpath_cache_size”设置为至少5M。像这样:
; php.ini
realpath_cache_size = 5M
在我在开发环境中运行的Sylius安装中,它将加载时间从大约15秒减少到大约2秒。
为了进一步减少加载时间,您可以考虑使用WinCache https://sourceforge.net/projects/wincache/。在使用PHP的内置Web服务器运行Sylius时,我使用以下设置:
; php.ini
[wincache]
wincache.enablecli=1
wincache.filecount=16384
WinCache似乎与Sylius的开发环境一样正常。
答案 2 :(得分:1)
Sylius比生产和开发模式的Symfony慢得多,尽管它建立在Symfony之上。原因是它的ResourceBundle。我确信有一些方法可以在生产中加速它,但无论如何它在开发过程中都很慢。
答案 3 :(得分:0)
我在使用默认同步文件夹设置的Vagrant设置上运行Sylius,发现它非常慢,最多加载45秒!其他的小Symfony项目并不是那么糟糕所以认为它只是Sylius,然后我读到Vagrant上的同步文件夹设置在Linux系统上可用的类型NFS更快,它从40秒减少到4秒! / p>
因此,如果你正在使用Vagrant并发现它很慢,请确保将同步文件夹设置为NFS。
答案 4 :(得分:0)
NFS会帮助你处理流浪的情况,但你仍然可以在更大的项目中找到它。 Docker在MACOSX上更糟糕。如果你使用的是Linux,我认为docker会为开发提供支持。此外,如果您使用PHP< 7移动到7.0(上层版本与Sylius atm存在一些问题),即使在开发环境中您也会看到性能的巨大提升。
还为您的Vagrant机器提供更多内存