Symfony 4在Windows上非常慢

Ben*_*Ben 9 php performance symfony windows-10 symfony4

我已经在Windows 10上使用Symfony 作为我的项目几年(SF2,SF3),我最近搬到了Symfony 4来建立一个新项目但是表演是灾难性的.

Symfony初始化时间为5到25秒,如本例所示 例

控制台也是如此:例如一个cache:clear可以持续1分钟.

我搜索了类似的困难和问题的Symfony文档和论坛,我已经测试了推荐的优化(增加一些值??opcache,启用APCu,禁用xdebug,添加realpath_cache_sizephp.ini,使用作曲类地图功能),但在我的情况下,它不会改变任何东西.

这是我对APCu的phpinfo: APCu 和Opcache: opcache

我使用的是PHP 7.1.9,Apache 2.4.27,MariaDB 10.2.8.

是否有人有同样的问题和/或想法?

plu*_*iam 3

* 更新 *

我找到了一个更好的解决方案来解决这个问题。那就是……流浪汉。我知道你在想什么 - “Windows 上的 Vagrant?哈哈。”。但这里发生了变化 - 现在有一个用于 Windows 上 NFS 文件夹同步的插件。我已经在两台 win10 电脑上进行了测试,到目前为止一切顺利。它对我来说似乎非常稳定,并且我的响应时间低至 40-50 毫秒(当然除了 symfony 重新生成/预热缓存等的时间)。Composer 安装、IDE 同步和其他东西也都工作正常。

除此之外,我在 ubuntu Bionic Virtualbox VM 上有相当标准的设置,包括 nginx 和 php7.2-fpm。没有什么特别的或以任何方式优化。

如果您不太喜欢流浪,我仍然在下面留下我的旧答案以供参考。祝你好运,编码愉快!

* // 更新 *

Symfony 在 Windows 上的性能一直很差,至少对我来说是这样。

启用/禁用 opcache / apc / xdebug、调整 realpath 或任何可能 - 可能 - 使事情变得更好,至少一点点,但在我的经验中从来没有真正起作用。而且......到底谁愿意在没有调试器的情况下工作?我认为这不是解决方案。

我的建议是完全删除 XAMPP / WAMP(或者您已经安装了当前的 php 堆栈)并安装 nginx + php-fpm。

例如,您可以手动完成此操作,也可以通过安装WinNMP来完成。

WinNMP 是一个与 XAMPP / WAMP 非常相似的工具,但基于 nginx。它配备了 Nginx、PHP、MySQL 和 Redis。

唯一的缺点是你必须学习如何配置 nginx - 如果你不知道 - 但无论如何你应该学习。Nginx 性能更高,因此在大多数情况下更适合生产环境,因此它在未来可能会有所帮助。

无论如何,这是我发现在 Windows 上使用 symfony 的唯一可行的解​​决方案,我不必禁用 xdebug 或在每次刷新时等待很长时间:)

在此输入图像描述