Netty中Http客戶端、服務端的編解碼器

Netty中Http客戶端、服務端的編解碼器

作爲服務端而言:

主要工作就是接收客戶端請求,將客戶端的請求內容解碼;發送響應給客戶端,並將發送內容編碼
所以,服務端需要兩個編解碼器

  • HttpRequestDecoder (將請求內容解碼)
  • HttpResponseEncoder (將響應內容編碼)
  • HttpServerCodec (等價於上面兩個)

作爲客戶端而言:

主要工作就是發送請求給服務端,並將發送內容編碼;接收服務端響應,並將接收內容解碼;
所以,客戶端需要兩個編解碼器

  • HttpResponseDecoder(將響應內容解碼)
  • HttpRequestEncoder(將請求內容編碼)
  • HttpClientCodec (等價於上面兩個)

Netty中Http消息聚合

處理HTTP時可能接收HTTP消息片段,Netty需要緩衝直到接收完整個消息。要完成的處理HTTP消息,並且內存開銷也不會很大,Netty爲此提供了HttpObjectAggregator。通過HttpObjectAggregator,Netty可以聚合HTTP消息,使用FullHttpResponse和FullHttpRequest到ChannelPipeline中的下一個ChannelHandler,這就消除了斷裂消息,保證了消息的完整。

轉自

https://blog.csdn.net/abc_key/article/details/38061079
https://blog.csdn.net/xiangzhihong8/article/details/52029446

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章