使用NCindy編寫一個Http伺服器

來源:互聯網
上載者:User
 

使用Ncindy編寫一個玩具Http伺服器

編寫這個程式的意圖是想為Ncindy做一下效能測試,後來想既然寫了程式也順便寫篇文檔,就當作Ncindy的一個使用指引吧。

正如標題所示,首先,我們要編寫的是一個玩具,其次,我們要編寫的是一個Http伺服器。既然是玩具,它肯定不會象Apache那樣穩定和多功能,但是作為伺服器,我還是會儘力讓他高效。

整體結構

我們先來看看一個Http伺服器需要那些模組。首先,我們需要一個模組來負責運行整個程式。其次,程式要接收http請求,我們需要一個對象來監聽某個連接埠,接收進入的Tcp串連。然後,要處理瀏覽器發送的Http請求,我們需要有一個模組來讀取Tcp串連上的資料以及解析這些資料,最後要給瀏覽器發送響應,我們需要一個模組來構造響應對象和發送響應資料。整個程式非常的簡單,類圖如下:

 

 

處理流程

HttpServer目前只能處理GET請求,處理流程如所示:

 

 

代碼詳解

 HttpServer原始碼包

To be continued…

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.