這篇文章主要介紹了Hyperf中PHP-FPM和Cli有什么區(qū)別,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)公司技術(shù)團隊十余年來致力于為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、高端網(wǎng)站設(shè)計、全網(wǎng)營銷推廣、搜索引擎SEO優(yōu)化等服務(wù)。經(jīng)過多年發(fā)展,公司擁有經(jīng)驗豐富的技術(shù)團隊,先后服務(wù)、推廣了成百上千網(wǎng)站,包括各類中小企業(yè)、企事單位、高校等機構(gòu)單位。Hyperf的官方介紹:
Hyperf 是基于 Swoole 4.5+ 實現(xiàn)的高性能、高靈活性的 PHP 協(xié)程框架,內(nèi)置協(xié)程服務(wù)器及大量常用的組件,性能較傳統(tǒng)基于 PHP-FPM 的框架有質(zhì)的提升,提供超高性能的同時,也保持著極其靈活的可擴展性,標(biāo)準(zhǔn)組件均基于 PSR 標(biāo)準(zhǔn) 實現(xiàn),基于強大的依賴注入設(shè)計,保證了絕大部分組件或類都是 可替換 與 可復(fù)用 的。
Hyperf 是命令行Cli模式運行,PHP-FPM模式就是我們常用的模式,其中ThinkPHP,Laravle,Ci等框架都是此種模式,新版的TP和Laravle也支持了Cli模式!
兩種模式較大區(qū)別就是:
PHP-FPM是:每次響應(yīng)請求,都要從入口文件開始初始化框架,經(jīng)過路由轉(zhuǎn)發(fā)到控制器執(zhí)行得到結(jié)果并返回響應(yīng)!
Cli是:啟動框架之后,框架會常駐內(nèi)存,啟動一次他會注冊服務(wù)到系統(tǒng),監(jiān)聽我們的web端口(80或者9501等可以自定義端口),然后每次響應(yīng)請求都不需要在加載框架的文件,直接路由識別到控制器給你執(zhí)行邏輯代碼返回結(jié)果!
所以Hyperf框架的性能是遠高于TP等傳統(tǒng)框架的。一個只需要加載一次,他就一直在樓下等你。一個是你每次找他,他每次加載一次從樓上下來見你。
Hyperf環(huán)境要求:
Hyperf僅可運行于 Linux 和 Mac 環(huán)境下,也就是說我們的Windos電腦不支持,但是在Windows下可以使用Docker for Windows 來作為運行環(huán)境。
運行環(huán)境的要求:
PHP >= 7.3
Swoole PHP 擴展 >= 4.5,并關(guān)閉了 Short Name
OpenSSL PHP 擴展
JSON PHP 擴展
PDO PHP 擴展 (如需要使用到 MySQL 客戶端)
Redis PHP 擴展 (如需要使用到 Redis 客戶端)
Protobuf PHP 擴展 (如需要使用到 gRPC 服務(wù)端或客戶端)
Hyperf的安裝:
需要使用composer,如果您的composer是用的是國外鏡像,那就非常慢,這里分享一個速度很快的鏡像地址:
composer鏡像地址
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer
Hyperf的安裝composer命令
在安裝過程中有一系列的詢問,直接回車跳過即可,他都是問你是否安裝各種組件,我們都可以跳過,以后需要用什么在根據(jù)文檔的命令安裝即可!
composer create-project hyperf/hyperf-skeleton
至此Hyperf框架就安裝結(jié)束了,但是這里還有一個坑需要注意,必須關(guān)閉swoole的Short Name!
在extension = swoole.so下面加上swoole.use_shortname = off 即可,示例如下:
[swoole] extension = swoole.so swoole.use_shortname = off
啟動項目:
啟動項目需要在框架根目錄中找到bin目錄,里面有一個 hyperf.php 文件
在框架bin目錄下執(zhí)行命令:
php hyperf.php start
若在框架根目錄就需要帶bin路徑:
php bin/hyperf.php start
由于 Hyperf 是持久化的 CLI 框架,當(dāng)您修改完您的代碼后,通過 CTRL + C 終止當(dāng)前啟動的進程實例,并重新執(zhí)行 php bin/hyperf.php start 啟動命令即可。
端口被占用怎么辦?
若是啟動過之后,后面在此啟動發(fā)現(xiàn)端口被占用,那就查詢一下端口進程id,殺死進程就可以再次啟動!
netstat -tunlp | grep 9501
tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 15893/skeleton.Mast
kill 15893
netstat -tunlp | grep 9501 是查詢9501端口的進程
kill 15893 是殺死15893進程
框架啟動之后測試訪問:http://ip:端口
假設(shè)服務(wù)器Ip是:47.33.112.136
假設(shè)端口是:9501
那么訪問地址就是:http://47.33.112.136:9501
到此,我們就把框架的安裝,啟動,訪問完成了!
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Hyperf中PHP-FPM和Cli有什么區(qū)別”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
分享標(biāo)題:Hyperf中PHP-FPM和Cli有什么區(qū)別-創(chuàng)新互聯(lián)
文章源于:http://jinyejixie.com/article40/dpdceo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、搜索引擎優(yōu)化、靜態(tài)網(wǎng)站、品牌網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計公司、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容