什么是Swoole
直接套用Swoole官網(wǎng)的介紹:PHP的異步、并行、高性能網(wǎng)絡(luò)通信引擎,使用純C語言編寫,提供了PHP語言的異步多線程服務(wù)器,異步TCP/UDP網(wǎng)絡(luò)客戶端,異步MySQL,異步Redis,數(shù)據(jù)庫連接池,AsyncTask,消息隊列,毫秒定時器,異步文件讀寫,異步DNS查詢。 Swoole內(nèi)置了Http/WebSocket服務(wù)器端/客戶端、Http2.0服務(wù)器端。
Swoole官網(wǎng)的文檔不夠豐富啊,這比較頭疼,但大部分的問題都解釋了。如果你對Swoole很感興趣,那么看看這個Swoole入門教程。Swoole提供了多線程、長連接等很多牛逼的功能,把php上升到了一個新的臺階,具體的你可以看看入門教程,本文只限于討論Laravel和Swoole的結(jié)合。
Swoole為了提供服務(wù),必須以CLI模式運(yùn)行,什么是CLI模式呢?如果你Swoole業(yè)務(wù)代碼是寫在一個叫server.php的文件中,那么在命令行下輸入php server.php開啟。這是比較頭疼的事情,因?yàn)長aravel框架可不是這樣的運(yùn)轉(zhuǎn)的,那如何能與Laravel結(jié)合呢?沒錯,自定義一條Artisan Command,就這么簡單。
強(qiáng)烈推薦在你的laravel項目中,使用 laravel-s
這個包.
composer require "hhxsv5/laravel-s:~1.0" -vvv
然后,依賴 kuaiapp/db
這個包,作用是實(shí)現(xiàn) Swoole\Coroutine\MySQL
的偽 PDO 接口
composer require "kuaiapp/db" -vvv
給 vendor/laravel/framework
打patch
cd .//vendor/laravel/framework
wget https://gist.githubusercontent.com/xiaohuilam/81ae50c1bc06180bd8e6fcbdaadba86a/raw/529cb96ca9abeed7a35076725b3b5cd8a1e04ff7/git.patch
git am git.patch
啟動laravel-s
php artisan laravels start
現(xiàn)在你就可以測試你的數(shù)據(jù)庫查詢了。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Laravel使用swoole實(shí)現(xiàn)websocket主動消息推送的方法介紹
- LaravelS通過Swoole加速Laravel/Lumen詳解
- 在swoole中制作一款仿制laravel的框架的實(shí)例代碼