Hi walkor, 我現(xiàn)在服務(wù)器框架只是用的Workerman,如果要用Channel作分布式通訊的話,必須要知道連接所在的worker, 那么當(dāng)設(shè)備連接上來的時候,我要如何獲取到當(dāng)連接所在的進程(worker id)? 例如在$tcp_worker->onConnect = function ($connection) {}這個函數(shù)里面....
Hi, walkor, 關(guān)于粘包問題,我想問一下。第1種:服務(wù)器有1臺設(shè)備連接,這個連接每秒發(fā)送100條數(shù)據(jù)(即服務(wù)器1秒內(nèi)接收了100條數(shù)據(jù)),這樣100%會有粘包問題(這個問題我已經(jīng)處理),但是如果服務(wù)器有100臺設(shè)備連接,100臺設(shè)備在1秒內(nèi)同時發(fā)送1條數(shù)據(jù)(即服務(wù)器1秒內(nèi)也是接收了100條數(shù)據(jù)),那這種情況會不會出現(xiàn)粘包的情況呢?...
Hi,walkor, 目前該問題已是在生產(chǎn)項目上,我在PHP腳本里面直接引用RPCclient.php,然后遠程調(diào)用RPC服務(wù)器往數(shù)據(jù)庫里寫數(shù)據(jù),腳本執(zhí)行完一段時間后發(fā)現(xiàn)腳本的進程退出了,看了一下日志是RPC拋異常了:Uncaught exception 'Exception' with message 'recvData empty',導(dǎo)致腳本進程退出 我有幾點想請問一下: 1,Uncaught excepti...
Hi,walkor, 最近我在項目使用GatewayWorker時也碰到了粘包問題,然后查閱了相關(guān)文檔,發(fā)現(xiàn)text協(xié)議 能夠很好解決粘包問題,但是客戶端連上服務(wù)器發(fā)數(shù)據(jù)時,Events.php的onMessage方法中接收不到數(shù)據(jù),這是 怎么回事呢?我在start_gateway.php里是這樣寫的$gateway = new Gateway("text://0.0.0.0:8585"...
Hi walkor, GatewayWorker框架的業(yè)務(wù)代碼部分都是寫在Events.php里面,隨便著業(yè)務(wù)不斷增加,我現(xiàn)在是統(tǒng)一調(diào)用外部的封裝方法,請問這些方法我全部定義成static的會有問題嗎?...
hi,walkor,在用GateWayWorker應(yīng)用到實際項目中時,服務(wù)器端設(shè)置的1分鐘心跳間隔,如果設(shè)備在斷電或斷網(wǎng) 的時候服務(wù)器不能立馬感知到設(shè)備已經(jīng)下線,此時設(shè)備斷電或斷網(wǎng)后立馬重新連接,那么GateWay提示“拒絕重 連”,等服務(wù)端通過心跳感知到設(shè)備已經(jīng)下線后,設(shè)備才能重新連接。這是不是服務(wù)器還認(rèn)為此設(shè)備在線,不能重 復(fù)連接?那么有辦法怎么能讓設(shè)備斷電后立馬重連嗎?因為我是跟硬件的同事聯(lián)調(diào)的。他說重連的時候...
Hi Walkor, $result = $ret->query("select * from protype_brand inner join protype on protype_brand.protype_id=protype.protype_id where protype_brand.product_code='{$product_code}'"); 直接用這個query方法可以查到對應(yīng)的值 ,但為...
Walkor,遠程請求一次JsonRPC的時候 ,比如用戶登陸 登陸成功正確返回是 { "code": 0, "msg": "ok", "data": "" } 那么,如果密碼輸入不正確登陸失敗呢?如何返回{ "code": 1, "msg": "error"...
@walkor, 業(yè)務(wù)邏輯是這樣的: 設(shè)備A通過mqtt協(xié)議 向 Mosquitto服務(wù)器上的某個Topic發(fā)布消息,php的mqtt客戶端通過輪詢訂閱這個Topic來實時獲取設(shè)備A上報的數(shù)據(jù),然后存入數(shù)據(jù)庫。 php端的mqtt client 這邊我已經(jīng)有實現(xiàn)的類,此類提供訂閱和發(fā)布接口.. 目前我這邊實現(xiàn)部分代碼: $topics = array("qos"=>0, "function"=>"get...