大規模叢集下的Hadoop高併發以及高效能架構原理總結【石杉的架構筆記】
歡迎關注個人公眾號:石杉的架構筆記(ID:shishan100) 週一至週五早8點半!精品技術文章準時送上! “ 又到週末,老規矩,週末不給大家送上“燒腦”的技術文章,我們稍微停一下腳步,總結一下之前
歡迎關注個人公眾號:石杉的架構筆記(ID:shishan100) 週一至週五早8點半!精品技術文章準時送上! “ 又到週末,老規矩,週末不給大家送上“燒腦”的技術文章,我們稍微停一下腳步,總結一下之前
“ 上一篇文章我們聊了聊Redisson這個開源框架對Redis分散式鎖的實現原理,如果有不瞭解的兄弟可以看一下:拜託,面試請不要再問我Redis分散式鎖的實現原理。 今天就給大家聊一個有意思的話題:每
歡迎關注個人公眾號:石杉的架構筆記(ID:shishan100) 週一至週五早8點半!精品技術文章準時送上! “ 上一篇文章我們聊了聊Redisson這個開源框架對Redis分散式鎖的實現原理,如果有
通過前面的文章,我們已經瞭解了 AQS(AbstractQueuedSynchronizer) 內部的實現與基本原理。現在我們來了解一下,Java中為我們提供的Lock機制下的鎖實現-- ReentrantL
java在做日期轉換時我們會使用SimpleDateFormat做時間轉換,但其實SimpleDateFormat不是執行緒安全的,如果SimpleDateFormat用static宣告或只例項化一次被多個
其實從一開始瞭解到go的goroutine概念就應該想到,其實go應該就是在核心級執行緒的基礎上做了一層邏輯上的虛擬執行緒(使用者級執行緒)+ 執行緒排程系統,如此分析以後,goroutine也就不再那麼神祕了
底層實現原理 在JDK1.8以前版本中,HashMap的實現是陣列+連結串列,它的缺點是即使雜湊函式選擇的再好,也很難達到元素百分百均勻分佈,而且當HashMap中有大量元素都存到同一個桶中時,這個桶會有一
關於程序的定義,其實有很多: 一個正在執行的程式 計算機中正在執行的程式的一個例項 可以分配給處理器並由處理器執行的一個例項。 個人覺得比較好的定義是: 程序是具有一定獨立
一、阻塞IO(blocking IO) from concurrent.futures import ThreadPoolExecutor import socket server = so
併發的挑戰 上下文切換: 是消耗資源的操作,進入核心態需要 資源限制 : I/O 資料庫,cpu核數 死鎖 :等待不到需要的資源 volatile 記憶體語義 當寫一個volatile
前言 上篇部落格的內容是守護程序,對於作業系統來說可以在後臺執行一些程式.這篇的內容是互斥鎖,在上上篇部落格上說到程序記憶體空間互相隔離,所以可以通過共享檔案來操作同一個檔案,那麼這樣操作的話會發生什麼呢?
一、協程的介紹 協程:是單執行緒下的併發,一句話說明什麼是執行緒:協程是一種使用者態的輕量級執行緒,即協程是由使用者程式自己控制排程的。 對比作業系統控制執行緒的切換,使用者在單執行緒內
一.Actor模型介紹 在單核 CPU 發展已經達到一個瓶頸的今天,要增加硬體的速度更多的是增加 CPU 核的數目。而針對這種情況,要使我們的程式執行效率提高,那麼也應該從併發方面入手。傳統的多執行緒方
AQS 的實現原理 學完用 AQS 自定義一個鎖以後,我們可以來看一下剛剛使用過的方法的實現。 分析原始碼的時候會省略一些不重要的程式碼。 AQS 的實現是基於一個 FIFO 佇列的,每一個等待的
閱讀本文章前需要了解 CAS 操作是什麼。 首先大致介紹一下需要講到的幾個類,只需要理解這幾個類是什麼關係即可,後面會有詳細解析。 Unsafe:這個類提供了 native 方法,未開源,提