Netty源碼學習總結系列——異步模型全面總結


 

文章集合

Netty的異步模型分析(1)

Netty的異步模型分析(1)

從最常見,最簡單的bind入手——如何正確啟動一個Netty服務器

  • “你”怎么定義異步?

  • 正確啟動服務器的方式

前面扯了那么多Netty的線程調度模型,以及Netty底層的高性能實現細節,從本篇開始看看Netty的API的用法和特性,要知道Netty的所有I/O相關的API都是異步的,當然也可以同步使用,取決於你的需求。為此我將它抽象為一個模型——即Netty的異步模型。

 

Netty的異步模型分析(2)

Netty的異步模型分析(2)

Netty優雅停機的實現原理第一部分:線程池的shutdownGracefully()源碼分析

 本篇其實有些跑題,但是也和異步有關聯性。在拆解Netty線程模型時漏了,現在借着分析異步API,將這塊內容補充在這兒。

 前面Netty的異步模型分析(1)文章中,提到了Netty的優雅停機API,本篇來討論它的實現原理和用到了哪些機制,以及和異步的關聯性。

 

 

Netty的異步模型分析(3)

Netty的異步模型分析(3)

Netty優雅停機的實現原理

  •  NioEventLoop#run方法退出的邏輯分析
    • closeAll()方法源碼分析
    • confirmShutdown()方法源碼分析
    • doStartThread()方法的善后處理
  • Netty優雅停機過程總結 

 

 

Netty的異步模型分析(4)

Netty的異步模型分析(4)

再看Netty優雅停機的用法和認識誤區

  • Netty中單例模式的應用——全局的線程單例執行器

  • 如何正確使用Netty的優雅停機API

 

Netty的異步模型分析(5)

Netty的異步模型分析(5)

JDK的鈎子API介紹以及該API的坑

Netty的鈎子方法使用和實現機制

 

所有異步框架的基礎——復習總結觀察者設計模式

所有異步框架的基礎——復習總結觀察者設計模式

 

Netty為何重復設計JDK的Future接口?

Netty為何重復設計JDK的Future接口?

在討論源碼之前,先看一個特殊的接口——只要用心的用過Netty,都會發現它的異步API返回的都是Future對象,其最上層類型是Netty自己封裝設計的Future接口

 

 

未完待續

 

歡迎關注

dashuai的博客是終身學習踐行者,大廠程序員,且專注於工作經驗、學習筆記的分享和日常吐槽,包括但不限於互聯網行業,附帶分享一些PDF電子書,資料,幫忙內推,歡迎拍磚!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM