PHP7 JIT 相关开源项目(JPHP)
PHP 7.1 是否达到了最佳性能?
鸟哥惠新宸答:不能说最,别看 PHP 7.1 现在这么快,但相比其它语言,在某些场景下,还是有差距的。这跟它天然的像动态、符号表、间接引用等特性有很大关系。PHP 7.1 相比 7.0 来说,做的最大的工作,就是一个类型推断系统加一个类型相关的中间代码执行引擎。这个不是新的工作,在2013年我们做 PHP 5.5 的 JIT 的时候类型推断系统已经做出来了,但当时把这个项目停掉了,现在把那项工作其中的类型推断部分拿过来,放到 7.1 。基于这个类型推断未来还可以做更多的东西。PHP 7.1 更多的是对 7.0 未完成的工作的一个补充。 详情请移步:【开源访谈】鸟哥惠新宸:PHP 7.1 的新特性我并不是很喜欢
本人找了一个 PHP JIT 相关开源项目JPHP
了解一下
JPHP是使用Java VM的PHP的新实现。它支持PHP语言(7.0+)的许多功能。
它是如何工作的?JPHP是一个编译器javac
,它将PHP源代码编译成JVM字节码,然后可以在Java VM上执行结果。
- 官方网站:j-php.net
在生产中
我们为初学者开发一个新的IDE,比如Game Maker
或Scirra Construct
。它基于JPHP,JavaFX,Java 8,Gradle,并允许为Linux,Windows和Mac(将来可能是Android和其他平台)创建桌面游戏和应用程序。项目名称是DevelNext
(github.com/jphp-compil…),项目的当前状态和版本是BETA。该项目尚未被英文本地化。
目标
JPHP不是Zend PHP引擎或Facebook HHVM的替代品。我们不打算为JPHP实现zend运行时库(例如Curl,PRCE等)。
我们的项目于2013年10月开始。原因如下:
- 能够在PHP中使用Java库
- 通过JIT和JVM升级性能
- 用更好的运行时库替换Zend PHP的丑陋的运行时库。
- 不仅在网络上使用PHP语言
- 另外:字符串和线程的Unicode
特征
- PHP 5.6+(以及PHP 7.0和7.1中的许多语言功能)。
- JIT(约2.5倍PHP 5.6,PHP 7约1.1倍),Optimizer - 性能基准
- 在PHP代码中使用java库和类。
- Unicode字符串(UTF-16,就像Java一样)
- 线程,套接字,环境架构(比如runkit zend扩展中的沙盒对象)。
- GUI(摇摆或JavaFX)
- 嵌入式缓存系统的类和功能
- 可选的热重新加载类和功能
- 能够在Android操作系统上使用 (还没)
JPHP从PHP 7.0,7.1支持什么?
- 上下文敏感Lexer。
- 修复list()行为不一致。
- Throwable接口。
- 组使用声明。
- 标量和可选类型提示。
- 返回类型提示。
- 无效和可重写类型提示。
- 统一变量语法(部分)。
- 空合并运算符
??
。 - 多个catch语法。
- 短列表语法。
- 列表键。
- 类常量可见性修饰符。
- 太空船操作员
<=>
。 - 发电机代表团
yield from
。 - 发生器返回表达式。
intdiv()
功能。
文档
- Wiki在这里:阅读
- 你可以在这里找到最新的api文档:http : //jphp-docs.readthedocs.org/
- 为了对api文档作出贡献,你可以分叉
docs
项目:https://github.com/jphp-compiler/docs
入门(Hello World)
j-php.net/wiki/Gettin…
热跑基准?
// via jphp
./gradlew bench// via php
php -f bench/src/bench.php复制代码
从源代码构建SNAPSHOT
使用gradle install
来构建和安装jphp模块和库到本地mavel库。在此之后,您可以在您的项目中使用jphp作为maven依赖项。
org.develnext.jphp:jphp-<module>:<version>-SNAPSHOT
原文:github.com/jphp-compil…
转载于:https://juejin.im/post/5aa770585188255582520778
PHP7 JIT 相关开源项目(JPHP)相关推荐
- 【radar】毫米波雷达相关开源项目代码汇总(工具箱、仿真、2D毫米波检测、融合、4D毫米波检测、分割、SLAM、跟踪)(6)
[radar]毫米波雷达相关开源项目代码汇总(工具箱.仿真.2D毫米波检测.融合.4D毫米波检测.分割.SLAM.跟踪)(6) Toolbox pymmw https://github.com/m6c ...
- 开源作者在行动:疫情防控相关开源项目推荐
开源作者在行动:疫情防控相关开源项目推荐: https://blog.gitee.com/2020/02/03/ncov-open-source-project/
- asp.net mvc相关开源项目推荐
原文地址为: asp.net mvc相关开源项目推荐 asp.net mvc ctp版本发布不到一个月时间,在社区出现了丛多的优秀开源项目,社区的活跃性非常高哦,前一段时间园子里也引发了MVC和Web ...
- 关键词提取自动摘要相关开源项目,自动化seo
关键词提取自动摘要相关开源项目 GitHub - hankcs/HanLP: 自然语言处理 中文分词 词性标注 命名实体识别 依存句法分析 关键词提取 自动摘要 短语提取 拼音 简繁转换 https: ...
- 不明觉厉!Gitee大神们的算法/数学相关开源项目推荐
现在的大厂面试,算法似乎已经成为了必考项目.当大家的业务水平相近,谁的数学与算法基础更好,谁可能就会获得更好的机会.Gitee 上也有一些数学算法的大牛,今天就为大家分享他们的开源项目,希望能给正在学 ...
- (转)iOS开发资源:推送通知相关开源项目--PushSharp、APNS-PHP以及Pyapns等
PushSharp (github) PushSharp是一个实现了由服务器端向移动客户端推送消息的开源C#库,支持 iOS (iPhone/iPad APNS). Android (C2DM/GC ...
- 【搜索引擎基础知识3】搜索引擎相关开源项目及网站
部分内容转自:http://blog.csdn.net/hguisu/article/details/8024799 一. 开源项目 apache lucene是apache下一个著名的开源搜索引擎内 ...
- 大数据相关开源项目汇总
调度与管理服务 **Azkaban **是一款基于Java编写的任务调度系统任务调度,来自LinkedIn公司,用于管理他们的Hadoop批处理工作流.Azkaban根据工作的依赖性进行排序,提供友好 ...
- ChatGPT 以及相关开源项目体验
本月初,ChatGPT 以惊人的速度问世,在技术圈中引起了广泛讨论.在 GitHub 上近期还诞生了多个 ChatGPT 相关的开源项目,数量之多令人瞠目结舌,甚至 ChatGPT 独霸了大半个 Gi ...
最新文章
- 【廖雪峰Python学习笔记】高阶函数
- 毕业设计:文献参考(十三)
- 分布式队列编程优化篇
- 移动前端适配方法总结
- image控件的 PostBackUrl绑定Eval
- 网友评荣耀V30:同价位无对手 除了双模5G和价格还有哪些原因
- 大数据_Hbase-shell命令_操作hbase_完成对表的增删改查---Hbase工作笔记0005
- mysql脚本执行中文乱码_MySQL从命令行导入SQL脚本时出现中文乱码的解决方法
- 编写shell管理脚本(二)
- 烧脑又过瘾!这个被严重低估的学习方法,看完瑟瑟发抖!
- 【论文阅读】利用深度自编码器神经网络预测药物相似度
- day21_Lambda表达式、函数式接口
- 通过注册表添加受信任站点
- CTF密码学——初探
- 《Unity游戏优化》笔记(4)[21/02/05_周五][P29_46]
- uva10534 hdu2198 双向LIS问题
- 深层循环神经网络(DRNN)
- 【操作系统概念-作业1】Introduction
- Ubuntu18.04安装NVIDIA驱动以及cuda出现的问题
- 程序员 10个 堪称神器的学习网站