主頁 > 知識庫 > php swoft框架實(shí)例用法

php swoft框架實(shí)例用法

熱門標(biāo)簽:Linux服務(wù)器 阿里云 團(tuán)購網(wǎng)站 電子圍欄 銀行業(yè)務(wù) 科大訊飛語音識別系統(tǒng) Mysql連接數(shù)設(shè)置 服務(wù)器配置

在框架選擇上,不少人會覺得swoft才是最強(qiáng)PHP框架,尤其是在常駐內(nèi)存模式的應(yīng)用級高性能框架,性能是這一堆頁面級框架遙不可及的,但是使用上稍微有點(diǎn)欠缺,內(nèi)容稍微復(fù)雜,不如easyswoole好上手,但是性能上是絕對的好用,大家如果在編寫項(xiàng)目時(shí)候,強(qiáng)烈要求使用性能,就可以了解下這個框架。

使用場景

微服務(wù)治理的最佳框架

優(yōu)點(diǎn)

內(nèi)存模式的應(yīng)用級高性能框架

使用流程

1、服務(wù)注冊

2、服務(wù)取消

3、服務(wù)限制

實(shí)現(xiàn)代碼:

class BreakerLogic
{
/**
* @Breaker(fallback="funcFallback")
*
* @return string
* @throws Exception
*/
public function func(): string
{
// Do something
throw new Exception('Breaker exception');
}

關(guān)于swoft框架的基礎(chǔ)知識點(diǎn)

使用Swoft框架注意事項(xiàng)

因?yàn)镾woft是基于Swoole,所以和普通的PHP框架還是很不一樣的,有些是需要注意的。

1.不要再代碼中執(zhí)行sleep()以及其他睡眠函數(shù),這樣會導(dǎo)致整個進(jìn)程阻塞。

2.不要使用exit/die函數(shù),這樣會導(dǎo)致worker進(jìn)程直接退出。

3.進(jìn)程隔離需要注意的,當(dāng)修改了全局變量的值,會不生效,因?yàn)槿肿兞吭诓煌倪M(jìn)程中,內(nèi)存空間是隔離的。使用Swoft框架需要了解進(jìn)程隔離問題。不同的進(jìn)程中PHP變量不是共享,即便是全局變量。如果不同的進(jìn)程需要共享數(shù)據(jù),可以使用Redis,Mysql,消息隊(duì)列,文件,Swoole/Table,APCu(php自帶的緩存擴(kuò)展),shmget(進(jìn)程通信(IPC)共享內(nèi)存)等工具。同時(shí)不同進(jìn)程的文件句柄也是隔離的,所以在A進(jìn)程創(chuàng)建的Socker連接打開的文件在B進(jìn)程內(nèi)是無效的。

4.進(jìn)程克隆,當(dāng)server啟動時(shí)候,主進(jìn)程會克隆當(dāng)前進(jìn)程狀態(tài),此后開始進(jìn)程內(nèi)的數(shù)據(jù)互相獨(dú)立,互不影響。

5.不要再控制器寫基類來寫公共的變量,這樣會造成數(shù)據(jù)污染,當(dāng)下一個請求進(jìn)來依然會請求到這個變量,因?yàn)槌qv內(nèi)存并且單利所以不會釋放掉。

到此這篇關(guān)于php swoft框架實(shí)例用法的文章就介紹到這了,更多相關(guān)php swoft框架是什么內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • php中Workerman框架實(shí)例講解
  • php中PHPUnit框架實(shí)例用法
  • phpstudy的安裝及ThinkPHP框架的搭建圖文講解
  • php的lavarel框架中join和orWhere的用法
  • php中yar框架實(shí)例用法講解
  • php中yii框架實(shí)例用法
  • php框架知識點(diǎn)的整理和補(bǔ)充

標(biāo)簽:棗莊 大理 衢州 蚌埠 廣元 江蘇 衡水 萍鄉(xiāng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php swoft框架實(shí)例用法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266