百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

《PHP》PHP7性能提升之后的思考(php性能差)

liuian 2025-03-19 00:01 28 浏览

时下不少人拿PHP7的高性能与HHVM来做比较,那么问题来了:随着PHP7性能的提升,我们能预测出未来PHP这门语言会用PHP写出来么?最经典的实例就是PyPy,这是一个用RPython(Python的一个子集)写出来的Python解释器和实时编译器。本文由PHP100中文网编译,转载请看文末的转载要求,谢谢合作!

时下不少人拿PHP7的高性能与HHVM来做比较,那么问题来了:随着PHP7性能的提升,我们能预测出未来PHP这门语言会用PHP写出来么?

Mattsah的观点:

对解释型语言来说,有用语言本身来重写这门语言的其他实例么?我认为即使有这样的实例,在这个环境下,这门语言的某些部分必定是不可用的。

Otterfan:

最经典的实例就是PyPy,这是一个用RPython(Python的一个子集)写出来的Python解释器和实时编译器。

Mattsah:

虽然对Python不是很熟悉,但我不得不考虑下(如有误欢迎更正),这样一来它的动态性能或者说某些特性是不是会受到限制?

Otterfan:

实际上并没有。它基本上能与Python 2.7.8和Python 3.2.5兼容,甚至它有时候比规范的Python(CPython)运行的还要快。

实际上的过程是这样的:Rpython通过PyPy的RPython工具链被翻译成C版本,然后这个C版本被编译为二进制机器码,接着用户层的Python就会运行在这个二进制机器码上。你当然也可以在规范的CPython解释器之上来运行PyPy解释器,不过这样子PyPy会运行的很慢。

PyPy同样也是一个实时编译器,这才是PyPy通常能产生出甚至比CPython还要快的代码的真正原因,代价只是启动的时候稍微有点延迟。PHP则不会有像Python Web开发的这个缺点,因为Python Web应用是一次性就全部启动并开始运行,而不是像PHP一样响应每个请求才开始逐步启动。

Chippiewall的观点:

你不可能在没有一个解释器来运行的前提下写出一个解释型语言的解释器。

Ircmaxell的评论:

这个观点严格意义上是不对的。

另外更正一点,PHP并不是一门解释型语言,而是一门编译型语言。

明白了这一点,就很不一样了。是的,编译器并不会产生出原生的机器码,但还是存在这么一个编译器的。并且虚拟机使用的每个单独的操作在理论上都会被产生的机器码所代替。看看Zend’s “JIT”编译器吧,它根本就不是一个实时编译器,而是一个AOT编译器。很准确地说,它能产生出原生的机器码而不是虚拟机代码(但有相同的语义)。

所以如果拿一个用PHP(Recki-CT或PHPPHP)写的编译器,我们是能够用它来编译自身的。这就意味着,只要我们引导它一次,我们就不再需要“编译器”(虚拟机)了。

所以,Chippiewall的观点是不对的。

=========公众号:春树镇

讨论研究:互联网技术,PHP开发,网站建设,web设计,小说,电影

相关推荐

ctrl加谁是截图(ctrl和什么键可以截图)

第一种:Ctrl+PrScrn使用这个组合键截屏,获得的是整个屏幕的图片第二种:Alt+PrScrn这个组合键截屏,获得的结果是当前窗口的图片第三种:打开qq,使用快捷键Ctrl+...

技嘉主板bios设置启动顺序(技嘉主板bios设置启动顺序怎么设置)

启动顺序设置方法如下:1、重启电脑连续按[DEL]键进入BIOS设置,按DEL进入BIOS设置。2、按键盘方向键右键切换到BOOT选项,将windows10功能设置为"其它操作系统"...

目前台式电脑主机怎么选(台式主机选择)
目前台式电脑主机怎么选(台式主机选择)

