TCP長連接開發相關,調試工具SocketTool與框架GatewayWorker

最近在做一個新項目,涉及到服務端與客戶端之間的通信,使用到這款網絡TCP/UDP通信調試工具。本人對TCP/UDP等通信相關知識不甚瞭解,正好以此爲契機,在網上搜羅了相關資料以備不時之需。

簡單介紹下這個軟件:SocketTool是一款網絡TCP/UDP通信調試工具,免安裝且免費使用。可以幫助網絡編程人員、網絡維護人員檢查所開發的網絡應用軟硬件的通信情況。是一款非常好用的socket鏈接測試工具。SocketTool軟件的下載網上有很多,就不在此附鏈接了。

SocketTool怎麼使用?如何建立Scoket服務端/客戶端?請點擊下面鏈接

點擊查看使用步驟詳解

解決 dos窗口提示“telnet不是內部或外部命令”問題

使用流程講解:

1、TCP通信測試:

(1)創建TCP Server

選中左側的TCP Server,然後點擊“創建”按鈕,彈出監聽端口輸入框,輸入監聽端口,即創建了一個在指定端口上進行監聽的TCP Server Socket。創建TCP Server Socket時,軟件會自動啓動TCP Server Socket處於監聽狀態。

(2)創建TCP Client

選中左側的TCP Client,然後點擊“創建”按鈕,彈出對方IP和對方端口的輸入框,即創建一個連接指定IP和端口的TCP Client Socket。創建TCP Client Socket時,軟件不會自動進行連接Socket的操作,所以要進行下一步操作連接Socket。

(3)連接Socket

點擊剛創建的TCP Client,右側會出現其操作面板,點擊“連接”按鈕進行Socket連接。連接成功,即TCP Client建立了與TCP Server的連接。在TCP Server下面,會自動增加一個與該連接對應的Socket。

如此三步操作就連接成功了,可以試着發送數據了。

使用流程參考此處(版本較低,可百度其他鏈接下載)

另外,在GatewayWorker上調試時遇見一個問題

當設置$host時,設置爲localhost或者127.0.0.1時數據庫連接正常,但將$host設爲本地IP192.168.*.*時會報錯。代碼如下:

$host設爲localhost或127.0.0.1時未報錯,且客戶端向服務端發送數據成功:

$host設爲本地IP後,會報錯,但客戶端向服務端發送數據成功:

查閱相關資料後發現是Mysql數據庫的用戶級權限問題,需要將Mysql數據庫訪問權限設置爲可以遠程連接或者說用IP地址可以訪問。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章