原创 集合框架源碼分析(jdK1.7)(六)LinkedList

目錄 1 LinkedList的數據結構 2主要參數 3.構造方法 4. add(E e)方法 5.add(int index, E element) 6.get(int index) 7.push(E e)方法 8 pop()方法 9.

原创 併發編程(一)多線程基礎篇

目錄 1.什麼是線程: 2. 爲什麼要使用多線程 3.線程優先級 4.線程狀態、 4.3volatile和synchronized關鍵字(JVM內存模型中講解過) 4.4對象、對象的監視器、同步隊列和執行線程之間的關係。 4.5等待/通知

原创 集合框架源碼分析(jdK1.7)(五)ArrayList

目錄 1.ArrayList數據結構 2.主要參數 3.核心構造方法 3.1初始容量(10) 4. add(E e)方法 5.add(int index, E element)方法 6擴容機制 6.1 Arrays.copyOf(T[]

原创 集合框架源碼分析(jdK1.7)(一)HashMap

目錄 1.散列表簡介 1)什麼是哈希表: 2)特點(優點): 3)結構: 4)缺點: 5)散列法 6)散列衝突: 2.HashMap的數據結構 3主要參數 4.HashMap的核心構造方法 4.1初始化容量 5.HashMap的Put方法

原创 (三)zookeeper安裝詳解

  深入瞭解Zookeeper系列 1.zookeeper安裝(單機環境) 1.1下載zookeeper的安裝包、虛擬機、Centos7.0 https://pan.baidu.com/s/17q50LFPGSyP7d3iN3G4nsA 

原创 (二)初識Zookeepr 深入瞭解Zookeeper系列

深入瞭解Zookeeper系列1.Zookeepr是什麼Zookeeper是一個典型的分佈式數據一致性的解決方案,分佈式應用程序可以基於它實現諸如數據發佈/訂閱,負載均衡,命名服務,分佈式協調/通知。集羣管理,Master選舉,分佈式鎖和

原创 (一)序列化和反序列化

1.概念 序列化:把對象轉換爲字節序列的過程稱爲對象的序列化。 反序列化:把字節序列恢復爲對象的過程稱爲對象的反序列化。 對象的序列化主要有兩種用途: 把對象的字節序列永久地保存到硬盤上,通常存放在一個文件中; 在網絡上傳送對象的字節序列

原创 2.組播協議 Multicast

分佈式基礎篇 對於某些信息,多個接受者都可能感興趣的時候,那麼我們應該怎麼解決呢?我們可以向每個接受者單播一個數據副本,但是如果這樣的話,效率會低;而且同樣的數據發送多次,浪費帶寬。解決方案是,我們可以把複製數據包的工作交給網絡來做,而不

原创 集合框架源碼分析(jdK1.7)(三)TreeMap

目錄 1.紅黑樹簡介 1.1二叉樹 1.2平衡二叉樹 1.3紅黑樹 1.4紅黑樹添加操作 1.5左旋、右旋 1.6刪除操作 2.TreeMap的數據結構 3.主要參數: 4.Treem主要構造方法: 5.TreeMap的Put方法 5.1

原创 (四)理解zookeeper設計原理及ZAB協議和Leader選舉

深入瞭解Zookeeper系列1.分佈式架構存在問題問題一:(數據同步問題)3臺服務器都有數據庫鏈接的配置文件,如果配置更改怎麼保證個節點的數組一致性?問題二:(任務執行順序問題)三個服務都是相同的,怎麼保證一個task任務只在一臺服務器

原创 集合框架源碼分析(jdK1.7)(二)HashTable

目錄 1.數據結構 2.主要參數 3.HashTable的核心構造方法 3.1初始化容量 3.HashTable的Put方法 3.1擴容方法rehash(); 4.HashTable的get方法 5.remove方法 6.總結: 1.數據

原创 集合框架源碼分析(jdK1.7)(八) HashSet

目錄 1數據結構 2.主要參數 3.核心構造方法 4 add(E e) 5.HashSet遍歷的3種方式 1數據結構 private transient HashMap<E,Object>map; 可以看出HashSet是有一個HashM

原创 集合框架源碼分析(jdK1.7)(十) 集合框架對比總結

oracle java tutorial官方文檔鏈接是:https://docs.oracle.com/javase/tutorial/collections/index.html 1.核心集合接口層次關係同類對比Map系列名稱 特點 數

原创 併發編程(二)Java中常用的鎖總結

  目錄  1.鎖的基本概念       2.Java集成結構圖  3.用法 3.1 synchronized 3.1 ReentrantLock(可重入鎖) 3.2 ReentrantReadWriteLock(讀寫鎖) https:/

原创 (二)RMI詳解

1.RMI的概述:  RMI(remote method invocation)  , 可以認爲是RPC的java版本  RMI使用的是JRMP(Java RemoteMessageing Protocol), JRMP是專門爲java定