3 回答

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊
首先說一下對(duì)swoole的理解:披著PHP外衣的C程序。很多PHPer朋友看到swoole提供的強(qiáng)大功能、外界對(duì)其的崇拜便躍躍欲試的安裝、調(diào) 試其demo、編寫新功能,然后興奮的奔走相告。
沒過幾天當(dāng)你按照自己的理解繼續(xù)用swoole時(shí),發(fā)現(xiàn)代碼并沒有按照自己的預(yù)期運(yùn)行,然后開始破口大 罵,什么破東西呀,代碼跟demo基本一樣,為啥運(yùn)行不通呢?什么狗屁work、task、共享內(nèi)存、ipcs、異步,各種問題涌現(xiàn),然后迅速去查官方文 檔,發(fā)現(xiàn)文檔中竟然對(duì)這些并沒有提及,只是簡單的介紹怎么使用,此時(shí)幾乎對(duì)swoole喪失希望。

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超14個(gè)贊
嚴(yán)格來說,zend并不是唯一的選擇,不過,zend是最官方的。另外,Zend Studio和Zend Engine不是同一個(gè)東西,本文中的Zend全部指Zend Engine。
換個(gè)角度講,只要有解析器,寫好的php腳本就是可以執(zhí)行的,而zend引擎與apache之間并沒有絕對(duì)的關(guān)系
實(shí)際上,apahce是調(diào)用了zend對(duì)php腳本進(jìn)行執(zhí)行,然后將執(zhí)行結(jié)果輸出給了瀏覽器
所以所謂cli模式(CommandLine,命令行模式),其實(shí)就是在命令行下直接調(diào)用zend引擎對(duì)php腳本進(jìn)行解析并執(zhí)行,并獲得程序輸出結(jié)果的php腳本執(zhí)行方式。
其實(shí)php也可以作為shell腳本來使用哦,就像bash shell一樣
既然問題講清楚了,在一個(gè)系統(tǒng)中具體怎么操作呢?
本文以CentOS 7.5作為系統(tǒng)環(huán)境,swoole是針對(duì)Linux系統(tǒng)開發(fā)的,windows下并不適用。學(xué)習(xí)swoole的一個(gè)前題是懂得基本的linux系統(tǒng)使用。
當(dāng)安裝好php的時(shí)候,找到php的安裝目錄,如果是默認(rèn)安裝的話,可以試試whereis命令

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
Swoole的優(yōu)勢(shì)
Swoole開源項(xiàng)目就是為了彌補(bǔ)PHP在這些方面的缺陷誕生的。與WordPress這些產(chǎn)品不同,swoole實(shí)際上是一個(gè)網(wǎng)絡(luò)通信和異步io的引擎,一個(gè)基礎(chǔ)庫。
swoole框架相比apache/fpm,主要節(jié)省PHP框架和全局對(duì)象每次請(qǐng)求創(chuàng)建銷毀帶來的性能損耗。
swoole框架給程序員提供了最大的空間,與http請(qǐng)求無關(guān)的全局對(duì)象只需要構(gòu)造一次。程序中還可以對(duì)某些對(duì)象和數(shù)據(jù)進(jìn)行緩存控制
Swoole的未來
PHP可以基于swoole去實(shí)現(xiàn)過去PHP無法實(shí)現(xiàn)的功能。
Swoole為PHP打開了通往另一個(gè)世界的大門。
添加回答
舉報(bào)