[编程开发] PHP性能已经堪比rust,几乎是golang的两倍,且能编译PHP脚本为独立的二进制可执行文件。

[复制链接]
fhqitx 发表于 2023-10-4 17:57:12|来自:北京 | 显示全部楼层 |阅读模式
PHP性能已经堪比rust,几乎是golang的两倍。
俄罗斯大佬搞了个编译器kphp( https://github.com/VKCOM/kphp )能把php编译成可执行文件,编译后的php性能堪比rust,比golang更快。
因为php7.4之后 php有强类型模式了,然后重度使用php的俄罗斯人,把强类型php编译成c++利用c++的RAII代替GC保证内存安全,再把c++编译成二进制可执行文件。
这获得的性能比以前facebook hack那种由于要兼容弱类型php代码方式强多了。
作者还给了个使用kphp编写的sdl游戏,我fork后修复了下路径让它更容易运行( https://github.com/zjsxwc/kphp-game )



在性能上,计算第 300000 个素数的值时,使用kphp耗时5.3秒,接近rust耗时4.8秒,几乎是golang耗时10.4秒的两倍。
kphp算第30万个素数源码http://paste.ubuntu.com/p/FfZx5bjR3f/
golang算第30万个素数源码https://paste.ubuntu.com/p/MSNWkJTvz6/
rust算第30万个素数源码https://paste.ubuntu.com/p/dMpwJ6HdY9/
全部回复20 显示全部楼层
猪头他爸 发表于 2023-10-4 17:57:58|来自:北京 | 显示全部楼层
厉害啊
springz 发表于 2023-10-4 17:58:45|来自:北京 | 显示全部楼层
玩具
aiway1011 发表于 2023-10-4 17:59:36|来自:北京 | 显示全部楼层
编译成C++的,成熟程度比RPython和Cython差远了,Cython可以用任何Python代码,RPython甚至可以做metatrace JIT。应该还不如Facebook早期的那个把PHP编译成C++的东西,有Hacklang的时候搞这玩意不知道有啥意义。
广告商 发表于 2023-10-4 17:59:48|来自:北京 | 显示全部楼层
你这plc写的好好的转码农[捂脸]
ydnx 发表于 2023-10-4 18:00:09|来自:北京 | 显示全部楼层
俄罗斯人真头铁
shenyuan266 发表于 2023-10-4 18:01:06|来自:北京 | 显示全部楼层
把二八自行车改装成机车?这玩意有啥折腾的,也不怕散架。
lihanyue 发表于 2023-10-4 18:01:56|来自:北京 | 显示全部楼层
但俄罗斯的 VK公司 已经靠这个提供技术支持在盈利了
卧薪尝胆 发表于 2023-10-4 18:02:41|来自:北京 | 显示全部楼层
我测过用pypy,同一台机器上耗时10秒和golang性能差不多。
xbj 发表于 2023-10-4 18:03:37|来自:北京 | 显示全部楼层
真有这种高性能的场景需求  直接写 C++, rust不好吗  非要用php折腾
123下一页
发帖

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则