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
这个太有名,不说了...
PHP如何大幅度提升运行效率? -- 把它编译成机器码!相关推荐
- as 怎么将多个cpp文件代码编译成so_你编写的Java代码是咋跑起来的?
如果你是一名 Java 开发人员,你肯定指定 Java 代码有很多种不同的运行方式.比如说可以在开发工具(IDEA.Eclipse等)中运行,可以双击执行 jar 文件运行,也可以在命令行中运行,甚至 ...
- aspx文件编译成DLL文件的原理
前言 Asp.net不是asp的简单升级,而是微软.Net计划中的一个重要组成部分,它依托.Net的多语言与强大的类库支持,引进了服务端HTML控件与WEB控件,自动处理控件的客户端与服务端的 交互, ...
- 【转载】把aspx文件编译成DLL文件-.NET教程,Asp.Net开发
前言 asp.net不是asp的简单升级,而是微软.net计划中的一个重要组成部分,它依托.net的多语言与强大的类库支持,引进了服务端html控件与web控件,自动处理控件的客户端与服务端的 交互, ...
- python源代码不需要编译成什么-python需要编译么
一个经常听见的问题,那就是:Python是解释型的语言吗?它会被编译吗?这个问题没有想象中那么好回答.和很多人认识世界一样,习惯以一个简单的模型去评判一些事物.而事实上,里面包含了很多很多的细节. 通 ...
- 获得picker选项的当前年月值_如果你用OPPO手机!千万记得开启开发者选项,手机性能大幅度提升...
如果你用OPPO手机!千万记得开启开发者选项,手机性能大幅度提升 用过OPPO手机的用户都知道,手机使用1-2年都会出现卡顿的情况.这也是安卓手机的通病,但也有很多朋友手机使用3年也不会出现卡顿的现象 ...
- matlab win10 gpu加速,win10的Edge浏览器设置GPU硬件加速,大幅度提升浏览器性能
不知道大家对于GPU硬件加速是否有了解,这是现在的浏览器必备的功能,开启后能大幅度提升浏览器的性能,给我们更加顺滑的浏览体验.GPU硬件加速能够利用GPU的图形性能,加速渲染网页中的图像信息. 如果我 ...
- 5款安全无毒大幅度提升办公效率的小软件
今天推荐一些可以大幅度提升办公效率的小软件,安全无毒,下载简单,最重要的是没有广告! 1.办公版QQ--TIM 说到社交沟通,正在上大学的各位,可能还少不了使用QQ来作为通讯工具.相比微信,QQ有一些 ...
- oppo小窗开发Android,如果你用OPPO手机!千万记得开启开发者选项,手机性能大幅度提升...
如果你用OPPO手机!千万记得开启开发者选项,手机性能大幅度提升 用过OPPO手机的用户都知道,手机使用1-2年都会出现卡顿的情况.这也是安卓手机的通病,但也有很多朋友手机使用3年也不会出现卡顿的现象 ...
- VR全景助力健身房品牌升级,大幅度提升用户到店率
随着VR全景的广泛应用,以及行业客户的不断应用开发,VR全景展示已经成为了各大行业发展客户以及行业客户参考的重要技术选择.随着VR全景在各个行业的应用逐渐落地生根,越来越多的商家以及企业开始摒弃传统的 ...
- 人脸识别准确率大幅度提升
根据 NIST 2018年发布的成绩,目前全球最好人脸识别技术水平为千万分之一误报下的识别准确率接近 99%(yitu-001),这意味着受限场景下,在千万分位误报上,人类已经将机器的人脸识别能力推向 ...
最新文章
- php函数默认参数不传值报错,php 关于函数参数的默认值
- phoenix 开发API系列(三)phoenix api 结合数据库
- 可重构人工智能设备展现出智能化前景
- Nature论文爆出千行Python代码Bug,或影响百篇学术论文
- android volley http请求框架
- 三星 原生android,原生Android 4.0 三星GALAXY Nexus评测
- 第四章节 窗体应用(windows应用程序)
- Codeforces Round #468 (Div. 2): E. Game with String
- python经典题库和答案_Python99道经典练习题答案.docx
- android studio不显示标题,Android Studio:活动预览不显示标题栏
- IDL简单读写nc文件
- JS基础知识点大汇总
- 冲击2018年度第一,小米电视靠的是什么
- 从零开始教你搭建资源类赚钱网站(二):项目预算
- win11小鹤双拼改回全拼
- 从入门到精通,看了这篇文章,你离老黑的路就不远了
- 阿里云服务器AMD EPYC Milan 7T83处理器CPU性能详解
- dart和C语言计算CRC32结果不同
- DSPE-PEG-DBCO 磷脂-聚乙二醇-二苯并环辛炔 一种线性杂双官能聚乙二醇化试剂
- 阿里云国际中什么是边缘运算?
热门文章
- SQL with etc获取父节点或子节点总结
- byte转换字符串(string)+字符串转换byte
- sql select 0 字段 某字段是不在指定的表
- Redis Sentinel实现高可用配置
- 在 CentOS7 安装 ELK
- Mac下安装第三方模块报错:‘sqlfront.h‘ file not found的解决办法
- Atitit.java expression fsm 表达式词法分析引擎 v2 qaa.docx
- GIS基础软件及操作(十二)
- 100 计算机网络基础知识
- Java 常用修饰符总结