是什么让这艘航母一贯奋进前行,答案便是它的超级引擎发动机—zend engine。
作为一艘巨轮,zend engine一贯全速推进着php的前行,可以说如果没有zend engine,恐怕PHP也会像泰坦尼克一样沉没了。
最强大的发动机
如果说航母跑得快,全靠马力带,那么zend engine便是最强劲的马达发动机,在它的牵引下,php航母始终未落下过。
我们都知道php是脚本阐明性措辞,这种措辞的实质导致它的实行速率天然就会比编译行的速率慢,那么如何才能缩小这个差距呢,那便是加快阐明的速率,如何加快阐明的速率,这是php这艘航母在航行的途中碰着的最大问题,这个问题我们现在已经知道答案了,那便是它引入了zend engine这个马达,它通过利用编译和实行双重加速的事理,使得php航速大幅度提升。
许多人可能会有疑问,不是阐明型措辞吗,怎么还有编译呢?
这里我们就要对阐明型措辞做个大略先容,所谓阐明型措辞是相对编译型措辞来说的,它不经由编译成机器码,直接由阐明器进行阐明和实行,也就说它的核心在于阐明器,阐明器的存在,让阐明型措辞可以不经由编译就直接运行,看似阐明型措辞少了一道工序,实则是它须要每次运行都进行阐明,也便是效率反而降落了。
zend engine事理zend engine便是我们上面提到的阐明器,它实质上便是一个虚拟机,也便是说我们的php程序便是运行在zend engine这个虚拟机里面的。只不过我们的php程序不是直接运行在它的上面,而是我们的php opcode,也便是我们常常提到的中间码是由虚拟机阐明实行的。
zend本身是由c措辞写的,因此效率方面不须要担心。我们须要考虑的便是zend如何加速编译和实行php的速率,我们知道php7的性能提升了1倍不止,其核心事理便是zend加快了编译phpcode的速率。
未来php航母已经运行了25年了,虽然它目前在航海史上正在被java,python,go等追赶并超越着,但是在web海疆里,php从未失落去它的地位,纵然是在本日,web领域上面php依然霸占超过50%的份额,不过这个份额正在减少,接下来就看zend如何再次提速了。
zend经由1代,2代,3代的发展,速率一次比一次快,它的下一代会给我们一个若何的速率我们不可预知,但是我们知道,作为超级引擎的zend从未让我们失落望过。
期待zend engine4的出身。