原创 JVM必知必會:G1垃圾回收器

JVM必知必會:G1垃圾回收器   G1是一種服務端應用使用的垃圾收集器,目標是多核、大內存的機器上,它在大多數情況下可以實現指定的GC暫停時間,同時還能保持較高的吞吐量。   特點: 併發收集 壓縮空閒空間不會延長GC的暫停時間 更易預

原创 設計模式:學習筆記(15)——狀態模式

設計模式:學習筆記(15)——狀態模式  

原创 Java微服務:緩存穿透和緩存雪崩

Java微服務:緩存穿透和緩存雪崩 緩存穿透   緩存是對數據庫的一道保護牆,緩存穿透就是衝破了我們的保護牆。即調用方傳來的永遠都是我們緩存中不存在的Key,這樣每次都需要去數據庫中查詢一次,當大量這樣的請求過來時,瞬時數據庫的壓力會很大,

原创 馬士兵多線程直播筆記(下)

馬士兵多線程直播筆記(下)  CPU與緩存   緩存L1、L2、L3失效後回去內存中找,然後依次返回L3、L2、L1.      緩存一致性協議(MESI)   同一個緩存行在多個CPU內存中,一個修改後,其他CPU也需要感知!   緩存行

原创 馬士兵多線程直播筆記(上)

線程與進程 進程:操作系統分配資源的基本單位。 線程:CPU調度(執行)的基本單位。共享進程的資源。   一個CPU同一時間只能執行一個線程,表象是線程切換(Context Switch)。對CPU來說,寄存器存數、ALU計算、PC(程

原创 設計模式:學習筆記(6)——抽象工廠模式

設計模式:學習筆記(6)——抽象工廠模式 抽象工廠模式   在工廠方法模式中具體工廠負責生產具體的產品,每一個具體工廠都對應一種具體產品,工廠方法也具有唯一性,一般情況下,一個具體工廠只有一個工廠方法或者一組重載的工廠方法。但是有時候我們需

原创 設計模式:學習筆記(14)——工廠方法模式

設計模式:學習筆記(14)——工廠方法模式 理解   在簡單工廠模式中只有一個工廠類,該工廠類處於對產品類進行實例化的中心位置,它需要知道每一個產品類的實現細節,並決定何時實例化哪一個產品類。簡單工廠模式最大的缺點就是當有新產品要加入系統中

原创 設計模式:學習筆記(3)——簡單工廠模式

設計模式:學習筆記(3)——簡單工廠模式 簡單工廠模式   我們都知道工廠是根據產品類的圖紙生產產品的。簡單工廠模式中,一個工廠類處於對產品實例化的中心位置上,它知道每一個產品,他決定哪一個產品類應當被示例化。   簡單工廠模式允許客戶端相

原创 Java高併發教程:詳解NIO Selector類

Java高併發教程:詳解NIO Selector類 NIO Selector   Java NIO Selector可以檢查一個或多個Java NIO Channel實例,並確定哪些通道可供使用,例如read或write。 這樣,單個線程可

原创 Java高併發教程:詳解NIO Buffer類及其屬性

Java高併發教程:詳解NIO Buffer類及其屬性 NIO Buffer   NIO的Buffer(緩存區)本質上是一個內存塊,既可以寫入數據,也可以從中讀取數據。NIO的Buffer類,是一個抽象類,位於java.nio包中,其內部是

原创 Java高併發教程:詳解NIO Channel(通道)類

Java高併發教程:詳解NIO Channel(通道)類 NIO Channel   NIO中一個連接用一個Channel來表示。從更廣泛的層面來說,一個通道可以表示一個底層的文件描述符,例如硬件設備、文件、網絡連接等。然後,遠遠不止如此,

原创 Java高併發教程:Future異步回調模式

Java高併發教程:Future異步回調模式 Join異步阻塞    FutureTask異步回調    Guava異步回調   Netty的異步回調   Netty和Guava一樣,實現了自己的異步回調體系:Netty繼承和擴展了JDK

原创 Java高併發教程:Reactor反應器模式

Java高併發教程:Reactor反應器模式 Reactor反應器模式   到目前爲止,高性能網絡編程都繞不開反應器模式。很多著名的服務器軟件或者中間件都是基於反應器模式實現的,如Nginx、Redis、Netty。   反應器模式是高性能

原创 劍指Offer:連續子數組的最大和

劍指Offer:連續子數組的最大和 題目描述   輸入一個整形數組,數組裏有正數也有負數。數組中的一個或連續多個整數組成一個數組。求所擁有子數組的和的最大值。要求時間複雜度爲O(n) 題目分析   我們可以用動態規劃的思想來解決這個問題。以

原创 劍指Offer:數組中的逆序對

劍指Offer:數組中的逆序對 題目描述   在數組中的兩個數字,如果前面一個數字大於後面的數字,則這兩個數字組成一個逆序對。輸入一個數組,求出這個數組中的逆序對的總數P。並將P對1000000007取模的結果輸出。 即輸出P%100000