Select模式下級聯(lián)文件傳輸服務(wù)器的實現(xiàn)
發(fā)布時間:2021-08-02 20:04
Select是Windows操作系統(tǒng)提供的一個API函數(shù),它具備強大的網(wǎng)絡(luò)探測能力且使用方便。眾所周知,在阻塞模式下網(wǎng)絡(luò)通訊可能造成進程掛起,較為可靠的方法是采用非阻塞模式,但Windows底層所提供的socket函數(shù)在非阻塞方式下返回值可信度很低,如果通過Select模式結(jié)合超時處理來獲取返回狀態(tài),會大大提升程序返回值的可信度。本文采用java語言來實現(xiàn)一個基于TCP/UDP協(xié)議的級聯(lián)文件傳輸服務(wù)器,其中利用Select模式對端口的可讀寫性進行探測。通過實際測試,在有效地防止進程掛起的同時能準確獲取返回值,從而正確判斷端口狀態(tài),從側(cè)面增強系統(tǒng)的健壯性與可維護性。
【文章來源】:數(shù)字技術(shù)與應(yīng)用. 2020,38(09)
【文章頁數(shù)】:3 頁
【部分圖文】:
級聯(lián)服務(wù)器部署
客戶端請求發(fā)出到服務(wù)器上,服務(wù)器將查找本地共享目錄中是否有該文件。沒有則將查找請求發(fā)送到自己的下一服務(wù)器。如果有該文件則發(fā)送文件到客戶端。對于非第一服務(wù)器,如果有該文件將會把結(jié)果發(fā)送到上服務(wù)器的TEMP端口,而TEMP端口繼續(xù)轉(zhuǎn)發(fā)直到客戶端。而當(dāng)查找請求到最后服務(wù)器時,還沒有該文件,將返回字符串“wrong!”到上一服務(wù)器的TEMP端口,直到服務(wù)器,服務(wù)器會給出找不到該文件的提示。圖3 部分關(guān)鍵代碼實現(xiàn)
部分關(guān)鍵代碼實現(xiàn)
本文編號:3318188
【文章來源】:數(shù)字技術(shù)與應(yīng)用. 2020,38(09)
【文章頁數(shù)】:3 頁
【部分圖文】:
級聯(lián)服務(wù)器部署
客戶端請求發(fā)出到服務(wù)器上,服務(wù)器將查找本地共享目錄中是否有該文件。沒有則將查找請求發(fā)送到自己的下一服務(wù)器。如果有該文件則發(fā)送文件到客戶端。對于非第一服務(wù)器,如果有該文件將會把結(jié)果發(fā)送到上服務(wù)器的TEMP端口,而TEMP端口繼續(xù)轉(zhuǎn)發(fā)直到客戶端。而當(dāng)查找請求到最后服務(wù)器時,還沒有該文件,將返回字符串“wrong!”到上一服務(wù)器的TEMP端口,直到服務(wù)器,服務(wù)器會給出找不到該文件的提示。圖3 部分關(guān)鍵代碼實現(xiàn)
部分關(guān)鍵代碼實現(xiàn)
本文編號:3318188
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3318188.html
最近更新
教材專著