• PHP如何大幅度提升运行效率? -- 把它编译成机器码!


     

     

    书接上回   今天讨论如何大幅度提升PHP的运行效率。

    在这,我们不纠结神马单双引号、全局变量、OO、require_once、错误抑制....

    在这,我们也不讨论APC、opcache、XCache、eaccelerator....

    我们知道,php的执行需要把脚本翻成Opcodes,经过一定的优化(需要工具支持)后再交给zend引擎去执行。

    那么为什么不把PHP编译成机器码直接去运行呢?这是绝妙的主意!

    其实,已经有很多人在考虑这个事情了,并且还有一些人付诸实践:

    QB

    http://www.php-qb.net/

    "虽然PHP是构建Web应用的一门优秀语言,但是它仍有一定的局限性。

    用php编写低执行级别的代码、执行密集型任务一般是不切实际的,因为它太慢了。

    而QB扩展克服了PHP的这个弱点。它通过翻译Zend的操作码并在静态类型的虚拟机中执行,大幅度地提升了PHP的性能。

    这种牛逼的技能可以让PHP程序员更多地做爱做的事情,比如说复杂的像素级的图像处理。”

    QB还给了一个性能测试图表:

    "The following graph shows the time required to calculate the CRC-32 checksum of 10meg of data:"

    立竿见影,性能提升100倍,看上去确实很暴力!

    除了QB,还有其他的,比如非死不可的https://github.com/facebook/hiphop-php

  • 相关阅读:
    oracle语法
    cin.clear()、cin.sync()
    Intellij Idea Spring Boot 热部署
    navicat_premium_x64最新版安装说明
    激活navicat premium12
    时间戳Unix和时间之间的转换
    排序算法-- 大总结
    The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
    final
    static
  • 原文地址:https://www.cnblogs.com/liangxiaofeng/p/5115047.html
Copyright © 2020-2023  润新知