需要金幣:![]() ![]() |
資料包括:完整論文 | ![]() |
![]() |
轉換比率:金額 X 10=金幣數量, 例100元=1000金幣 | 論文字數:11970 | ![]() | |
折扣與優惠:團購最低可5折優惠 - 了解詳情 | 論文格式:Word格式(*.doc) | ![]() |
摘要:在互聯網日益發達的今天,越來越多的人們通過web瀏覽器訪問位于世界各地的數據資源。對于訪問web的客戶來說我們希望自己的每次訪問都能得到及時的響應,對于提供web的商家來說我們希望既能及時的處理用戶的訪問請求又能處理大量用戶的同時請求,因此一個高并發,高效率的HTTP服務器對于通過web交流的雙方來說都是及其重要的。 - 本文探究了一個高并發的HTTP服務器的設計與實現。在非網絡部分,我們設計和封裝了一個較為高效的線程池,異步日志庫,以及一個定時器。在TCP網絡部分,通過IO multiplexing我們設計并實現了一個Reactor事件處理框架,同時設計并實現了一個使用RALL方法封裝的TCP網絡庫。最后我們使用上述的功能設計并實現了一個HTTP服務器模塊,通多對HTTP協議的解析,我們實現了HTTP協議中的GET、 POST、HEAD等主要功能。 關鍵詞:HTTP;TCP;Reactor;線程池;非阻塞網絡庫;RALL
目錄 摘要 Abstract 1 Linux系統介紹-1 2 TCP/IP和HTTP協議簡介-2 2.1 TCP/IP協議簡介-2 2.2 HTTP協議簡介-2 3 服務器系統設計與實現-3 3.1 并發模型的選擇-3 3.2 線程池的設計與實現-4 3.2.1線程同步-4 3.2.2 線程類的設計與實現-5 3.2.3 線程池的設計與實現-6 3.3 定時器的設計與實現-7 3.4 日志庫的設計與實現-8 3.5 Reactor事件處理框架-9 3.5.1 事件循環-9 3.5.2 事件分發-10 3.5.3 IO multiplexing-10 3.6 TCP網絡封裝-12 3.6.1 使用RALL方法封裝Socket文件描述符-12 3.6.2 TCP連接-12 3.6.3 緩存類的設計-13 3.6.4 Tcp Server整體封裝-14 3.7 HTTP封裝-15 結 論-17 參 考 文 獻-18 致 謝-19 |