freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java的高效兼容http服務(wù)器的研究及實現(xiàn)(編輯修改稿)

2024-12-16 03:41 本頁面
 

【文章內(nèi)容簡介】 套接字類)提供的重要函數(shù)有 getIAddress( ), getPort( ), getInputStream( ), 和 close( )。分別產(chǎn)生用于獲得信宿機的地址、信宿機端口號、獲得輸入流、獲得輸出流、關(guān)閉套接字。 ServerSocket 類(服務(wù)器套接字類)的重要函數(shù)有:getIAddress( ), getLocalPort( ), accept( )和 close( ),分別用于獲得信宿機的 Inter 地址、本地端口、監(jiān)聽和關(guān)閉套接字。 ServerSocket 類實現(xiàn)了 TCP 服務(wù)器插口。它提供兩種構(gòu)造函數(shù)指定服務(wù)器插口所用的端口,以便監(jiān)聽到連接請求。利用 Accept( )方法引發(fā)服務(wù)器插口監(jiān)聽并等待,一旦連接就返回一個實例。 自定義類包括( 1) HttpServer 類(服務(wù)器類),( 2) ReThead(線程重用類),( 3) HttpProcess(一個接口類)。此外還包括各個類的請求處理 類 3個: HttpFile(靜態(tài)文件處理) , HttpCGI( CGI處理) ,HttpException(出錯處理);以及數(shù)據(jù)流處理 2 個:HttpInputstream(數(shù)據(jù)輸入流)和 HttpOutputstream(數(shù)據(jù)輸出流)。 9 HTTP Request Http 服務(wù)器 初始化 HTTPConfig 初始化 HTTPLog 初始化 HTTPConverter 當瀏覽器 連接時建立 瀏覽器 連接 分析器 建立連 接信息 HTTPMessageHeaders HTTPInfo 發(fā)回 響應(yīng)和 對象 HTTPGetHand HTTPHead HTTPHandler 建立 HTTPResponse 生成請求的對象 HTTPFileObject HTTPProcessObject 建立相應(yīng)處理器 圖七 重要類的交互 10 (二)﹑ 服務(wù)器總體設(shè)計 1﹑總體設(shè)計的關(guān)鍵點 根據(jù) HTTP 工作原理,在這個設(shè)計中抓住了幾個關(guān)鍵點:( 1)持續(xù)監(jiān)聽。根據(jù) TCP/IP,作為 服務(wù)器端進行監(jiān)聽。在這個設(shè)計中,采用了一個永真的循環(huán),等待客戶的連接請求。( 2)可以同時接受多個用戶的連接請求。每個用戶擁有自己獨立的線程。( 3)實現(xiàn)了線程的重用性。線程重用服務(wù)可以自動收集可重用的線程,以免過的的創(chuàng)建與銷毀線程增加系統(tǒng)的負擔(dān),提高了系統(tǒng)的效率。 2﹑模塊設(shè)計 把 Http 服務(wù)器分成兩個組成模塊:客戶請求處理模塊和響應(yīng)生成發(fā)送模塊,其中客戶請求處理模塊負責(zé)接收客戶的連接,分析請求中的各個協(xié)議參數(shù),此外還負責(zé)調(diào)用響應(yīng)生成發(fā)送模塊。而響應(yīng)生成發(fā)送模塊的任務(wù)就是根據(jù)對客戶請求的分析的結(jié)果查找資源,生 成響應(yīng)和發(fā)送響應(yīng)。 ( 1)﹑客戶請求處理模塊的任務(wù)就是負責(zé)監(jiān)聽系統(tǒng)的端口,以獲取客戶機到達本機的連接。當獲得一個連接請求時,就把這一連接所建立的套接字連接交給一個負責(zé)客戶請求處理程序 —— Client 類處理這一個客戶的請求,之后程序繼續(xù)監(jiān)聽等待下一個客戶的連接。在一個Client 對象建立之后,它就把其在初始化時獲得的一個 Socket 對象的輸入流重定向給一個 Request 對象,使其能通過 Request 類提供的接口方法獲取這一用戶請求的相關(guān)參數(shù),如 URL 的組成請求方法,所指文件以及協(xié)議版本等數(shù)據(jù)。然后把這一個 Request 對象連同 Socket 對象的輸 出 流 傳 遞 給 一 個 ResourceHandler 類 的 實 例 , 由 這 一 個ResourceHandler 對象完成生產(chǎn)發(fā)送對用戶請求的響應(yīng)。主要由三個部分組成:①守護程序:一個 HttpServer 類的實例對象;②客戶處理程 11 6 5 4 3 2 1 總 控程序 守護程序 客戶處理程序 請求分析程序 序:一個 Client 用戶類,由 HttpServer 對象負責(zé)建立其實例和執(zhí)行其運行線程;③請求分析程序:一個 Request 用戶類,由 Client 對象初始化其對象實例,用于分析客戶請求中的協(xié)議參數(shù)(如下 圖八 )。其中,1—— 調(diào)用; 2—— Socket 對象; 3—— Socket 對象; 4—— Socket 對象輸入流; 5—— Request 對象; 6—— Socket 對象的輸入流和 Request 對象。 Request 對象是指經(jīng)分析的客戶請求。 圖八 請求處理模塊 ( 2)﹑響應(yīng)生成發(fā)送模塊實現(xiàn)的功能就是從客戶請求程序中接受一個 Request 對象和一個標識一個用戶連接的客戶 Socket 對象的輸入流( HttpInputStream)對象。通過 Request 對象中獲得客戶請求的協(xié)議參數(shù),查找客戶請求指定的資源,根據(jù)查找的結(jié)果,生成相應(yīng)的響應(yīng),并把生成的響應(yīng)寫入到指定的 HttpInputStream 對象中,其操作結(jié)果就是把響應(yīng)送往客戶。包含了以下對象: ResourceHandler 對象(響應(yīng)產(chǎn)生發(fā)送處理)、 SCManager(響應(yīng)的狀態(tài)碼管理)對象、 StatusCode 對象(狀態(tài)碼管理)、 MimeType 對象(媒體類型描述處理),通過相互調(diào)用協(xié)調(diào),共同完成模塊的功能(如圖六)。其中: 1—— Socket 對象的輸入流和 Request 對象; 2—— 文件名; 3—— 文件描述; 4—— 狀態(tài)碼; 5——響應(yīng)生成模塊 12 6 5 4 3 2 1 響應(yīng)生成發(fā)送 程序 狀態(tài)碼管理 程序 媒體類型識別程序 文件系統(tǒng) 7 狀態(tài)碼相關(guān)描述; 6—— 文件名; 7—— 媒體類型描述。 圖九 響應(yīng)生成發(fā)送模塊 3﹑ HTTP 服務(wù)器各類之間關(guān)系 在 Http 服務(wù)器的設(shè)計中, Httpserver 是主類,提供了程序的入口,打開 ServerSocket 類,并且接受客戶端的連接。對于每個連接將創(chuàng)建一個新的 Httpserver 對象去處理客戶端的請求,并且啟動一個新的線程去執(zhí)行該處理 。 HttpInputstream 類對于請求信息進行分析。HttpProcessor 類則提供了真正處理的接口,它分別被 HttpFile 類,HttpCGI 類, HttpException 類 來 實 現(xiàn) 。 最 后 將 響 應(yīng) 信 息 由HttpOutputStr
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1