Dar*_*iss 5 php apache compilation phalcon hhvm
我开始阅读有关HHVM和Zephir的内容.起初我很兴奋,由于这些技术,性能上升了.但后来我开始问自己一个问题.如果它真的给你这样的性能,就像这种技术的所有者说的那样.
现在我要说,我觉得它看起来怎么样.如果我错了,请纠正我.
Php Script Live Process:运行脚本 - >编译 - >执行脚本
这里显而易见的问题是编译.我们需要在每次启动时编译脚本.
让我假装安装了Apache2,并运行名为"test.php"的php脚本:
APC:
APC打开,APC选项检查更改.它应该是这样的:
运行脚本 - >执行脚本
因为它已经编译到我们的内存并准备使用.
HHVM:
Hip Hop虚拟机,其行为与APC类似.这里的不同之处在于,虚拟机,对于带有APC的标准PHP,它是Zend Engine.所以它是这样的:
运行脚本 - >执行脚本
因为它已经编译(在内存中?)并准备使用.
Zephir:
我将我的脚本编译为C扩展.所以我猜它不需要编译?(我不确定这一点).所以我的php脚本里面的函数现在都是本机的.因此,如果我编写另一个名为"test2.php"的脚本,它将运行我在"test.php"中的本机函数(是的,它应该具有.zep格式,但现在无关紧要).现在使用APC我避免编译过程.
运行脚本 - >执行脚本
现在我很困惑.就你所知,它现在都是一样的.我没有看到使用Zephir和HHVM比标准APC有任何优势.所以我想听听,如果我是对的还是完全错的?
Zephir 无法处理高级面向目标的代码。您的应用程序的速度将比干净的 PHP 方式更差。
在这里您可以找到干净的 PHP 与 Zephir 的比较。 https://github.com/dgafka/zephir-BookStore
因此,如果您想将应用程序重写为 zephir,请三思而后行。
https://github.com/phalcon/zephir/issues/694#issuecomment-67987616