原创 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. 吞吐量 指系統在單位時間內可以處理的請求數量,通常使用每秒的請求