網絡服務器中間件的研究
發布時間:2020-11-22 00:51
隨著計算機和網絡技術的飛速發展,不同的硬件平臺、網絡協議異構環境相繼出現,為了適應這些硬件平臺和環境,應用軟件開發者必須面對許多復雜棘手的問題,因此耗費了大量的時間和精力,人們迫切需要一種基于標準的、獨立于計算機硬件以及操作系統的開發和運行環境,中間件技術由此應運而生。 針對C/S通信服務器的特點,論文對網絡服務器中間件技術進行了研究,并利用套接字、線程池、I/O派發器等技術開發了一種適合Windows平臺的網絡服務器中間件。 首先分析了國內外研究現狀,討論了與課題有關的技術原理,包括物理層、邏輯層、I/O派發層、內存池及線程池技術等。在對服務器中間件邏輯層和物理層進行分析的基礎上,完成了中間層整體框架及核心功能的設計。其中,物理層采用Windows實現完成端口技術實現高效的通訊層,邏輯層采用線程池技術實現高效的處理層,采用I/O派發機制實現物理層與邏輯層之間的銜接,且有效地解決了I/O獨占任務及分布不均衡現象。 其次,論文分析并討論了構成中間件的數據接收和發送、內存Cache處理、內存池管理、用戶層編程接口、用戶層數據處理以及I/O請求派發器等各模塊的關鍵技術,并根據模塊的功能需求給出了如何進行模塊劃分以及各個模塊的銜接方式,在此基礎上給出了各功能模塊的實現方法。 最后,論文對該服務器中間件的數據吞吐量以及穩定性進行了模擬測試。測試結果表明:該中間件的性能指標達到了系統設計的要求,可以滿足開發網絡服務器程序以及客戶端通訊的需要,并且該中間件具有良好的穩定性能。
【學位單位】:河北聯合大學
【學位級別】:碩士
【學位年份】:2014
【中圖分類】:TP393.05
【部分圖文】:
采用結構化分層設計,將整個網絡中間件分成六部分實現。服務器中間件結構圖如圖2 所示。圖 2 中間件組成模塊圖Fig.2 Diagram of middleware module此中間件由六部分重要的模塊組成:1)數據接收和發送完成模塊;2)內存 Cache 處理模塊;3)內存池管理模塊;4)用戶層編程接口模塊;5)用戶層數據處理模塊;6) I/O 請求派發器模塊。應用程序利用此中間件提供的用戶編程接口提交發送數據或連接服務器請求。首先由 Cache 內存池管理模塊負責選取內存塊,把選取的內存塊地址返回給用戶編程接口模塊。條件滿足之后,把“I/O 請求”提交給數據接收和發送完成模塊,異步 I/O 請求提交后,用戶的調用完成。“異步 I/O 請求”交給底層的數據接收和發
圖 4 類的信息圖Fig.4 Chart of class info據結構是與某一個套接字句柄密切相關的各參agPER_HANDLE_CONTEXTIoSocket; //通訊套接字句柄LockCount; //投遞 IOCP 內核對ET_STATUS SocketStatus; //對象狀態SocketIndex;//提供給應用層 ID 值iProtolMark; //協議(TCP 或是 UiReadIoMemSize; //每次讀 I/O 的
河北聯合大學碩士學YTE *pData,ULONGa();//獲取內存塊地OL, *PMEMORY_ 4K。_EightK_Pool:publiszBuffeYTE *pData,ULONGa();//獲取內存塊地OOL, *PMEMORY 8K。內存池管理模
【參考文獻】
本文編號:2893857
【學位單位】:河北聯合大學
【學位級別】:碩士
【學位年份】:2014
【中圖分類】:TP393.05
【部分圖文】:
采用結構化分層設計,將整個網絡中間件分成六部分實現。服務器中間件結構圖如圖2 所示。圖 2 中間件組成模塊圖Fig.2 Diagram of middleware module此中間件由六部分重要的模塊組成:1)數據接收和發送完成模塊;2)內存 Cache 處理模塊;3)內存池管理模塊;4)用戶層編程接口模塊;5)用戶層數據處理模塊;6) I/O 請求派發器模塊。應用程序利用此中間件提供的用戶編程接口提交發送數據或連接服務器請求。首先由 Cache 內存池管理模塊負責選取內存塊,把選取的內存塊地址返回給用戶編程接口模塊。條件滿足之后,把“I/O 請求”提交給數據接收和發送完成模塊,異步 I/O 請求提交后,用戶的調用完成。“異步 I/O 請求”交給底層的數據接收和發
圖 4 類的信息圖Fig.4 Chart of class info據結構是與某一個套接字句柄密切相關的各參agPER_HANDLE_CONTEXTIoSocket; //通訊套接字句柄LockCount; //投遞 IOCP 內核對ET_STATUS SocketStatus; //對象狀態SocketIndex;//提供給應用層 ID 值iProtolMark; //協議(TCP 或是 UiReadIoMemSize; //每次讀 I/O 的
河北聯合大學碩士學YTE *pData,ULONGa();//獲取內存塊地OL, *PMEMORY_ 4K。_EightK_Pool:publiszBuffeYTE *pData,ULONGa();//獲取內存塊地OOL, *PMEMORY 8K。內存池管理模
【參考文獻】
相關期刊論文 前3條
1 張昊;廖建新;朱曉民;;增強型動態反饋隨機分發負載均衡算法[J];計算機工程;2007年04期
2 劉健,徐磊,張維明;基于動態反饋的負載均衡算法[J];計算機工程與科學;2003年05期
3 郭成城,晏蒲柳;一種異構Web服務器集群動態負載均衡算法[J];計算機學報;2005年02期
相關博士學位論文 前1條
1 符青云;面向大規模流媒體服務的高性能存儲系統研究[D];電子科技大學;2009年
相關碩士學位論文 前2條
1 魏平;一些預測算法的研究與應用[D];浙江大學;2004年
2 柳旭日;基于負載預測和過載遷移的動態負載均衡研究[D];青島理工大學;2009年
本文編號:2893857
本文鏈接:http://www.malleg.cn/guanlilunwen/ydhl/2893857.html

