0

有没有人认识到 Lumen 或 Laravel 的工匠很慢?

我想编写自己的工匠命令并像这样运行它:

hhvm artisan my:command --myparam=true

甚至hhvm artisan需要 2 秒来显示可用命令的列表。

如果我像这样运行它,hhvm -v Eval.Jit=false artisan它就像标准 php,但我想拥有自己的命令并使用 JIT 来启动长时间运行的脚本。

我在 Ubuntu 14.04 上使用 hhvm 3.7.2。

Laravel/Lumen 是否需要在 ini 文件或其他配置中设置任何内容以使用 JIT 进行 CLI?

4

1 回答 1

2

HHVM 的启动时间确实比 PHP5 长得多,因此仅打印出可用命令列表(即,没有实际工作)的东西在 HHVM 上会慢很多。您将支付更大的启动成本,而无需实际运行足够的代码来利用 JIT 加速!

这家初创公司的成本是否与您认为的缓慢一样?一些运行时间较长的命令会运行多长时间?(我不太了解artisan。)如果它们不是很长时间运行,那么禁用 JIT 确实可能会更好——除了上述启动成本外,JIT 本身也有一些预热成本,因为它生成优化代码。

如果artisan命令是长时间运行的,做真正的 CPU 工作(而不只是数据库查询),并且在 HHVM 上仍然比在 PHP5 上慢,那么研究起来会很有趣。这里没有快速的答案或神奇的 INI 设置;您应该在 GitHub 上提交问题,并提供尽可能多的信息,我们可以帮助您获得重现案例或深入了解正在发生的事情。对于这类事情,GitHub 问题是一个比 SO 更好的论坛 :)

于 2015-06-26T16:27:43.873 回答