使用 workerman-redis 在這個(gè)方法報(bào)錯(cuò),workman的php其余環(huán)境應(yīng)該是有的
// Add socket to global event loop waiting connection is successfully established or faild.
Worker::$globalEvent->add($this->_socket, EventInterface::EV_WRITE, array($this, 'checkConnection'));
[Error]
Call to a member function add() on null
本地是windows64 php 7.4.3
線上也是 linux centos7 php7.4.30
用的框架是tp6 后面的打印是add里面的參數(shù)
這個(gè)開源項(xiàng)目在這個(gè)環(huán)境下都能正常運(yùn)行
但是這個(gè)還是會(huì)有問題
workerman/redis 只能在workerman的運(yùn)行環(huán)境使用
大佬,意思是使用前提還需要我在這個(gè)框架安裝workman的運(yùn)行環(huán)境的意思嗎?還是我只能單獨(dú)類似下個(gè)webman,再在其中使用這個(gè)workman/redis呢
好的,謝了,大佬可以多問一個(gè)小問題嗎就是截圖里面追加的那個(gè),就該有的環(huán)境什么的都有的話,執(zhí)行workman的那個(gè)redis還是會(huì)有點(diǎn)問題,或者說是不是需要分開用, tp用 redis, workman需要單獨(dú)啟動(dòng)
workerman運(yùn)行環(huán)境,是指執(zhí)行 php start.php start
啟動(dòng)的workerman相關(guān)進(jìn)程的內(nèi)部運(yùn)行環(huán)境,里面包含了workerman/redis執(zhí)行依賴的變量、類實(shí)例等,而且這些只有在workerman進(jìn)程里能訪問到。
執(zhí)行php think worker:queue
并沒有啟動(dòng)workerman,僅僅是引用了workerman/redis類文件,也沒workerman/redis依賴的workerman環(huán)境,無法使用workerman/redis。
還有workerman/redis 手冊(cè)有講,除非是在workerman環(huán)境里需要使用subscribe/pSubscribe異步訂閱,否則都用redis擴(kuò)展。你在tp更應(yīng)該使用redis擴(kuò)展才對(duì)。