天天看點

WebSocket實戰之————GatewayWorker使用筆記例子

WebSocket實戰之————GatewayWorker使用筆記例子

!!!特别注意:

[1]用戶端的事件及資料全部由Gateway轉發給BusinessWorker處理,BusinessWorker預設調用Events.php中的onConnect onMessage onClose處理業務邏輯。

[2]通過GatewayClient發送的資料不會經過Event.php,而是直接經由Gateway程序轉發給用戶端。GatewayClient無法接收用戶端發來的資料。

如果GatewayClient和GatewayWorker不是在同一台伺服器上,則需要先将start_gateway.php中的lanIp改成目前伺服器的内網ip(如果不在一個内網可改成公網ip)。

如果GatewayClient和GatewayWorker在同一台伺服器上運作,則不用做任何更改,直接按照示例使用GatewayClient即可。

本地測試text協定是否正常指令:

WebSocket實戰之————GatewayWorker使用筆記例子

輸入指令:

WebSocket實戰之————GatewayWorker使用筆記例子

重新打開一個視窗:Windows 測試結果:

WebSocket實戰之————GatewayWorker使用筆記例子

Linux測試結果:

WebSocket實戰之————GatewayWorker使用筆記例子

測試成功:

例如:copy一個start_gateway_ws.php檔案,如圖所示:

WebSocket實戰之————GatewayWorker使用筆記例子

修改檔案内容:

在HTMl頁面調用:

注意:以上的HTML頁面的WebSocket的端口号必須的同時對應哦!

WebSocket實戰之————GatewayWorker使用筆記例子

可以看出:start_register.php這個檔案是專門管理其他的三個檔案的

注意:一下的register和worker的這個注冊位址必須是一樣的,也就是說,worker的注冊位址必須和register的一樣的

 例如在TP的Controller中使用的時候這樣連接配接:調用的是這個檔案中的位址(服務注冊位址):start_businessworker.php