原创 Spring技術內幕(1)Spring的設計理念和整體架構

本章內容: Spring各個子項目、Spring設計目標、Spring整體架構、Spring應用場景。 1.1 Spring各個子項目 Spring Framework(Core):包含一系列IoC容器的設計,提供依賴反轉模式的實現;繼承

原创 MySQL索引背後的數據結構及算法原理

摘要 本文以MySQL數據庫爲研究對象,討論與數據庫索引相關的一些話題。特別需要說明的是,MySQL支持諸多存儲引擎,而各種存儲引擎對索引的支持也各不相同,因此MySQL數據庫支持多種索引類型,如BTree索引,哈希索引,全文索引等等。爲

原创 Java集合框架16-TreeSet

第1部分 TreeSet介紹 基於TreeMap的NavigableSet實現。使用元素的自然順序對元素進行排序,或者根據創建set時提供的Comparator進行排序,具體取決於使用的構造方法。 此實現爲基本操作(add、remove

原创 Class文件結構

Class類文件結構 Class文件是一組以8字節爲基礎單位的二進制流, 各個數據項目嚴格按照順序緊湊排列在class文件中, 中間沒有任何分隔符,這使得class文件中存儲的內容幾乎是全部程序運行的程序。 Java虛擬機規範規定,Cla

原创 Java併發編程的藝術(二)——線程的狀態轉換以及基本操作

1. 新建線程 一個java程序從main()方法開始執行,然後按照既定的代碼邏輯執行,看似沒有其他線程參與,但實際上java程序天生就是一個多線程程序,包含了:(1)分發處理髮送給給JVM信號的線程;(2)調用對象的finalize方法

原创 springCloud集成分佈式事務LCN 5.0.2

TX-LCN的3種模式 LCN5.0.2有3種模式,分別是LCN模式,TCC模式,TXC模式 LCN模式: LCN模式是通過代理Connection的方式實現對本地事務的操作,然後在由TxManager統一協調控制事務。當本地事務提交回滾

原创 Java Object的詳解

構造方法摘要 Object()            方法摘要 protected Object clone()            創建並返回此對象的一個副本。 boolean equals(Object obj)          

原创 Java集合框架15-HashSet詳解

第1部分 HashSet介紹 HashSet 是一個沒有重複元素的集合。 它是由HashMap實現的,不保證元素的順序,而且HashSet允許使用 null 元素。 HashSet是非同步的。如果多個線程同時訪問一個哈希 set,而其中至

原创 《Java併發編程的藝術》筆記

第二章 Java併發機制的底層實現原理 volatile的兩條實現原則: Lock前綴指令會引起處理器緩存回寫到內存 一個處理器的緩存回寫到內存會導致其他處理器的緩存無效。 volatile的使用優化:共享變量會被頻繁讀寫時,可以通過追加

原创 TCP/IP網絡協議基礎

簡介 網絡協議棧架構 TCP/IP被分爲4層: 應用層:應用程序通過這一層訪問網絡,常見 FTP、HTTP、DNS 和 TELNET 協議; 傳輸層:TCP 協議和 UDP 協議; 網絡層:IP 協議,ARP、RARP 協議,ICMP

原创 MySQL避免插入重複記錄:唯一性約束

原文鏈接:https://blog.csdn.net/fly910905/article/details/79693070 mysql在存在主鍵衝突或者唯一鍵衝突的情況下,根據插入策略不同,一般

原创 TCP停止等待、超時重傳、滑動窗口、擁塞控制、快重傳和快恢復

原文鏈接:https://blog.csdn.net/u014590757/article/details/80214540 TCP超時與重傳機制 TCP協議是一種面向連接的可靠的傳輸層協議,它

原创 解密Redis持久化【翻譯】

原文鏈接:http://oldblog.antirez.com/post/redis-persistence-demystified.html 本文來自Redis的作者,他在論壇看到大家對Red

原创 Java併發編程的藝術(二十)——線程池ThreadPoolExecutor實現原理

1. 爲什麼要使用線程池 在實際使用中,線程是很佔用系統資源的,如果對線程管理不善很容易導致系統問題。因此,在大多數併發框架中都會使用線程池來管理線程,使用線程池管理線程主要有如下好處: 降低資源消耗。通過複用已存在的線程和降低線程關閉的

原创 Java併發編程的藝術(十五)——併發容器之ConcurrentLinkedQueue

1.ConcurrentLinkedQueue簡介 在單線程編程中我們會經常用到一些集合類,比如ArrayList,HashMap等,但是這些類都不是線程安全的類。在面試中也經常會有一些考點,比如ArrayList不是線程安全的,Vect