1. 程式人生 > >Netty中有哪些自帶的ChannelHandler?

Netty中有哪些自帶的ChannelHandler?

https://blog.csdn.net/weixin_39687783/article/details/80792930

Netty中有哪些自帶的ChannelHandler?

  • SslHandler:負責對請求進行加密和解密,是放在ChannelPipeline中的第一個ChannelHandler 
    這裡寫圖片描述
  • HttpClientCodec和HttpServerCodec:HttpClientCodec負責將請求位元組解碼為HttpRequest、HttpContent和LastHttpContent訊息,以及對應的轉為位元組;HttpServerCodec負責服務端中將位元組碼解析成HttpResponse、HttpContent和LastHttpContent訊息,以及對應的將它轉為位元組

HttpServerCodec 裡面組合了HttpResponseEncoder和HttpRequestDecoder

HttpClientCodec 裡面組合了HttpRequestEncoder和HttpResponseDecoder

  • HttpObjectAggregator: 負責將http聚合成完整的訊息,而不是原始的多個部分
  • HttpContentCompressor和HttpContentDecompressor:HttpContentCompressor用於伺服器壓縮資料,HttpContentDecompressor用於客戶端解壓資料
  • IdleStateHandler:連線空閒時間過長,觸發IdleStateEvent事件
  • ReadTimeoutHandler:指定時間內沒有收到任何的入站資料,丟擲ReadTimeoutException異常,並關閉channel
  • WriteTimeoutHandler:指定時間內沒有任何出站資料寫入,丟擲WriteTimeoutException異常,並關閉channel
  • DelimiterBasedFrameDecoder:使用任何使用者提供的分隔符來提取幀的通用解碼器
  • FixedLengthFrameDecoder:提取在呼叫建構函式時的定長幀
  • ChunkedWriteHandler:將大型檔案從檔案系統複製到記憶體【DefaultFileRegion進行大型檔案傳輸】