站長資訊網
        最全最豐富的資訊網站

        PHP生命周期及fpm的運作方式

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

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

        ● sapi: 可以簡單的理解為php引擎對外的一個統一接口,使得php可以和外部程序進行交互

        ● php的生命周期中關鍵四個調用: MINT -> RINT -> RSHUTDOWN -> MSHUTDOWN

        ● fpm: fastcgi進程管理器

        fpm方式的流程就是:

        fpm通過sapi接口與php進程交互

        1.fpm啟動會調用各擴展的MINT方法,進行一些數據初始化(長駐內存)

        2.每個請求過來,先會執行RINT對單個請求行一個初始化

        3.執行php腳本(在沒有緩存opcode的情況下,這里的php腳本是動態執行的,所以更新php腳本后,會執行新的php腳本,詳情不在這里敘述)

        4.執行RSHUTDOWN方法

        5.如果你要停止fpm了,才會執行MSHUTDOWN

        fpm對每個請求的處理都是一直在在重復執行 2~4步,在第三步中,php的腳本是動態執行的,由于每次都要執行一次php腳本,而每次php腳本都要有一個把php文件翻譯成opcode的流程(比較耗時), 于是就產生的opcache工具。

        opcache

        直接把php翻譯后的opcode代碼樹保存到共享內存中,以便直接使用,從而減少每次都把php翻譯成opcode的開銷。

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

        opcache的解決方案: 有一個配置來設置隔多長時間檢測文件是否更新了,從而有機會在第二步重新來reload相關的文件。

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

        圖示

        PHP生命周期及fpm的運作方式

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 久久久久亚洲精品中文字幕| 在线人成精品免费视频| 精品人无码一区二区三区| 国产精品无码永久免费888| 精品乱码久久久久久久| 香蕉国产精品麻豆亚洲欧美日韩精品自拍欧美v国 | 精品国产一区二区22| 久久国产成人精品麻豆| 精品无码国产一区二区三区AV | 无码人妻精品一区二区三区99仓本| 国产精品偷窥熟女精品视频| 精品视频在线免费观看| 国产麻豆精品久久一二三| 亚洲精品你懂的在线观看| 四虎国产精品永久在线看| 国产亚洲精品免费视频播放| 98精品国产自产在线XXXX| 久久99国产精品久久99果冻传媒| 国精无码欧精品亚洲一区| 少妇人妻偷人精品无码视频新浪| 亚洲精品动漫免费二区| 欧美精品一区二区在线精品 | 国内精品久久久久久久coent| 日韩精品一区二区三区大桥未久| 99精品全国免费观看视频..| 国产精品无码午夜福利| 欧美精品VIDEOSSEX少妇| 一本久久a久久精品vr综合| 西瓜精品国产自在现线| 亚洲精品乱码久久久久久蜜桃| 麻豆精品国产自产在线观看一区| 久久久亚洲精品蜜桃臀| 欧美精品黑人粗大| 日韩精品一区二区午夜成人版 | 精品人妻系列无码天堂| 精品无码人妻一区二区三区 | 尤物TV国产精品看片在线| 夜夜高潮夜夜爽国产伦精品| 老年人精品视频在线| 蜜桃麻豆www久久国产精品| 亚洲精品无码激情AV|