原创 MQ技術和其技術類型知識點流程化大總結

MQ技術和其技術類型知識點流程化總結 1.爲什麼使用消息隊列? 核心的有 3 個:解耦、異步、削峯。 解耦: 不使用MQ: A 系統跟其它各種亂七八糟的系統嚴重耦合,A 系統產生一條比較關鍵的數據,別的很多系統都需要

原创 關於分庫分表那些事

關於分庫分表那些事 1、 爲什麼要分庫分表(設計高併發系統的時候,數據庫層面該如何設計)?有哪些分庫分表中間件?不同的分庫分表中間件都有什麼優點和缺點?如何對數據庫如何進行垂直拆分或水平拆分的? 1、爲什麼要分庫分表: 1

原创 1.Mysql事務及鎖機制總結

1.Mysql事務及隔離級別 事務的特點: 原子性:一榮俱榮,一辱俱辱 一致性:比如轉賬前後賬戶金額總額保持不變,前後狀態都是 一 致性狀態 隔離性:併發執行的事務不會相互影響,多個用戶向同一個賬戶轉賬,要保證與按

原创 Elastic Search原理知識點梳理

Elastic Search原理知識點梳理 1、基礎組成 1.1 Node 與 Cluster Elastic 本質上是一個分佈式數據庫,允許多臺服務器協同工作,每臺服務器可以運行多個 Elastic 實例。 單個 Elas

原创 什麼是fastDFS:

什麼是fastDFS: ​ fastDFS是一個底層使用C語言編寫並且開源的, 分佈式文件系統 作用: ​ 可以統一管理存儲服務器集羣, 統一管理存儲讀取文件. fastDFS原理(工作流程): ​ fastDFS一共分爲三部分

原创 什麼是Redis?怎麼用的?

NOSQL數據庫-Redis簡介 NOSQL的必要性: High performance - 對數據庫高併發讀寫的需求 Huge Storage - 對海量數據的高效率存儲和訪問的需求 High Scalability && H

原创 JVM基礎框架整理筆記

JVM結構:   對象頭:   運行整體結構:類加載之後進入方法區 (1)保存被加載類型的信息,包括類型信息(Type Information)和方法列表(Method Tables)。 (2)所有線程共享,所以訪問方法區信息的方法必

原创 Mysql索引和引擎快速入門

Mysql架構: bin log:存在於mysql的server層,用與mysql的主從複製 1.索引數據結構: 二叉樹: 紅黑樹:大數據範圍樹的高度不可控 Hash表:對索引進行一次hash運算就能得到數據的磁盤文件指針

原创 TCP的三次握手和四次揮手的通俗化解釋

TCP的三次握手和四次揮手 TCP的三次握手的簡單過程:1-3 0-服務器進程在創建的時候就進入listen狀態,隨時準備接受客戶端請求(前置) 1-首先客戶端向服務器發送連接請求(SYN),同時客戶端主動進入syn_se

原创 HashMap面試知識點總結分類

HashMap面試知識點總結: 1.數據結構中的HashMap?能跟我聊聊他的結構和底層原理麼? 首先在java1.8以前用的是單純的數組加鏈表的結構,進入Java1.8以後就是用數組+鏈表+紅黑樹的數據結構 加入紅黑樹的與

原创 算法時間複雜度總結(簡單易記)

這幾天在學習算法的時候發現自己對於算法時間複雜度的分析還是很不可靠的,所以看了點文章做出如下總結:由於主要就是爲了能一眼看懂,所以,我不會提及定理公式等方便理解 這三條是時間複雜度的3條最簡最有效的方法: 找到執行次數最多的語句

原创 ConcurrentHashMap(併發性)面試知識點總結:

ConcurrentHashMap(併發性)面試知識點總結: 1.HashTable怎麼實現線程安全?以及爲什麼效率低下 HashTable在進行put和get的時候會對整個hash表上鎖(synchronized),雖然能保證

原创 leetcode刷題筆記_數組_兩數之和(java)

leetcode刷題筆記_數組_兩數之和(java) //採用map使得時間複雜度位O(n) public class two_sum { public static void main(String[] args) {

原创 leetcode刷題筆記_數組_移除指定數組元素(java)

public class removeElement { public static void main(String[] args) { removeElement removeElement = new

原创 leetcode刷題筆記_數組_刪除排序數組重複項(java)

leetcode刷題筆記_數組_刪除排序數組重複項(java) public class removeDuplicates { public static void main(String[] args) {