Apache HttpCore官方教程筆記

2021-08-04 16:30:57 字數 4805 閱讀 6101

httpcore是對http協議的基礎封裝的一套元件。

乙個http訊息包含header和可選的body.

- 請求頭(request header)由乙個請求行和一系列的頭字段組成。

- 響應頭(response header)由乙個狀態行和一系列的頭字段組成。

- http訊息必須包含http版本。

// get / http/1.1   # 請求

// http/1.1 200 ok # 響應

http協議處理:

requestcontentresponsecontentrequestconncontrolresponseconncontrolrequestdateresponsedaterequestexpectcontinuerequesttargethostrequestuseragentresponseserver

由於建立乙個連線的過程十分複雜,httpcore並沒有提供對http開放連線的全部支援。

httpconnection#close();  //執行緒非安全

httpconnection#shutdown() //執行緒安全

httpprocessor processor = httpprocessorbuilder.create().add(new responsedate())

.build();

連線池可以用來提高連線的持久化重用效率。

連線池預設僅允許總共20個併發連線,並且只能兩個併發連線每個路由(http標準限制)

以下是連線池設定方法:

conn.bind(socket);

非同步io適合大規模、高負載的場景。

httpcore nio基於reactor模式。

i/o reactor的用途是對i/o事件作出反應,並將事件通知傳送給單個i/o會話。

i/o reactor通常使用少量的dispatch執行緒(建議每個cpu核心乙個)來分派i/o事件通知到大規模的i/o會話或連線。

nhttpclientconnection conn = connfactory.createconnection(iosession);位址

Apache HttpCore 入門手冊目錄

httpcore tutorial httpcore入門 preface 序言 1.httpcore scope httpcore的適用範圍 2.httpcore goals httpcore的產生的目的 3.what httpcore is not httpcore哪些方面沒有涉及 1.funda...

10 10 010 簡介 官網 官網翻譯

netty是 乙個非同步事件驅動的網路應用程式框架,用於快速開發可維護的高效能協議伺服器和客戶端。netty是乙個nio客戶端伺服器框架,可以快速輕鬆地開發協議伺服器和客戶端等網路應用程式。它極大地簡化並簡化了tcp和udp套接字伺服器等網路程式設計。快速簡便 並不意味著最終的應用程式會受到可維護性...

Robolectric Shadows 官網翻譯

robolectric 通過建立乙個包含真實android 框架 的執行時環境來進行工作。這意味著,當你的測試或被測試 呼叫到android框架時,你會獲得更真實的體驗,因為這跟在實際裝置上執行的大部分 都是相同的。然而還是有一些限制 native code 源 android源 不能在你的開發機器...