原创 帶有返回值的 Callable 使用

工作中很多涉及到多線程的地方都implemnets Runable 接口 或者是 extends Thread 抽象類,但是這樣子的話得不到返回值。 如果以下場景:      在多線程中計算值,線程結束後需要攜帶返回值。 這時就需要Ca

原创 curator 鎖之 Shared Reentrant Lock

1、描述 共享鎖:全局同步分佈式鎖,同一時間兩臺機器只能有一臺獲得鎖 2、參與類 InterProcessMutex 3、用法 3.1 創建 InterProcessMutex 實例 public InterProcessMutex

原创 批量插入空行

                批量插入空行   A_fengzi 20141228 1、找一空白列,輸入數字1,如:    2、選中數字1,待鼠標變填充狀,下來鼠標,下拉到底端。    3、複製數字4次,出現5次重複數字。需要插

原创 六、Redis 基礎命令--有序集合

1、有序集合是由散列表和跳躍表實現的,所以即使元素再多,獲取中間的元素速度也很快。 2、有序集合爲集合中的每個元素都關聯了一個分數。 3、有序集合與列表的對比      相同點:           都是有序的,都可以獲取某一個範

原创 北漂三年s

"417airyAtWqbTi43fd1y0v0UXwS7hKBZOLA58D6jq9XgJ3xG+xpmAVrvl7rCZBwtGcrtSJl9sgtB" + "S1je33v3QKdtXykuVK6CIJXjbhTc

原创 沒有超時和隔離差點引發的系統雪崩

20170602公司開始618的第二天,收到了業務線訂單量下滑的告警。 查看監控平臺,移動端下單接口可用率掉到了99.999%,同時服務端調用次數也有一定幅度的下降。既然可用率不到100%,接口肯定有異常,遂根據關鍵詞搜索錯誤日誌,但是

原创 一、Hystrix的類是如何組織的

          在Hystrix中,類的引用都是單實例對象,由靜態工廠方法創建,使用時如:xxx.Factory.getInstance() 。如獲取一個HystrixCircuitBreaker實例:HystrixCircuitB

原创 ConcurrentHashMap的使用場景

在一次項目中,需要設計一個map存儲線程資源池,爲每種請求類型創建一個線程池。當該類型所對應的線程池中的所有線程都達到工作飽和狀態,即是沒有多餘可用線程,則自動丟棄該類型的請求,以此來保證其他類型的請求不受影響。這中設計屬於資源隔離中的

原创 設計模式--適配器模式

源碼地址:https://github.com/Afengzi/design-pattern/tree/master/src/main/java/com/afengzi/design/adapter 如何把一個立方體放入到一個圓形的洞中

原创 【Hystrix權威指南四】Hystrix隔離策略源碼分析二

  信號隔離               TryableSemaphore 接口定義了信號隔離的行爲,內部藉助AtomicInteger類實現資源的分配。HystrixProperty<Integer>

原创 二、Hystrix隔離服務的實現原理---線程池隔離

     Hystrix組件提供了兩種隔離的解決方案:線程池隔離和信號量隔離。兩種隔離方式都是限制對共享資源的併發訪問量,線程在就緒狀態、運行狀態、阻塞狀態、終止狀態間轉變時需要由操作系統調度,佔用很大的性能消耗;而信號量是在訪問共享資

原创 如何設計一個支持高併發的高可用服務

     如何設計一個支持高併發的高可用服務?在前期設計時應該從哪些方面入手?      明確的一點:沒有哪一個系統是從一開始設計時就是高可用的,支持高併發的。都是在產品的發展壯大中,隨着業務量的增加,逐漸對系統架構進行一步步升級。所以出

原创 設計模式--適配器、代理、裝飾、外觀模式的區別與聯繫

設計模式是爲了提高代碼的可擴展性可讀性,在日常的需求中,逐步總結歸納出來的。是每個程序員都可以在工作中遇到的,用心去發現去理解才能真正的用到工作中,不要爲了用而用。 設計模式從功能上一般分爲創建型、結構型、行爲型 三種類型。 本節要說的

原创 Watcher 實現機制之客戶端註冊

Zookeeper 提供的了分佈式數據的發佈/訂閱功能,通過 Watch 機制來實現這種分佈式的通知功能。 Zookeeper 允許客戶端向服務器註冊一個Watch監聽,當服務端的一些指定的事件觸發了這個Watch ,就會向指定的客戶端

原创 設計模式之--裝飾者模式

源碼地址:https://github.com/Afengzi/design-pattern/tree/master/src/main/java/com/afengzi/design/decorative 以下講解及UML類圖都是基於上