您好,登錄后才能下訂單哦!
本篇內容主要講解“PHP怎么實現網頁與遠程服務器TCP交互”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“PHP怎么實現網頁與遠程服務器TCP交互”吧!
最近參與了一個物聯網的項目,場景:有多臺設備通過tcp與服務器連接,要求客戶在遠程用網頁對設備進行管理。網頁不直接控制硬件,而是將服務器當成一個中轉站。網頁發出指令,送到服務器,服務器再將這些指令送到相應的設備,反之亦然,設備將指令發送至服務器,服務器再將設備指令推送到網頁。
筆者負責網頁端與遠程服務器交互。因為指令的傳送要求快速、即時,所以筆者選用的基本構架是php+socket+redis。經過兩天的時間,基本流程已經實現,網頁端與服務端做到了實時交互。下面就把基本思路寫一下,希望能起到拋磚引玉的作用。
實現方案:
1、網頁端通過websocket與PHP后臺交互
2、后臺可使用swoole或workerman,我這里使用workerman
3、將網頁端收到的指令存入緩存(redis鍵client。緩存可采用本地緩存或redis,速度上差不多。這里選用redis,方便運用隊列和將來升級)
4、將緩存client值,通過php擴展 socket 傳到遠程服務器(socket_write)
5、接收遠程服務器的指令(socket_read),存入緩存(redis鍵server)
6、將緩存過的server值,即遠程服務器的指令,傳到網頁端
7、反過來是一樣的,遠程服務端的指令,可即時推送到網頁端
另外在網上看到一個用PHP實現網頁直接操作硬件串口的基本思路:實現方案:
1.網頁端通過websocket與php后臺服務交互
2.php后臺接收指令操作串口,發送16進制指令給硬件設備
3.php后臺將硬件設備返回值通過websocket,傳遞給網頁端
4.網頁端接收推送消息,顯示在頁面上。
到此,相信大家對“PHP怎么實現網頁與遠程服務器TCP交互”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。