原创 Java 併發編程之ReentrantLock源碼解析

  上一篇中,我們在源碼的角度講了AbstractQueuedSynchronizer的原理,鏈接爲 Java 併發編程之AbstractQueuedSynchronizer源碼解析 ,這一篇中,我們從源碼的角度講一下 Reentrant

原创 Spring 源碼剖析 一、Spring 主要類實現邏輯與繼承關係

  作爲Java Web工程師,我們一般會在項目中使用Spring來作爲項目的基礎框架,那麼接下來,我將帶領大家從源代碼的角度來剖析Spring的運行過程以及運行原理。   這一節我們先講一下Spring 主要類實現邏輯與繼承關係,下面先

原创 Java 併發編程之AbstractQueuedSynchronizer源碼解析

  上一篇中,我們講了 AbstractQueuedSynchronizer 的使用,鏈接爲 Java 併發編程之AbstractQueuedSynchronizer解析 ,這一節中,我們將會從源碼的角度解讀:   一、雙向鏈表:   A

原创 Java 併發編程之AbstractQueuedSynchronizer解析

一、隊列同步器的使用:   隊列同步器AbstractQueuedSynchronizer,它是一個用來構建鎖或者其它同步組件的基礎框架,其中內部使用一個int值來代表同步狀態,使用的是FIFO的形式,所以被稱爲隊列同步器,此同步器作者希

原创 Java 多線程解密之wait等待

  在Java中,可以調用wait()方法使當前線程進入object的等待隊列,這樣當有新的任務需要執行的時候,調用object的notify()或者notifyAll()方法就可以喚起線程,wait(),notify()在線程池、數據庫

原创 Java 併發編程完全解析(一)、Java線程中的狀態

  從今天開始,我將帶領大家走進Java併發編程的大門,第一步,就是了解Java線程中的狀態。   衆所周知,我們在初始化並執行一個線程的時候: new Thread(new Runnable() {

原创 ZooKeeper完全解析(九) 使用Curator來簡化ZooKeeper操作之分佈式鎖的使用

  在上一篇中,我們講解了如何使用Curator來進行增刪改查的操作,鏈接爲 ZooKeeper完全解析(八) 使用Curator來簡化ZooKeeper操作之基本使用 ,之前我們使用過ZooKeeper庫來實現過分佈式鎖,鏈接爲 Zoo

原创 ZooKeeper完全解析(六) 使用ZooKeeper實現分佈式鎖之實現原理

  在上一篇中,我們講了使用ZooKeeper來實現分佈式作業調度系統的原理與實現,鏈接爲 ZooKeeper完全解析(四) 使用ZooKeeper實現分佈式作業調度系統之實現原理  ZooKeeper完全解析(五) 使用ZooKeepe

原创 ZooKeeper完全解析(八) 使用Curator來簡化ZooKeeper操作之基本使用

  在前幾篇中,我們講解了如何使用 Java ZooKeeper 庫來操作ZooKeeper,但是 Java ZooKeeper 庫只實現了ZooKeeper的一些基本操作,其餘分佈式鎖,羣首選舉等等,都沒有給出解決方法,那麼有沒有這麼一

原创 ZooKeeper完全解析(七) 使用ZooKeeper實現分佈式鎖之Java實現

  在上一節中,我們講了使用ZooKeeper來實現分佈式鎖的原理,鏈接爲  ZooKeeper完全解析(六) 使用ZooKeeper實現分佈式鎖之實現原理 ,這一節我們來講一下如何使用Java來實現分佈式鎖:   在實現原理中,我們把使

原创 ZooKeeper完全解析(十) 使用Curator來簡化ZooKeeper操作之羣首選舉

  上一篇我們講解如何使用Curator來完成分佈式鎖的相關操作,這一節中我們使用Curator來實現羣首選舉。   Curator中有兩種類都可以實現羣首選舉,一個是  LeaderLatch, 一個是 LeaderSelector 。

原创 ZooKeeper完全解析(五) 使用ZooKeeper實現分佈式作業調度系統之Java實現

  在上一篇中,我們講了使用ZooKeeper來實現分佈式作業調度系統的原理,鏈接爲:ZooKeeper完全解析(四) 使用ZooKeeper實現分佈式作業調度系統之實現原理 ,這一篇中,我們將會講使用Java實現的一些細節:   需要注

原创 ZooKeeper完全解析(四) 使用ZooKeeper實現分佈式作業調度系統之實現原理

  在上一篇中,我們講解了如何使用Java來操作ZooKeeper,鏈接爲 ZooKeeper完全解析(三) 使用Java操作ZooKeeper,這一篇中,我們將會講解使用ZooKeeper來實現一個分佈式的作業調度系統的原理。   衆所

原创 ZooKeeper完全解析(三) 使用Java操作ZooKeeper

  在上一篇中,我們講解了ZooKeeper的相關操作命令,鏈接爲 ZooKeeper完全解析(二) zooKeeper命令詳解,這一篇中,我們將會詳細的講解如何使用Java操作ZooKeeper。 一、引入依賴與建立連接:   注意Zo

原创 ZooKeeper完全解析(二) zooKeeper命令詳解

  上一篇中我們簡單的講解了zooKeeper的作用與安裝,鏈接爲 ZooKeeper完全解析(一) zooKeeper的介紹與安裝,這次我們詳細的講一下zooKeeper中的命令。   首先需要啓動zooKeeper,並開啓命令行工具,