Hyperf中PHP-FPM和Cli有什么區(qū)別-創(chuàng)新互聯(lián)

這篇文章主要介紹了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ì)的提升,提供超高性能的同時,也保持著極其靈活的可擴展性,標準組件均基于 PSR 標準 實現(xiàn),基于強大的依賴注入設(shè)計,保證了絕大部分組件或類都是 可替換 與 可復用 的。

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 框架,當您修改完您的代碼后,通過 CTRL + C 終止當前啟動的進程實例,并重新執(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

到此,我們就把框架的安裝,啟動,訪問完成了!

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Hyperf中PHP-FPM和Cli有什么區(qū)別”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!

分享標題:Hyperf中PHP-FPM和Cli有什么區(qū)別-創(chuàng)新互聯(lián)
文章源于:http://bm7419.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)

綿陽服務(wù)器托管