摘要:目前,官方已經(jīng)提供了集成程度以前優(yōu)雅很多不過的集成方式確實(shí)有些雞肋。所以看了下,為開發(fā)了一個(gè)擴(kuò)展包,可以采用下載開發(fā)之前,需要先熟悉的生命周期,不然就無從下手了。
TP-SWOOLE
目前,TP5.1官方已經(jīng)提供了think-swoole2.0,集成程度以前優(yōu)雅很多,不過5.0的集成方式確實(shí)有些雞肋。所以看了下2.0,為5.0開發(fā)了一個(gè)擴(kuò)展包,可以采用composer下載
composer require xaviertony/xavier-swoole
開發(fā)之前,需要先熟悉TP5.0的生命周期,不然就無從下手了。
由于TP主要在Apache或者NGINX下運(yùn)行,每次運(yùn)行結(jié)束都會(huì)進(jìn)行釋放,而swoole則是常住內(nèi)存,TP5很多類都由單例實(shí)現(xiàn),所以難免會(huì)入坑,其中大坑主要是request,由于啟動(dòng)后請(qǐng)求被實(shí)例化,如果不刪除請(qǐng)求勢(shì)力,以后每次都是采用這個(gè)實(shí)例,造成無法正常訪問頁面,因?yàn)槊看握?qǐng)求達(dá)到后需要先將請(qǐng)求實(shí)例刪除
public static function deletethis() { if (!is_null(self::$instance)) { self::$instance=null; } }
第三方包的配置文件必須在application/extra下,文件名為swoole.php
"0.0.0.0", // 監(jiān)聽地址 "port" => 9501, // 監(jiān)聽端口 "mode" => "", // 運(yùn)行模式 默認(rèn)為SWOOLE_PROCESS "sock_type" => "", // sock type 默認(rèn)為SWOOLE_SOCK_TCP "app_path" => getcwd() . "/application", // 應(yīng)用地址 如果開啟了 "daemonize"=>true 必須設(shè)置(使用絕對(duì)路徑) "file_monitor" => false, // 是否開啟PHP文件更改監(jiān)控(調(diào)試模式下自動(dòng)開啟) "file_monitor_interval" => 2, // 文件變化監(jiān)控檢測(cè)時(shí)間間隔(秒) "file_monitor_path" => [], // 文件監(jiān)控目錄 默認(rè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,//守護(hù) "worker_num" => 8, //worker process num "max_request" => 10000, ];
啟動(dòng)命令
php think swoole start
守護(hù)啟動(dòng)
php think swoole start -d
停止服務(wù)
php think swoole stop
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/29251.html
摘要:此接口主要用于客服等有人工消息處理環(huán)節(jié)的功能,方便開發(fā)者為用戶提供更加優(yōu)質(zhì)的服務(wù)。不支持廣告等營銷類消息以及其它所有可能對(duì)用戶造成騷擾的消息。 1、關(guān)于群發(fā)接口和消息接口 關(guān)于群發(fā)接口1.訂閱號(hào)每天可以群發(fā)消息一條,服務(wù)號(hào)每月(自然月)四條的群發(fā)權(quán)限。開發(fā)者模式下,可以通過高級(jí)群發(fā)接口,實(shí)現(xiàn)更靈活的群發(fā)能力。2.注意● 對(duì)于認(rèn)證訂閱號(hào),群發(fā)接口每天可成功調(diào)用1次,此次群發(fā)可選擇發(fā)送給全...
摘要:這是年前的最后一篇文章,本章來聊一聊程序員如何優(yōu)雅的搬磚搬磚既為達(dá)到目的,不斷重復(fù)某項(xiàng)工作的行為,其實(shí)與造輪子一樣,不謀而合基礎(chǔ)這里的基礎(chǔ)并非單指其技術(shù)能力,技術(shù)底蘊(yùn),更有意體現(xiàn)程序員在初期不斷重復(fù)的工作而獲得的感想與意識(shí)。 showImg(https://segmentfault.com/img/bVbnSFx?w=800&h=444); 我一生的文章都會(huì)放在這里,我的博客,我希望每...
摘要:前面兩篇讓代碼飛起來高性能學(xué)習(xí)筆記一讓代碼飛起來高性能學(xué)習(xí)筆記二,介紹了如何寫出高性能的代碼,這篇結(jié)合我最近的項(xiàng)目,簡(jiǎn)單測(cè)試對(duì)比一下各種語言用算法計(jì)算的效率。下一篇,我們就來看一下中如何利用并行進(jìn)一步提高效率。 前面兩篇讓代碼飛起來——高性能 Julia 學(xué)習(xí)筆記(一) 讓代碼飛起來——高性能 Julia 學(xué)習(xí)筆記(二), 介紹了如何寫出高性能的 Julia 代碼, 這篇結(jié)合我最近的項(xiàng)...
摘要:早期的輪詢是通過不斷自動(dòng)刷新頁面而實(shí)現(xiàn)的。長輪詢的另一個(gè)問題是缺乏標(biāo)準(zhǔn)實(shí)現(xiàn)。服務(wù)器端接到這個(gè)請(qǐng)求后作出回應(yīng)并不斷更新連接狀態(tài)以保證客戶端和服務(wù)器端的連接不過期。協(xié)議解析協(xié)議包含兩部分一部分是握手,一部分是數(shù)據(jù)傳輸。 Websocket是什么? Websocket是一個(gè)因?yàn)閼?yīng)用場(chǎng)景越來越復(fù)雜而提出的,針對(duì)瀏覽器和web服務(wù)器之間雙向持續(xù)通信而設(shè)計(jì),而且優(yōu)雅地兼容HTTP的協(xié)議(我猜想:同...
閱讀 3224·2021-09-30 09:48
閱讀 3501·2021-09-22 16:00
閱讀 1075·2019-08-30 13:08
閱讀 3112·2019-08-30 10:53
閱讀 2425·2019-08-29 18:33
閱讀 1600·2019-08-29 12:47
閱讀 906·2019-08-29 12:16
閱讀 1940·2019-08-26 12:02