久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放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 是什么?

      異步 PHP 是什么?

      同步編程與異步編程的區(qū)別

      在討論異步PHP的優(yōu)點(diǎn)之前,讓我們快速回顧一下同步編程模型和異步編程模型之間的區(qū)別。同步代碼是逐行順序執(zhí)行的。必須先完成前面的任務(wù),然后才能開(kāi)始另一個(gè)任務(wù)。在異步代碼中,可以同時(shí)完成多個(gè)任務(wù),這可以大大提高應(yīng)用程序性能和用戶體驗(yàn)。

      什么是同步PHP?

      同步PHP是指使用同步模型編寫的PHP代碼。PHP最初是為了支持同步開(kāi)發(fā)而創(chuàng)建的,因此大多數(shù)PHP開(kāi)發(fā)人員習(xí)慣于使用該語(yǔ)言編寫同步代碼。使用Apache的mod_php或使用Apache或Nginx的php-fpm進(jìn)行Prefork。

      你在尋找PHP的基礎(chǔ)教程嗎?查看此 blog, PHP開(kāi)發(fā)基礎(chǔ):什么是PHP,為什么如此流行,以及PHP的優(yōu)點(diǎn)是什么?。

      什么是異步PHP?

      異步PHP是指使用異步模型編寫的PHP代碼。通過(guò)使用諸如Swoole之類的擴(kuò)展,或諸如ReactPHP之類的PHP框架,您可以使PHP使用事件循環(huán)異步地接受請(qǐng)求和響應(yīng)。

      同步和異步PHP編程的主要區(qū)別是什么呢?

      在許多應(yīng)用程序中,CPU在I / O任務(wù)期間處于空閑狀態(tài)的時(shí)間很多。異步PHP思路是通過(guò)使非阻塞I / O任務(wù)在后臺(tái)運(yùn)行,在CPU等待完成I / O所需的數(shù)據(jù)和指令時(shí)處理其他任務(wù),充分利用所有可用的CPU周期來(lái)執(zhí)行其他任務(wù)。 同步PHP,CPU將僅處理I / O任務(wù)。當(dāng)前任務(wù)完成后,繼續(xù)處理隊(duì)列中的下一個(gè)任務(wù)。

      與同步PHP編寫的應(yīng)用程序相比,使用異步PHP可以實(shí)現(xiàn)閃電般的性能.。在一些基準(zhǔn)測(cè)試中, 相較于在同步代碼中使用類似 php-fpm的進(jìn)程加速器,使用Swoole啟用異步PHP可以將吞吐量提升100倍。這就是為什么php-fpm不支持使用類似Websockets協(xié)議進(jìn)行異步實(shí)時(shí)通信的原因。

      你應(yīng)該使用哪一個(gè)PHP?

      與大多數(shù)有關(guān)運(yùn)行、web服務(wù)器和一般的編程問(wèn)題一樣,不同的案例會(huì)決定是使用同步PHP還是異步PHP。要使用異步PHP,你的代碼必須支持它。PHP開(kāi)發(fā)人員習(xí)慣使用的大多數(shù)的擴(kuò)展都會(huì)阻塞進(jìn)程的調(diào)用(也稱為I/O阻塞),這使得異步模型不可實(shí)現(xiàn)。

      例如,要利用Swoole,當(dāng)遇到一個(gè)I/O請(qǐng)求調(diào)用時(shí),它需要將該調(diào)用發(fā)送到后臺(tái),然后繼續(xù)執(zhí)行下一條指令。當(dāng)I/O調(diào)用返回?cái)?shù)據(jù)時(shí),Swoole需要將控制權(quán)歸還給已經(jīng)發(fā)送到后臺(tái)的I/O調(diào)用,以便它可以控制請(qǐng)求數(shù)據(jù)給進(jìn)程。重寫你的代碼去支持異步進(jìn)程可能需要一些重構(gòu)才能工作。但是,將來(lái)你節(jié)省下來(lái)的時(shí)間可能是值得的。

      開(kāi)始異步PHP項(xiàng)目

      由于你編寫的代碼方式要支持異步進(jìn)程,你必須利用一個(gè)可以這么做的項(xiàng)目。這里有我們的前三項(xiàng)建議:

      • Swoole – 協(xié)同PHP異步編程框架。

      • Reactphp – PHP的事件驅(qū)動(dòng)、非阻塞 I/O。

      • Amphp – PHP非阻塞并發(fā)框架。

      推薦教程:《PHP》

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