原创 CDH啓動tserver報錯:java.lang.IllegalStateException: Multiple processes with same name

【現象】 在CDH界面上重啓kudu tserver時界面報錯:   【原因】 1.首先查看cloudera-scm-agent的日誌cm/log/cloudera-scm-agent/supervisord.log,看到: 2018-

原创 fsync和fdatasync是否一定能保證數據寫入磁盤不會丟?

【page cache由來】         在UNIX和linux系統上,在數據被寫入到磁盤上之前,內核通常先將該數據複製到其中一個緩衝區中,如果該緩衝區尚未寫滿,則並不將其排入輸出隊列,而是等待其寫滿或者當內核需要重用該緩衝區以便存放

原创 centos 6下apache kudu安裝報錯Error during hole punch test問題解決

【環境】 centos 6.8、6.9版本,x86 64位 CDH版本CDH-5.13.3-1.cdh5.13.3.p0.2 kudu版本1.5.0   【過程和報錯】 通過cloudera manager界面,在一個tablet ser

原创 Java工程師從入門到大神到技術總監養成之路

一、基礎篇JVMJVM內存結構堆、棧、方法區、直接內存、堆和棧區別Java內存模型內存可見性、重排序、順序一致性、volatile、鎖、final垃圾回收內存分配策略、垃圾收集器(G1)、GC算法、GC參數、對象存活的判定 JVM參數及調

原创 java.util.concurrent.CopyOnWriteArrayList如何實現實現寫入的線程安全性

CopyOnWriteArrayList和CopyOnWriteArraySet也是線程安全的集合,其中所有的修改線程對底層數組進行復制。當線程對其讀,直接讀取集合本身無需加鎖和阻塞;當線程對其寫入(包括調用add,remove,set等

原创 java裏String類的比大小compareTo方法實現分析

代碼實例:System.out.println(new String("ab").compareTo(new String("kld")));java如何對字符串進行比較的?源碼分析:String.classprivate final c

原创 pyhanlp用戶自定義詞典添加

pyhanlp是python版封裝的的HanLP,項目地址:https://github.com/hankcs/pyhanlp經過測試,HanLP比nltk在中文分詞和實體識別方面都更好用。如何向pyhanlp添加自定義的詞典?以pyth

原创 jdk1.8下的自動裝箱cache

【現象】在jdk 1.8.0_111下代碼:public static void main(String[] args) { Integer a = 2; Integer b = 2; System.out.println(a==b);

原创 java常考面試題-字符串比較

float a = 3.0f;int b = 3;System.out.println(a==b); //trueString c = "hello";String d = "hello";System.out.println(c==d)

原创 CAS操作詳解

1.在說CAS操作的開始,我們先了解一些術語2.處理器是如何實現原子操作32位IA-32處理器使用基於對緩存加鎖或總線加鎖的方式來實現多處理器之間的原子操作。首先處理器會自動保證基本的內存操作的原子性。處理器保證從系統內存中讀取或寫入一個