原创 線程通訊(一)

##底層業務線數據隔離 要求:子線程循環跑30次,暫停,然後跑到主線程40次,接着子線程循環跑30次,暫停,主線程跑40次 如此往復,一共交替50次 public class ThreadTest { private s

原创 生產者和消費者(一)

##消費者和生產者(一) 在多線程中,生產者和消費者是一個比較經典的話題, 單消費者單生產者 直接貼代碼(依賴lombok) 生產者代碼: @AllArgsConstructor @Data public class Produc

原创 zookeeper分佈式鎖

  zookeeper有java兩種客戶端  zookeeper和CuratorFramework   一:線程不安全時候的代碼,生成訂單號爲例子 final static CuratorFramework client = Curat

原创 java動態編譯

java動態編譯一部分代碼 javaCode: import lombok.AllArgsConstructor; import javax.tools.JavaCompiler; import javax.tools.Jav

原创 try-catch思考

紅豆生南國,春來發幾枝。願君多采擷,此物最相思。(原創不容易,引用請標記,謝謝)try catch爲一般用於java中的異常處理,1:try()的用法:try()是1.7新增的用法,用來自動關閉括號內能關閉的資源,而不必要手動關閉,其必須

原创 zookeeper(一)

zookeeper即一個分佈式的協調器,很多分佈式系統都在用zookeeper做節點的管理等功能。zookeeper是apache下的一個開源項目,原本是hadoop的一部分,後來有人剝離出來應用於分佈式系統,像如今的很多互聯網熱點技術

原创 動態加載之源碼分析-openfire(一)

執迷不悟,那又如何。openfire是我接觸的第一款通訊開源框架,裏面涉及到mina,插件開發更新等知識,項目完全開源,最近一直在學動態更新,偶爾想起以前讀過openfire的源碼,怕忘記,寫一篇blog來複習一下其中的插件開發內容。與君

原创 動態加載之初體會

永遠年輕,永遠熱淚盈眶。當系統有點小bug或者有點小需求而項目特別大或者無法重啓時是個很麻煩的事情,爲了解決這些問題,熱更新應運而生了。熱更新,即classloader加載class文件。java運行的時候分別用不同的classloade

原创 Spring+Jedis分庫的問題

今天部署新項目,需要用redis的另一個庫,本項目用的是<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <vers