久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      PHP生命周期及fpm的運(yùn)作方式

      PHP生命周期及fpm(FastCGI進(jìn)程管理器)的運(yùn)作方式

      PHP在web方式中如何改了文件就立即生效的,重要的幾個(gè)概念:

      ● sapi: 可以簡(jiǎn)單的理解為php引擎對(duì)外的一個(gè)統(tǒng)一接口,使得php可以和外部程序進(jìn)行交互

      ● php的生命周期中關(guān)鍵四個(gè)調(diào)用: MINT -> RINT -> RSHUTDOWN -> MSHUTDOWN

      ● fpm: fastcgi進(jìn)程管理器

      fpm方式的流程就是:

      fpm通過(guò)sapi接口與php進(jìn)程交互

      1.fpm啟動(dòng)會(huì)調(diào)用各擴(kuò)展的MINT方法,進(jìn)行一些數(shù)據(jù)初始化(長(zhǎng)駐內(nèi)存)

      2.每個(gè)請(qǐng)求過(guò)來(lái),先會(huì)執(zhí)行RINT對(duì)單個(gè)請(qǐng)求行一個(gè)初始化

      3.執(zhí)行php腳本(在沒(méi)有緩存opcode的情況下,這里的php腳本是動(dòng)態(tài)執(zhí)行的,所以更新php腳本后,會(huì)執(zhí)行新的php腳本,詳情不在這里敘述)

      4.執(zhí)行RSHUTDOWN方法

      5.如果你要停止fpm了,才會(huì)執(zhí)行MSHUTDOWN

      fpm對(duì)每個(gè)請(qǐng)求的處理都是一直在在重復(fù)執(zhí)行 2~4步,在第三步中,php的腳本是動(dòng)態(tài)執(zhí)行的,由于每次都要執(zhí)行一次php腳本,而每次php腳本都要有一個(gè)把php文件翻譯成opcode的流程(比較耗時(shí)), 于是就產(chǎn)生的opcache工具。

      opcache

      直接把php翻譯后的opcode代碼樹(shù)保存到共享內(nèi)存中,以便直接使用,從而減少每次都把php翻譯成opcode的開(kāi)銷(xiāo)。

      opcache的問(wèn)題: 按照他的描述,修改了php文件,并不能立即被更新。

      opcache的解決方案: 有一個(gè)配置來(lái)設(shè)置隔多長(zhǎng)時(shí)間檢測(cè)文件是否更新了,從而有機(jī)會(huì)在第二步重新來(lái)reload相關(guān)的文件。

      當(dāng)然,直接reload fpm,從而達(dá)到php熱更新的效果(opcache擴(kuò)展可以在第四步把相關(guān)的opcode cache給清空)。

      圖示

      PHP生命周期及fpm的運(yùn)作方式

      贊(0)
      分享到: 更多 (0)
      ?
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)