最近感覺自己想做點東西來提高下自己,然後和周圍大神瞭解下,決定來寫個web server。通過博客來記錄自己學習和實踐的階段。
首先用了大概一下午的時間瞭解了下http協議的基本規則,https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
瞭解了大概客戶端發來請求裏面的header字斷的值意,對於服務器響應後返回給客戶端的header信息以及和body之間的分割規則。
然後基於socket來建立tcp連接連接,通過同步阻塞io來傳輸數據
然後通過一個handle來處理inputStream ,來得到相應結果.
基本上完成了一個請求的接受,解析,和響應。
第一個版本只是目前只是功能的實現。(先買了本java多線程實踐來夯實下基礎再用到裏面去)
接下來考慮nio來做io複用,還有連接池較少連接建立關閉的開銷,以及以後更展望下做成servlet容器之類的東西。
目前將代碼託管到github上https://github.com/songlijiang/webService
web server ( http 解析 響應 一)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
play framwork Database 'default' needs evolution!
再见孙悟空slj
2020-06-26 09:00:27
從測試到開發,選對方向再出發。
再见孙悟空slj
2020-06-26 09:00:27
關於play框架中要對自己執行原生的sql不能得到page的解決方法。
再见孙悟空slj
2020-02-25 21:57:02
寫在2017展望與回顧
再见孙悟空slj
2018-09-04 14:12:45
開發中坑的總結,防止以後再犯
再见孙悟空slj
2018-09-04 14:12:45
WebSocket的JavaScript例子
再见孙悟空slj
2018-09-04 14:12:45
關於js中 json對象和json字符串的總結
再见孙悟空slj
2018-09-04 14:12:23
Java多線程學習(吐血超詳細總結)
再见孙悟空slj
2018-09-04 14:12:22
optimisticlockexception 樂觀鎖的問題
再见孙悟空slj
2018-09-04 14:12:21