集合 swoole 的框架設計為了減少理解度,我盡量的從源頭開始引入
1. nsq
案例中是使用 swoole 結合一個php 框架實作的是 NSQ 訂閱功能,
啟動命令:
sudo bash /www/webserver/bin/swoole.sh start nsq adminexport
解釋上面一個指令,使用 bash 執行一個專案中的腳本,
start 對應啟動命令
nsq : 代表對應使用NSQ 服務
adminexport : 對應的是NSQ 的topic
腳本的本質,通過框架的入口檔案,根據傳參,進入到的不同的訊息中間件,及對應的服務

php 訂閱
AdminexportService 繼承封裝好的 SwooleService, 在init方法中,初始化 swoole服務,并且注冊回呼函式,

AdminexportService 在重寫的 swooleWorkerStart 回呼函式中,實作了NSQ 的訂閱功能

NSQ 訊息的處理

- 簡單封裝了重復訊息的判斷
- requeue 沒有消費訊息的重新投遞
3. 引入 swoole
就是構造方法引入 swoole 的實體化
同時,重寫 workerStart 的方法,
所以當執行腳本的時候,也就是啟動了 對應的swoole 服務,啟動了訂閱者的客戶端,
不斷的消費來自nsq topic 的訊息
看吧,swoole 其實也很簡單, 把它當做一個工具類,拿來用就可以了, 在實作的時候引入它,通過 WorkerStart 處理分發的訊息即可,
當然更好的是使用協程,
另外吹一波,協程就是厲害
以上是文章全部內容,有需要學習交流的友人請加入交流群的咱們一起,有問題一起交流,一起進步!前提是你是學技術的,感謝閱讀!
點此加入該群
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/103754.html
標籤:PHP
上一篇:Windows系統下解決PhPStudy MySQL啟動失敗
下一篇:海豚框架之單檔案上傳