每个人对电脑的性需要不同,因此根据自己家的家庭需要,选择合适的电脑即可。以下简单说明:1,双核处理器+2G内存+集成显卡+机械硬盘。性能满足上网、看电影、聊天、办公、玩象棋之类的小游戏。价格在2000以内可以买到;2,四核处理器+4G内存+...

2026-01-14 12:05 liuian

台式电脑如何用u盘重装系统(台式电脑如何用u盘重装系统应用)

1、重启电脑并进入BIOS;2、在BIOS中设置启动顺序,优先从U盘启动;3、从U盘启动,进入安装界面;4、选择安装语言、时区和键盘设置;5、选择安装方式,一般选择“清除整个硬盘并安装”;6、配置分区...

宏基笔记本电脑怎么恢复出厂设置
  • 宏基笔记本电脑怎么恢复出厂设置
  • 宏基笔记本电脑怎么恢复出厂设置
  • 宏基笔记本电脑怎么恢复出厂设置
  • 宏基笔记本电脑怎么恢复出厂设置
stop0x0000007b蓝屏(stop0X0000007b蓝屏,修改注册表)
stop0x0000007b蓝屏(stop0X0000007b蓝屏,修改注册表)

步骤/方式1将电脑送到当地的维修店步骤/方式2然后将师傅维修一下蓝屏的问题当电脑启动蓝屏出现错误代码0x0000007b时,首先我们将电脑重启,在开机时不停按启动热键进入到bios设置页面,进入页面后找到“IntegratedPeriphe...

2026-01-14 11:21 liuian

电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
怎样设置默认打印机(打印机设置彩色打印在哪里设置)

步骤如下:1.单击Windows“开始”菜单,指向“设置”,单击“打印机”,打开“打印机”窗口。2.右键单击打印机图标,系统弹出快速菜单,单击其中的“设为默认值”。如果“打印机”窗口没有当前使用的打印...

机械硬盘坏了能修吗(机械硬盘损坏可以修复吗)

硬盘修复是很多人都可能会面临的难关。硬盘是计算机上最重要的组成部分,是计算机上的数据存储设备,因此一旦硬盘发生故障,用户很可能会丢失所有数据。况且硬盘是机械设备,有一定的使用寿命,长时间使用出现故障...

win7正版怎么下载(我告诉你怎么下载win7)

如题,题主想在红警之家下载红警,很简单,可以用迅雷下载软件下载,下载以后用解压软件解压就行了,但是红警这款软件在winxp系统下,是最理想的,7系统下面会出现闪退的情况。下载很容易的,闪退的时候,设置...

电脑关机脚本bat命令(win10关机bat脚本)

bat关机命令需要使用文本文档。使用文本文档制作bat关机命令步骤如下所示:1、在电脑桌面空白处点击鼠标右键。2、在鼠标右键菜单中,选择新建文本文档。3、点击打开文本文档。4、在新建文本文档中输入关机...

fat32格式是什么意思(u盘fAT32格式是什么意思)

是一种分区格式。这种格式使用32位文件分配表,大大提高了磁盘的管理能力,打破了每个分区只有4GB的FAT16限制。对于使用FAT32文件系统的每个逻辑盘内部空间又可划分为三部分,依次是引导区(BOO...

手机系统更新软件(手机系统更新软件不更新会怎样)
手机系统更新软件(手机系统更新软件不更新会怎样)

第一步:打开苹果手机的设置,点击“通用”选项进入。第二步:选择“软件更新”选项进入第三步:在软件更新界面,如果有新的更新,点击“下载并安装”即可!应用商店里一键更新。在手机软件里,为了更新最新版本可以进软件商店里面找一下,更新点一下,然后它...

2026-01-14 09:37 liuian

联想小新如何重装系统(联想小新重装系统怎么操作)

联想小新重装系统,方法∶在关机状态下,按下电脑的一键恢复按钮(需确保笔记本屏盖在打开状态)。首先找到按键孔,用针对准插孔,捅一下,电脑启动,进入启动选择界面,选择systemrecovery,按回车...

桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复