我直接下載gatewayworker的demo,在Events文件里面使用use Workerman\Timer,結(jié)果提示該文件未找到,引用語句應(yīng)該怎么寫...
我有一些設(shè)備,是統(tǒng)一通過同一個4G模塊來發(fā)送指令,即這些設(shè)備的的clientid是一樣,但是發(fā)送過來的指令會攜帶具體的設(shè)備id,此時該如何判斷具體某臺設(shè)備的在線情況呢?目前想法是在onMessage里面,等收到設(shè)備的登錄指令時,根據(jù)不同的設(shè)備id,創(chuàng)建對應(yīng)的一分鐘定時器,然后監(jiān)聽設(shè)備的心跳指令,如果某臺設(shè)備的心跳指令及時發(fā)送過來,則刪除該設(shè)備的定時器,同時再創(chuàng)建一個新的定時器,如此反復(fù),如果一分鐘內(nèi)沒有收到對應(yīng)設(shè)備的...
使用php start.php reload重啟進程后,使用status查看狀態(tài),發(fā)現(xiàn)bussinessworker的exit_count數(shù)量在遞增,上周二reload后bussinessworker的exit_count的數(shù)量一直就沒降下來,當時reload后顯示的是600,今天reload后顯示1200,再次reload,發(fā)現(xiàn)數(shù)量又漲了,變成1352了。 阿里云監(jiān)控的tcp鏈接顯示活躍連接數(shù)正常,但非活躍連接數(shù)變...
將openssh由8.2升級到9.1后,執(zhí)行php start.php status指令后,看不到gateway和bussiness進程了,請問這是為什么...
今晚阿里云監(jiān)控突然報警,tcp連接數(shù)突然暴漲,從兩萬升到四萬左右,以前都是重啟tcp就可以了,但是今晚重啟無效,然后增加了gateway和bussinessworker,以daemon模式啟動后,并執(zhí)行php start.php reload,剛開始出現(xiàn)了一個bussinessworker進程,但是再次用status查看的時候又沒有了,一直重復(fù)reload都沒有效果,期間不斷的增大gateway和bussinessw...
我重啟了gatewayworker,剛開始進程都起來了,但很快,也就幾秒鐘,使用status指令查看進程,發(fā)現(xiàn)bussinessworker進程只剩幾個,再執(zhí)行status指令,bussinessworker進程已經(jīng)沒有了,此時workerman日志文件里面沒有報錯信息,使用debug模式運行時并沒有錯誤信息提示,但是當執(zhí)行指令停止gatewayworker時,workerman日志就開始瘋狂拋出錯誤,如下圖。之前也...
請問在Gateway::bindUid($client_id,$device)后,執(zhí)行$_SESSION[$client_id]=$device來保存設(shè)備id是否可行?當設(shè)備掉線出發(fā)onClose時,通過$_SESSION[$client_id]來獲取設(shè)備id會有問題嗎?因為我這邊發(fā)現(xiàn)有時候會出現(xiàn)觸發(fā)onClose時,$client_id不存在的情況,觸發(fā)onClose的時候$client_id會存在丟失的情況嗎?...
問題描述 events里面的數(shù)據(jù)庫鏈接之前一直用的外部鏈接,昨晚改成內(nèi)部鏈接并重啟gateway后,剛剛重啟的片刻,bussinessworker都起來了,設(shè)備也能正常收發(fā)指令,但是馬上就又都掉下去了,把數(shù)據(jù)庫再改回外鏈也不行,一直報這個錯,提高gateway和bussiness的數(shù)量,也沒用,這個問題持續(xù)了兩個小時左右,那個時候系統(tǒng)里面應(yīng)該有不少設(shè)備斷電了,然后gatewayworker才恢復(fù)正常 報錯信息 #12...
問題描述 設(shè)備登錄后綁定對應(yīng)的設(shè)備和clientid,稱此時的clientid為id1,設(shè)備30分鐘會發(fā)送一次登錄指令,當設(shè)備再次發(fā)送登錄指令時,有時候會出現(xiàn)clientid不一樣的情況,稱此時的clientid為id2,,那么此時就出現(xiàn)了一臺設(shè)備,兩個clientid的情況,此時設(shè)備的心跳指令會在id2的通道進行收發(fā),那么超時之后,id1就會觸發(fā)onclose。觸發(fā)onclose時,會更新數(shù)據(jù)庫里面設(shè)備的狀態(tài),這樣...
手冊上說“客戶端定時每X秒(推薦小于60秒)向服務(wù)端發(fā)送特定數(shù)據(jù),服務(wù)端設(shè)定為X秒沒有收到客戶端心跳則認為客戶端掉線,并關(guān)閉連接觸發(fā)onClose回調(diào)?!?而之所以推薦小于60秒是因為“很多路由節(jié)點會清理60秒內(nèi)不活躍的連接,導(dǎo)致還沒來得及發(fā)送心跳,連接就斷開了?!眳⒖甲詗alker大大在https://wenda.workerman.net/question/4615 這個問題中的回復(fù)。 問題一:現(xiàn)在我設(shè)置的$ga...
如圖所示,我的兩臺設(shè)備50127和50128,在onMessage()里打印出對應(yīng)的client_id時,卻發(fā)現(xiàn)兩臺設(shè)備對應(yīng)的client_id一樣,之前一直沒遇到過這種情況。文檔中說client_id是唯一的,請問大神這是什么原因?qū)е碌模?..
1.平時晚上10點左右業(yè)務(wù)量都比較低了,但是昨天晚上BusinessWorker進程突然全沒了,查看log日志,發(fā)現(xiàn)只有昨天凌晨時候有一次錯誤4,可能是有鏈接連接到register上了,但晚上10點左右日志并沒有記錄下來任何東西,應(yīng)該不是這個錯誤吧。但保險起見,還是把注冊地址改成127.0.0.1了($register = new Register('text://127.0.0.1:xxxx');)。在重啟gate...
最近gatewayworker報錯error3,error4,exit_status:11,exit_status:64000. 1:出現(xiàn)error4應(yīng)該是自己的注冊地址設(shè)置的有問題,現(xiàn)在已經(jīng)改成了127.0.0.1; 2:查看文檔http://wiki.workerman.net/Error3上面說有兩個原因,一個是gateway和businessworker的registerAddress設(shè)置錯誤或不一致,一個是...
昨天晚上重啟gateway的時候就有發(fā)現(xiàn)這個問題,守護進程啟動成功之后,用status指令查看發(fā)現(xiàn)沒有businessworker,然后我的設(shè)備也就一直連不上,之后就一直重啟,最后就好了。然后今天重啟的時候又出現(xiàn)了這個問題,也是重啟多次后才連上了businessworker,然后因為其他原因又重啟了一次,結(jié)果就一直連不上了,然后現(xiàn)在我把businessworker連接數(shù)調(diào)大,連接上了,請問這個原因是因為busines...
想請教一個問題,當我的設(shè)備在連上gateway后突然斷開,是否可以通過$SESSION來獲取這臺設(shè)備id并更新對應(yīng)的設(shè)備狀態(tài),因為我現(xiàn)在遇到的情況是我的設(shè)備斷開了連接,觸發(fā)了onclose但是$SESSION卻沒有值,導(dǎo)致無法運行update函數(shù)更新設(shè)備狀態(tài)。手冊上說客戶端或服務(wù)端與Gateway進程的連接斷開時觸發(fā)onclose,而$_SESSION的生命周期與client_id對應(yīng)socket連接的生命周期相同,...
大神,我用過的是gateway worker,現(xiàn)在發(fā)現(xiàn)服務(wù)器cpu很高,于是用top指令查看了一下,如左圖所示,上面幾個進程都占了很多cpu,然后用cd /proc/PIDID查看了一下對應(yīng)的pid,發(fā)現(xiàn)如圖右所示,cwd指向的都是gatewayworker文件夾,請問大神這該如何處理...
問題需求:群發(fā)指令到部分設(shè)備端 解決思路:將該部分設(shè)備分組,然后利用sendtogroup群發(fā)指令 疑問1:對設(shè)備進行按需分組,請問是需要通過客戶端發(fā)送含有標志性字符的指令,比如“group:team”,然后gatewayworker通過該標志性字符來將其對應(yīng)的clientid加入team組中嗎?如果客戶端發(fā)送的指令沒有標識符,在服務(wù)端的gatewayworker是不是就無法按需分組了? 疑問2:我的所有指令都含有設(shè)...