原创 聊聊緩存穿透

在我們的項目中多少都會使用緩存,因爲有些數據我們沒有必要每次都去查詢數據庫,特別是高QPS的系統,每次都去查詢數據庫會影響數據庫性能。 業務系統一般調用流程: 我們一般的做法是先從緩存中查詢,如果緩存中查詢到了則直接返回,如果緩

原创 互聯網面試題之Java鎖

公平鎖、非公平鎖 公平鎖:是指多個線程按照申請鎖的順序來獲取鎖,類似排隊,先來後到。 非公平鎖:是指多個線程獲取鎖的順序並不是按照申請鎖的順序,有可能後申請的線程比先申請的線程優先獲取鎖。在高併發的情況下,有可能會造成優先級反轉或

原创 synchronized 和 Lock 有什麼區別?用新的lock有什麼好處?

原始構成 synchronized 是關鍵字屬於JVM層面,monitorenter、monitorexit 底層是通過Monitor對象來完成,其實wait/notify等方法也依賴於Monitor對象,只有在同步塊或方法中才能

原创 IP地址詳解(掃盲篇)

局域網:一般稱爲內網。 簡單局域網構成:交換機、網線、PC(其他IT終端)。 交換機:用來組建內網的設備。 IP地址 IP地址就是一個唯一標識,是一段網絡編碼(二進制)。 IP地址形式:X.X.X.X ,X的範圍:

原创 互聯網面試題之請談談你對volatile的理解

JUC(java.util.concurrent) 併發和並行 volatile 是Java虛擬機提供的輕量級的同步機制。 volatile三大特性 保證可見性 不保證原子性 禁止指令重排序 JMM你談談 JMM(Java M

原创 聊聊Java中的Thread類

Thread類是位於java.lang包下,java.lang包是系統自動隱式導入的,也就是說開發人員無需用import語句導入就可以使用其中的類。 thread是程序中的執行線程,Java虛擬機允許應用程序具有多個併發運行的執行

原创 【技術日報】2020-06-04 第2期

Sed Command in Linux/Unix with examples 原文鏈接 https://www.geeksforgeeks.org/sed-command-in-linux-unix-with-example

原创 互聯網面試題之CountDownLatch/CyclicBarrier/Semaphore用過嗎

CountDownLatch import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; /** * 秦滅六國,一統天下

原创 互聯網高級Java工程師訓練-如何保證MQ的高可用

RabbitMQ的高可用 RabbitMQ是基於主從做高可用的,RabbitMQ有三種模式:單機模式,普通集羣模式,鏡像集羣模式。 單機模式 一般用在本地,不會用在生產環境。 普通集羣模式 在多臺機器上啓動多個Rabbit

原创 聊聊Java中的wait、notify及notifyAll方法

聊聊Java中的wait、notify及notifyAll方法 wait方法會導致當前線程等待直到其他線程調用這個對象的notify()方法或者notifyAll()方法,或者到達了指定的時間。 當前線程必須擁有這個對象的鎖。 這

原创 【技術日報】2020-05-25 第1期

Java Thread and Runnable Tutorial 原文鏈接 https://www.callicoder.com/java-multithreading-thread-and-runnable-tutoria

原创 自旋在synchronized底層實現性能提升

JVM的同步是基於進入與退出監視器對象(管程對象)(Monitor)來實現的,每個對象實例都會有一個Monitor對象,Monitor對象會和Java對象一同創建和銷燬。Monitor對象是由C++來實現的。 當多個線程同時訪問一

原创 【技術日報】2020-05-20 第0期

Zoom 停止中國個人用戶註冊,研發重心向美國轉移 原鏈 https://www.infoq.cn/article/i1Ty0tberc8yaSBXArZQ 免費的個人用戶將不能在 Zoom 上主持會議,仍然可以加入會議。Zo

原创 Java中Integer類有坑嗎

一切皆對象? 我們知道Java是一門面向對象的編程語言,但是原始數據類型(boolean、byte、short、char、int、float、double、long)並不是對象。 Integer 是int 對應的包裝類,它內部包含

原创 基礎技術

爲什麼要學習基礎技術 一通百通 所有技術原理和本質都在基礎技術上 突破瓶頸 只有基礎技術才能讓你上升到更高的層次 在技術的世界裏,量變永遠無法導致質變 自己推導 掌握基礎技術以及原理可以讓自己推導答案和趨勢 有哪些