内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

關于php的運行模式介紹-創(chuàng)新互聯(lián)

php的運行模式有哪些?為了大家讓大家更加了解php的運行模式,小編給大家總結了以下內容,一起往下看吧。關于php的運行模式介紹

成都創(chuàng)新互聯(lián)公司成立十余年來,這條路我們正越走越好,積累了技術與客戶資源,形成了良好的口碑。為客戶提供成都網(wǎng)站設計、網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)頁設計、域名注冊、網(wǎng)絡營銷、VI設計、網(wǎng)站改版、漏洞修補等服務。網(wǎng)站是否美觀、功能強大、用戶體驗好、性價比高、打開快等等,這些對于網(wǎng)站建設都非常重要,成都創(chuàng)新互聯(lián)公司通過對建站技術性的掌握、對創(chuàng)意設計的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進步。

PHP的運行模式:

PHP兩種運行模式是WEB模式、CLI模式。無論哪種模式,PHP工作原理都是一樣的,作為一種SAPI運行。

1、當我們在終端敲入php這個命令的時候,它使用的是CLI。

它就像一個web服務器一樣來支持php完成這個請求,請求完成后再重新把控制權交給終端。

2、當使用Apache或者別web服務器作為宿主時,當一個請求到來時,PHP會來支持完成這個請求。一般有:

  • 多進程(通常編譯為apache的模塊來處理PHP請求)

  • 多線程模式

簡要的執(zhí)行過程:

1、PHP是隨著Apache的啟動而運行的;

2、PHP通過mod_php5.so模塊和Apache相連(具體說來是SAPI,即服務器應用程序編程接口);

3、PHP總共有三個模塊:內核、Zend引擎、以及擴展層;

4、PHP內核用來處理請求、文件流、錯誤處理等相關操作;

5、Zend引擎(ZE)用以將源文件轉換成機器語言,然后在虛擬機上運行它;

6、擴展層是一組函數(shù)、類庫和流,PHP使用它們來執(zhí)行一些特定的操作。比如,我們需要MySQL擴展來連接MySQL數(shù)據(jù)庫;

7、當ZE執(zhí)行程序時可能會需要連接若干擴展,這時ZE將控制權交給擴展,等處理完特定任務后再返還;

8、最后,ZE將程序運行結果返回給PHP內核,它再將結果傳送給SAPI層,最終輸出到瀏覽器上。

運行PHP的幾個階段:

SAPI運行PHP都經過下面幾個階段:

1、模塊初始化階段(Module init)     :

即調用每個擴展源碼中的的PHP_MINIT_FUNCTION中的方法初始化模塊,進行一些模塊所需變量的申請,內存分配等。

2、請求初始化階段(Request init)  :

即接受到客戶端的請求后調用每個擴展的PHP_RINIT_FUNCTION中的方法,初始化PHP腳本的執(zhí)行環(huán)境。

3、執(zhí)行PHP腳本

4、請求結束(Request Shutdown) :

這時候調用每個擴展的PHP_RSHUTDOWN_FUNCTION方法清理請求現(xiàn)場,并且ZE開始回收變量和內存。

5、關閉模塊(Module shutdown)     :

Web服務器退出或者命令行腳本執(zhí)行完畢退出會調用擴展源碼中的PHP_MSHUTDOWN_FUNCTION 方法

各種情況下的SAPI生命周期

1. 單進程SAPI生命周期。(CGI)

CLI/CGI模式的PHP屬于單進程的SAPI模式。這類的請求在處理一次請求后就關閉。也就是說每次請求都會重復這幾個環(huán)節(jié): 開始 - 請求開始 - 請求關閉 - 結束 ??梢钥吹綌U展的初始化花費了很多資源。

2. 多進程SAPI生命周期。(MPM的perfork方式)

通常PHP是編譯為apache的一個模塊來處理PHP請求(mod_php)。Apache一般會采用多進程模式, Apache啟動后會fork出多個子進程(apache里可以指定開始fork出來的進程數(shù))。每個進程的內存空間獨立,每個子進程剛被fock出來都會經過開始和結束環(huán)節(jié)。

關于php的運行模式介紹

3. 多線程的SAPI生命周期。(FastCGI或者MPM的work方式里的單個進程)

多線程模式和多進程中的某個進程類似,在這種模式下,只有一個服務器進程在運行著,但會同時運行很多線程,這樣可以減少一些資源開銷,向Module init和Module shutdown就只需要運行一遍就行了,一些全局變量也只需要初始化一次,因為線程獨具的特質,使得各個請求之間方便的共享一些數(shù)據(jù)成為可能。

關于php的運行模式介紹

看完上訴內容,你們對關于php的運行模式介紹大概了解了嗎?如果想了解更多,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道哦!

當前文章:關于php的運行模式介紹-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://www.rwnh.cn/article34/gcose.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序網(wǎng)站設計公司、網(wǎng)站內鏈網(wǎng)頁設計公司、網(wǎng)站改版網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設
门源| 郁南县| 政和县| 海宁市| 海阳市| 都匀市| 河池市| 仙居县| 南康市| 新绛县| 米易县| 淄博市| 克山县| 祁门县| 虎林市| 雷州市| 海丰县| 金湖县| 淮安市| 濉溪县| 邯郸市| 图片| 康乐县| 峨边| 丹东市| 马公市| 阳新县| 新民市| 安泽县| 永安市| 莎车县| 枞阳县| 凤凰县| 龙海市| 肃宁县| 含山县| 德州市| 高平市| 莱芜市| 涞源县| 榕江县|