原创 Nacos註冊中心學習筆記

前言 英文全稱Dynamic Naming and Configuration Service,Na爲naming/nameServer即註冊中心,co爲configuration即註冊中心,service是指該註冊/配置中心都是以服務爲

原创 深入瞭解MySQL的流式查詢機制

引言 爲什麼要用流式查詢? a) 如果有一個很大的查詢結果需要遍歷處理,又不想一次性將結果集裝入客戶端內存,就可以考慮使用流式查詢; b)分庫分表場景下,單個表的查詢結果集雖然不大,但如果某個查詢跨了多個庫多個表,又要做結果集的合併、排序

原创 兩種高性能 I/O 設計模式 Reactor 和 Proactor

Reactor 和 Proactor 是基於事件驅動,在網絡編程中經常用到兩種設計模式。曾經在一個項目中用到了網絡庫 libevent,也學習了一段時間,其內部實現所用到的就是 Reactor,所知道的還有 ACE;Proactor 模式的

原创 兩種高性能 I/O 設計模式 Reactor 和 Proactor

Reactor 和 Proactor 是基於事件驅動,在網絡編程中經常用到兩種設計模式。曾經在一個項目中用到了網絡庫 libevent,也學習了一段時間,其內部實現所用到的就是 Reactor,所知道的還有 ACE;Proactor 模式的

原创 Java HashMap的工作原理

面試的時候經常會遇見諸如:“java中的HashMap是怎麼工作的”,“HashMap的get和put內部的工作原理”這樣的問題。本文將用一個簡單的例子來解釋下HashMap內部的工作原理。首先我們從一個例子開始,而不僅僅是從理論上,

原创 AtomicInteger線程安全的實現機制

Java在concurrent包下提供了線程安全的int包裝類,AtomicInteger,接下來我們就講講AtomicInteger的實現原理: public class AtomicInteger extends Number im

原创 用SQL語句,刪除掉重複項只保留一條

用SQL語句,刪除掉重複項只保留一條 在幾千條記錄裏,存在着些相同的記錄,如何能用SQL語句,刪除掉重複的呢 1、查找表中多餘的重複記錄,重複記錄是根據單個字段(peopleId)來判斷  select * from people 

原创 數據庫事務四種隔離級別

定義: 在數據庫操作中,爲了有效保證併發讀取數據的正確性,提出的事務隔離級別。 數據庫事務的隔離級別有4個,由低到高依次爲Read uncommitted(未授權讀取、讀未提交)、Read committed(授權讀取、讀提交)、Re

原创 linkedHashMap的應用

一. 概述:          LinkedHashMap是Map接口的哈希表和鏈接列表實現,具有可預知的迭代順序。LinkedHashMap實現與HashMap的不同之處在於,LinkedHashMap維護着一個運行於所有條目的雙

原创 HashMap併發導致死循環 CurrentHashMap

爲何出現死循環簡要說明 HashMap閉環的詳細原因 cocurrentHashMap的底層機制   爲何出現死循環簡要說明   HashMap是非線程安全的,在併發場景中如果不保持足夠的同步,就有可能在執行HashM

原创 Java對象結構及大小計算

序 本文主要簡述Java對象的內存佈局以及其大小的計算。 Java對象內存佈局 在HotSpot虛擬機中,對象在內存中存儲的佈局可以分爲3塊區域:對象頭(Header)、實例數據(Instance Data)和對齊填充(Pad

原创 Java動態代理的兩種實現方法

AOP的攔截功能是由java中的動態代理來實現的。說白了,就是在目標類的基礎上增加切面邏輯,生成增強的目標類(該切面邏輯或者在目標類函數執行之前,或者目標類函數執行之後,或者在目標類函數拋出異常時候執行。不同的切入時機對應不同的Inter