zend-opcache - Apakah perbezaan antara opcache php dan php jit baru-baru ini?
我想大声告诉你
我想大声告诉你 2017-06-26 10:49:19
0
2
1245

opcache digunakan untuk cache opcode yang dijana oleh kompilasi enjin zend, jadi tidak perlu menyusunnya lain kali.
Saya baru-baru ini mendengar tentang php jit dan melihat konsep jit

Kompilasi JIT (kompilasi just-in-time), iaitu kompilasi just-in-time, dalam erti kata yang sempit bermaksud bahawa sekeping kod tertentu disusun apabila ia akan dilaksanakan buat kali pertama, dan kemudian dilaksanakan secara langsung tanpa penyusunan Ia adalah kes khas penyusunan dinamik.

Apakah perbezaan antara jit php dan opcache?

我想大声告诉你
我想大声告诉你

membalas semua(2)
黄舟

源代码(人认识)->字节码(解释器认识)->机器码(硬件认识)
来看下PHP的执行流程,假设有个a.php文件,不启用opacache的流程如下:
a.php->经过zend编译->opcode->PHP解释器->机器码
启用opacache的流程如下
a.php->查找opacache缓存,如果没有则进行zend编译为opcode并缓存->opacode->PHP解释器->机器码
启用jit的流程如下
a.php->编译->机器码
Pada masa hadapan, hanya kod mesin akan dilaksanakan tanpa kompilasi, yang jauh lebih cekap

三叔

Konsep JIT sebenarnya berasal dari Java Di Java, pengkompil JIT ialah proses menyusun kod bait ke dalam kod mesin.

Jika PHP dan Java dipetakan, maka proses penyusunan PHP ke dalam OpCode ialah proses penyusunan Java kepada bytecode, dan secara lanjutan, JIT PHP ialah proses penyusunan OpCode ke dalam kod mesin.

Secara lebih ringkas, program PHP disusun ke dalam OpCode dan kemudian diserahkan kepada penterjemah PHP untuk pelaksanaan Proses ini masih merupakan proses tafsiran dan pelaksanaan. Dan jika disusun ke dalam kod mesin melalui JIT, kecekapan pelaksanaan program boleh dipertingkatkan dengan ketara.

Beberapa bahasa skrip popular​​​sudah mempunyai JIT mereka sendiri, tetapi PHP masih kurang dalam aspek ini. Jadi, nantikan ia, nantikan PHP 8

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan