原创 JDK源碼分析-——圖解版——HashMap

一圖勝千言:最好結合源碼對照看理解執行原理:   對應HashMap 核心源代碼:       需要注意的幾個關鍵點 : 1.HashMap 實現了Map所有的操作,允許null作爲 key/value;無序(因爲h&length

原创 Java開發中基本命名規範

Java命名規範 每個概念一個詞 CRUD操作 方法名約定 新增 create 添加 add 刪除 remove 修改 update 查詢(單個結果) get 查詢(多個結果) list

原创 【微服務架構】-【MySQL數據類型】-MySQL5.7新特性(對 JSON數據類型 支持)

JSON是數據傳輸與存儲  數據格式,在微服務中大量使用,重點翻譯下MySQL官方對JSON的支持,方便後期業務JSON數據處理工作。 JSON數據類型 創建JSON值 JSON值的規範化,合併和自動包裝 搜索和修改JSO

原创 技術架構—各類技術概念與區別答疑—(Java與大數據)

 微服務到底是個啥? 發展歷程: 單體服務(發佈就是一個war或jar)-——分佈式服務(分佈式環境下手動部署)                    ——>微服務(全自動獨立部署)  服務:提供的業務功能  重點在於對微的解釋,但僅僅

原创 Spring源碼-Bean的獲取

目錄標題Spring IOC 總結Bean的加載過程 Spring IOC 總結 Spring 啓動-> 讀取Bean配置信息-> 生成Bean配置註冊表-> 由註冊表實例化Bean,裝配好Bean之間的依賴關係-> Bean放入

原创 架構整合集成—分佈式標配組件—Spring Boot 集成 ElasticSearch

Spring Boot 集成 ElasticSearch 1. pom.xml 中添加依賴 <dependency> <groupId>org.springframework.boot</groupId> <artif

原创 分佈式系統-常用數據結構實現-—隊列與棧

棧 上大學時候 教科書 叫做堆棧,傳達的是一種後入先出的算法思想。但其實我們知道,堆和棧是兩個截然不同的東西。 堆棧其實是數據結果中的兩個概念 ,是存放數據的方式,堆:順序進出 (FIFO);棧:後進先出(Last-In/First-

原创 結合JDK學習設計模式-—行爲型設計模式——責任鏈模式

簡單地介紹: 責任鏈(Chain Of Responsibility)   使多個對象都有機會處理請求,從而避免請求的發送者和接收者之間的耦合關係。將這些對象連成一條鏈,並沿着這 條鏈發送該請求,直到有一個對象處理它爲止。 沒有

原创 資深工程師必備技能-—數據庫篇—上篇

資深工程師必備技能-<數據庫篇>數據庫系統原理事務併發一致性鎖 數據庫系統原理 事務 概念 事務指的是滿足 ACID 特性的一組操作,可以通過 Commit 提交一個事務,也可以使用 Rollback 進行回滾。 ACID 原子

原创 分佈式系統開發-——常用工具類內部使用細節——0001

NIO 實現的文件快速複製   package com.cheri.io; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io

原创 分佈式系統-常用算法實現-緩存算法

常用算法 LRU 對算法的解釋如下: 訪問某個節點時,將其從原來的位置刪除,並重新插入到鏈表頭部。這樣就能保證鏈表尾部存儲的就是最近最 久未使用的節點,當節點數量大於緩存最大空間時就淘汰鏈表尾部的節點。 爲了使刪除操作時間複雜度爲

原创 《系統設計》—架構師必備知識—系統設計基礎—0002

一、分佈式鎖 在單機場景下,可以使用語言的內置鎖來實現進程同步。但是在分佈式場景下,需要同步的進程可能位於不同的節點 上,那麼就需要使用分佈式鎖。 阻塞鎖通常使用互斥量來實現: 互斥量爲 0 表示有其它進程在使用鎖,此時處於鎖定狀

原创 《系統設計》—架構師必備知識—系統設計基礎—0001

    一、性能 性能指標 1. 響應時間 指某個請求從發出到接收到響應消耗的時間。 在對響應時間進行測試時,通常採用重複請求方式,然後計算平均響應時間。 2. 吞吐量 指系統在單位時間內可以處理的請求數量,通常使用每秒的請求