原创 DataSketches HLL Sketch module

上圖是官網的介紹,翻譯後的意思是此模塊提供Apache Druid聚合器爲不同的計數基於HLL sketch來自datasketches數據庫。攝入的時候這個聚合器創建HLL sketch對象存儲在Druid的segments

原创 深入理解JIT

文章目錄1、簡介2、HotSpot編譯寄存器和主存3、初級調優:客戶模式或服務器模式4、中級編譯器調優4.1、優化代碼緩存4.2、編譯閾值4.3、檢查編譯過程5、高級編譯器調優編譯線程 1、簡介 即時編譯器,使用即時編譯器可加速J

原创 MySQL實現高可用——MHA

文章目錄一、簡介二、MHA服務1.服務角色2.提供的工具3.工作原理 一、簡介 MHA(Master HA)是一款開源的 MySQL 的高可用程序,它爲 MySQL 主從複製架構提供了 automating master fail

原创 劍指Offer(GC)——老年代垃圾收集器

垃圾收集器之間的聯繫,本文主要講解一下老年代收集器。 Serial Old收集器(-XX:+UseSerialOldGC,標記-整理算法) 是Serial GC老年代版本,也是單線程的進行垃圾收集的時候必須暫停所有的工作線程,同

原创 劍指Offer(網絡)——TCP三次握手

簡單來介紹一下傳輸控制協議TCP: TCP協議是面向連接的、可靠的、基於字節流的傳輸層通信協議; 當數據傳輸的時候,應用層向TCP發送數據流,然後TCP會將應用層的數據流分割成報文段併發送給目標節點的TCP層; TCP爲了保證不

原创 劍指Offer(Spring)——AOP

AOP——面向切面編程 軟件有一個重要的概念:關注點分離:不同的問題交給不同的部分去解決。 AOP是一種關注點分離的技術,寫Web時需要寫緩存、業務邏輯、日誌、出錯處理等等東西都要放在一起,爲了將業務各個功能分離開切面就出現了,當

原创 劍指Offer(鎖)——CAS

CAS是一種高效實現線程安全性的方法: 支持原子性的更新操作,適用於計數器,序列發生器等場景; 屬於樂觀鎖機制,號稱lock-free(無鎖),但是實際上還是存在底層鎖的; CAS操作失敗時候由開發者決定是繼續嘗試還是執行別的操

原创 劍指Offer(鎖)——synchronized底層實現原理

文章目錄1、對象頭2、Mark Work3、Monitor4、自旋鎖和自適應鎖自旋鎖5、自適應鎖6、鎖消除7、鎖粗化8、synchronized的四種狀態偏斜鎖輕量級鎖 實現synchronized的基礎: Java對象頭 Mo

原创 劍指Offer(線程)——如何實現處理線程的返回值

run方法是Thread內部類中一個重寫的方法沒有參數傳入,也沒有返回值。如果想在實現run方法時傳參有三種方法: 構造函數傳參 成員變量傳參 回調函數傳參 瞭解瞭如何在run方法內進行傳參之後,那麼要如何實現處理線程的返回值

原创 劍指Offer(線程)——線程start和run方法的區別

先從一個簡單的程序看起: 使用start(): public class ThreadTest { private static void attack(){ System.out.println("fi

原创 劍指Offer(Spring)——IOC原理

IOC(Inversion of Control):控制反轉,是Spring最核心部分也是任意組件的基本,是一種思想,可以使你從繁瑣的對象嵌套中解鎖出來更進一步突出面向對象,在這之前先來了解一下依賴注入(Dependency In

原创 劍指Offer(GC)——常見面試題

文章目錄1、Object的finalize()方法是否與C++的析構函數一樣2、Java中強引用、軟引用、弱引用、虛引用之間的區別(1)、強引用(2)、軟引用(3)、弱引用(4)、虛引用(5)、引用隊列 1、Object的fina

原创 疏漏總結(五)

文章目錄1、線程池的最大核心線程數的意義2、線程池的狀態3、http 1.1版本新特性4、何時需要rehash5、Full GC觸發條件6、何種場景需要自定義類加載器7、分段和分頁區別8、最左前綴原則9、G1 1、線程池的最大核

原创 疏漏總結(二)——volatile

volatile是面試中常常被問到的,現在來總結一下volatile的關鍵地方。 volatile是如何實現禁止指令重排的??? 先來說一下什麼是指令重排: int m = 1; int n = 1; JVM中的順序可能是先執行

原创 劍指Offer(類庫)——Java的IO機制

本文主要介紹一下BIO、NIO、AIO Block-IO:基於字節流的InputStream和OutputStream,基於字符流的Reader和Writer,同時也包括Socket那些java.net包下的類等。 BIO的屬性是