原创 NIO系列(三) 零拷貝

1.介紹   在通過IO進行數據讀寫時(例如從文件讀取數據),需要進行多次的數據拷貝,有些拷貝是通過DMA的方式進行的,有些拷貝是CPU 需要從來源把每一片段的資料複製到暫存器,然後把它們再次寫回到新的地方,這種方式效率較低。那所

原创 NIO系列(一) 核心概念介紹

1. 核心概念概述   近期又深入學習了一下NIO,預計寫幾篇NIO相關的博客作爲知識總結,博客內容主要爲筆者個人理解,如果錯誤望指正。   Java NIO是JDK1.4引入的新語法,與傳統IO不同,NIO是非阻塞且面向緩衝區(

原创 dubbo系列(一) SPI

1. 介紹   SPI 全稱爲 Service Provider Interface,是一種服務發現機制。SPI 的本質是將接口實現類的全限定名配置在文件中,並由服務加載器讀取配置文件,加載實現類。這樣可以在運行時,動態爲接口替換

原创 dubbo系列(三) DUBBO IOC、AOP

1. 介紹   在dubbo系列前面的章節中,我們可以創建指定的擴展點對象,那如果擴展點中包含另一個擴展點屬性,屬性是如何創建的,如果我們期望在擴展點目標方法前後增加切面,dubbo又是如何處理的,本章將介紹這些內容。 2.Dub

原创 dubbo系列(二) 自適應SPI

1. 介紹   在上一篇博客中,我們介紹了SPI的基本使用,通過指定擴展點類型,可以創建擴展點的實現類,但是在dubbo中,有些時候並不期望直接創建出一個具體的擴展點實現,而是期望創建出一個未知類型的擴展點實現,在調用這個未知類型