下面由thinkphp框架教程欄目給大家介紹讓TP5.0在SWOOLE上飛起來的方法,希望對需要的朋友有所幫助!

TP-SWOOLE
目前,TP5.1官方已經(jīng)提供了think-swoole2.0,集成程度以前優(yōu)雅很多,不過5.0的集成方式確實有些雞肋。所以看了下2.0,為5.0開發(fā)了一個擴展包,可以采用composer下載
composer require xaviertony/xavier-swoole
開發(fā)之前,需要先熟悉TP5.0的生命周期,不然就無從下手了。
由于TP主要在Apache或者NGINX下運行,每次運行結束都會進行釋放,而swoole則是常住內存,TP5很多類都由單例實現(xiàn),所以難免會入坑,其中大坑主要是request,由于啟動后請求被實例化,如果不刪除請求勢力,以后每次都是采用這個實例,造成無法正常訪問頁面,因為每次請求達到后需要先將請求實例刪除
public static function deletethis()
{
if (!is_null(self::$instance)) {
self::$instance=null;
}
}第三方包的配置文件必須在application/extra下,文件名為swoole.php
<?php
return [
'host' => '0.0.0.0', // 監(jiān)聽地址
'port' => 9501, // 監(jiān)聽端口
'mode' => '', // 運行模式 默認為SWOOLE_PROCESS
'sock_type' => '', // sock type 默認為SWOOLE_SOCK_TCP
'app_path' => getcwd() . '/application', // 應用地址 如果開啟了 'daemonize'=>true 必須設置(使用絕對路徑)
'file_monitor' => false, // 是否開啟PHP文件更改監(jiān)控(調試模式下自動開啟)
'file_monitor_interval' => 2, // 文件變化監(jiān)控檢測時間間隔(秒)
'file_monitor_path' => [], // 文件監(jiān)控目錄 默認監(jiān)控application和config目錄
// 可以支持swoole的所有配置參數(shù)
'pid_file' => getcwd() . '/runtime/swoole.pid',
'log_file' => getcwd() . '/runtime/swoole.log',
'task_worker_num' => 20,
//'document_root' => getcwd() . 'public',
//'enable_static_handler' => true,
'daemonize' => 1,//守護
'worker_num' => 8, //worker process num
'max_request' => 10000,
];啟動命令
php think swoole start
守護啟動
php think swoole start -d
停止服務
php think swoole stop
新聞標題:這個辦法可以讓TP5.0在SWOOLE上飛起來!
文章出自:http://chinadenli.net/article20/cgscco.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供用戶體驗、網(wǎng)站維護、網(wǎng)站設計、建站公司、搜索引擎優(yōu)化、ChatGPT
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)