原创 zookeeper搭建記錄

zookeeper 相關配置說明: tickTime這個時間是作爲zookeeper服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是說每個tickTime時間就會發送一個心跳。 initLimit這個配置項是用來配置zookee

原创 kafka的一點記錄

1.kafka 主要有哪些角色 每一個kafka節點稱爲一個broker,多個broker節點組成kafka集羣。每個broker 上可以存儲多個topic的分區partition, 每個分區可以有n備份,其中n可以擴展。 kafka的消

原创 kafka 重啓的一些記錄

重啓前集羣的一些狀態記錄:   [els@els1 wchane-1]$ kafka-topics.sh --zookeeper 10.156.10.126:2181 --describe --topic wchane Topic:wch

原创 Synchronized 鎖升級

Synchronized是JAVA鎖的一種形式,是基於JVM層面進行實現。主要有兩種用法 修飾方法 在實現時,class文件有特殊標識符ACC_SYNCHRONIZED作用於同步方法 修飾代碼塊 在實現時,class文件會有兩條指令

原创 AbstractQueuedSynchronizer源碼解析

AQS是什麼呢?? 我認爲AQS是一個同步的輔助工具,當出現對公共資源的競爭時,AQS維持了一個雙向隊列,用於存儲獲取資源的線程對象。 AQS封裝了許多基礎的方法,如等待超時,線程中斷處理等。下面的一張圖是對AQS主要功能的一個較好詮釋。

原创 FutureTask源碼解讀

一篇純粹解讀FutureTask的文章 public class FutureTask<V> implements RunnableFuture<V> { /** * FutureTask的狀態 從NEW-

原创 ThreadPoolExecutor源碼解讀

ThreadPoolExecuor是JDK中默認線程池的實現。下面我們對其進入深入剖析。首先來一張類圖 其繼承關係還是很清晰明瞭的,下面從Executor說起,Executor 這個接口只是定義了一個方法executor(Runnabl

原创 zipkin Span 分析

zipkin 的Span有兩個版本V1及V2,但是最終再代碼的運轉亦或是ES中存儲的所體現的其實都是V2的Span,下面我們來分析分析這兩個Span有什麼異同。 V1的Span 應該是我們所熟悉的,它就是來源與谷歌的那篇論文,擁有CR,C

原创 深入剖析ThreadLocal

ThreadLocal 是什麼? ThreadLocal 是一個線程的工具類,主要用於存儲一些線程的共享變量,各個線程之間互不影響,在多線程及高併發環境下,可以實現無狀態的存儲及調用 ThreadLocal的原理 好久以前。我一直以爲Th

原创 關於redis的一些記錄

redis基本的數據類型:String,list,set,hashMap,sort Setredis 用於分佈式鎖的原理:setnx (如果不存在則設置,否則啥也不動)緩存清理基於LRU算法redis持久化的方式:  redis持久化的方

原创 hashcode

hashcode是什麼?      Object類中的hashcode是對象在內存中的地址轉化爲int。(可當做內存地址)。 hashcode有什麼用? hashcode在Java中主要用於集合中,集合中的元素要求唯一性,當集合中

原创 JAVA5 線程新特性

1.阻塞隊列: BlockingQueue(接口) 重要方法:take(),put(),當爲空,或者容量已滿,自動進入阻塞狀態。 主要實現類:ArrayBlockingQueue,LinkBlockingQueue,Synchronous

原创 java 高併發無鎖框架 Disruptor 系列一

1.介紹:      高併發無鎖框架,基於生產者與消費者模式。其底層以CAS代替鎖操作(利用sun.misc.Unsafe),以環形緩衝區代替傳統的緩存隊列。 2.核心模型 Ring Buffer 數據存儲區域Wait Strateg

原创 ThreadLocal源碼解析

    之前,在我的印象中,一直以爲ThradLocal的實現是這樣子的,有一個全局Map,然後以線程ID作爲key。但是當深入看源碼的時候,發現並不是這樣子的。ThreadLocal本身並不進行變量副本的存儲,所有變量的副本是存在Thr

原创 seaweedfs總結

1.集羣的建立方式,有那些角色master:可以有多個,會進行選舉,主要是記錄文件與fileid的關係,以爲各個valume備份的情況valume:卷服務器,一個卷服務器可以包含多個邏輯卷,不同的卷服務器之間會互爲備份,且其內容是完全一致