原创 由淺入深瞭解線程池之源碼初探

前面初步瞭解了下線程池,包括如何定義一個線程池,線程池的常用構造參數以及jdk的默認實現,今天想結合源碼來聊一聊線程池加載任務的順序、線程池如何回收線程等問題; 前置知識瞭解 ctl參數 private final AtomicInteg

原创 由淺入深瞭解線程池之初識線程池

之前簡單介紹了下BlockingQueue也算是爲本文做了一個前置鋪墊了,今天就來介紹下線程池,因爲如果每個線程任務都要顯示的手動創建的話會大大浪費資源,所以用線程池來統一維護線程的生命週期;下面先介紹瞭解線程池需要提前知道的相關類或接口;

原创 redis位圖(bitmap)常用命令的解析

描述   bitmap是redis封裝的用於針對位(bit)的操作,其特點是計算效率高,佔用空間少,常被用來統計用戶簽到、登錄等場景 常用命令及解析 常用命令 setbit key offset value   給key在指定位索引位置上(

原创 BlockingQueue家族成員一覽

      最近在複習多線程的知識,必然少不了要掃描一遍JUC包下的各個類或接口,今天就先來聊一聊阻塞隊列BlockingQueue;       BlockingQueue是jdk1.5發佈的JUC包下的一個工具類,他提供了天生阻塞的拿(

原创 springcloud組件梳理之hystrix

        在微服務架構體系中,各服務中間的相互調用是常態,沒有哪個服務能保證自身百分百不會出問題,然後再加上網絡的波動以及環境等問題,服務間調用的穩定性無法保證,這時候就需要一個有容錯能力的組件來介入,當調用出現問題時能夠做出及時響應

原创 通過openFeign的實際調用來感受它到底香不香

    最近剛好要和另一個服務進行頻繁的遠程調用,即使對restTemplate也有所封裝,但還是厭倦了restTemplate發送時的各種參數拼接,於是決定嘗試下openFeign;     feign是一個聲明式的Web服務客戶端,它使

原创 mysql是如何實現mvcc的

mvcc的概念 mvcc即多版本併發控制,是一種併發控制的策略,能讓數據庫在高併發下做到安全高效的讀寫,提升數據庫的併發性能; 是一種用來解決併發下讀寫衝突的無鎖解決方案,爲事務分配單向增長時間戳,爲每次修改保存一個版本,版本號與時間戳關聯

原创 spring源碼學習之旅(二) 結合源碼聊聊FactoryBean

一、什麼是FactoryBean           FactoryBean是由spring提供的用來讓用戶可以自定bean創建的接口;實現該接口可以讓你的bean不用經過spring複雜的bean創建過程,但同時也能做到拿來即用,按需加載

原创 淺談新生代爲什麼要分三塊區域並且比例爲什麼是8:1:1

  如題最近網上看到了一個某大廠的面試題,新生代爲什麼分區網上答案比比皆是,爲什麼是8:1:1我是沒搜到什麼有價值的答案,今天結合這個題目談談自己的粗淺想法,如有不對還望指正;另外需要說明的是,接下來聊的都是基於G1之前的垃圾收集器;   

原创 spring源碼(一) 環境搭建(各種坑的解決辦法)

  上次搭建spring源碼的環境還是兩年前,依稀記得那時候也是一頓折騰,奈何當時沒有記錄,導致兩年後的今天把坑重踩了一遍,還遇到了新的坑,真是欲哭無淚;爲了以後類似的事情不再發生,這次寫下這篇博文來必坑;   一、源碼下載   githu

原创 使用@Transactional註解的方法所在的類獲取不到註解的解決方案

   前段時間遇到一個問題,一個service叫做A吧,有多個實現類分別是B,C,D,需要根據前端傳的不同參數去匹配不同的實現類,我就自定義了一個註解@OrderDeal放在B,C,D上面,然後匹配前端傳的值和註解裏的value來匹配對應的

原创 策略模式在工作的中的簡單應用

  最近閒的沒事決定重溫下常見的設計模式,順便結合工作中的一些運用記錄下這篇筆記,本文先來聊聊策略模式!     策略模式也是比較常見的一種設計模式了,簡單來說,就是某一功能的實現具有不同的實現邏輯,但是最終完成的動作都是一致的,這時候想要

原创 基於springboot構建dubbo的入門demo

  之前記錄了構建dubbo入門demo所需的環境以及基於普通maven項目構建dubbo的入門案例,今天記錄在這些的基礎上基於springboot來構建dubbo的入門demo;衆所周知,springboot極大的簡化了我們的日常開發中的

原创 dubbo入門學習筆記之入門demo(基於普通maven項目)

  注:本筆記接dubbo入門學習筆記之環境準備繼續記錄;   (四)開發服務提供者和消費者並讓他們在啓動時分別向註冊中心註冊和訂閱服務   需求:訂單服務中初始化訂單功能需要調用用戶服務的獲取用戶信息的接口(訂單服務與用戶服務分別部署在不

原创 細數本地連阿里雲上mysql8遇到的坑

  最近兩個月忙成狗,給了自己一個冠冕堂皇的不記錄博客的藉口,今天咬牙記錄一篇本地連阿里雲mysql遇到的各種坑;   昨天利用妹妹的學生身份買了臺廉價的阿里ECS,購買成功後的第一反應當然是把本地的mysql遷移到服務器上以減輕我這個11