原创 Java編程拾遺『併發容器——併發隊列』

本篇文章,來探討一下Java併發包中的各種隊列。Java併發包提供了豐富的隊列類,可以簡單分爲: 無鎖非阻塞併發隊列:ConcurrentLinkedQueue和ConcurrentLinkedDeque 普通阻塞隊列:基於數組的Arra

原创 Java編程拾遺『線程協作工具』

在之前的文章Java編程拾遺『線程協作』中,介紹了一些線程協作的場景,並做了簡單的代碼實現,比如上文中的MyLatch、AssemblePoint、MySemaphore等。其實上篇文章介紹的線程協作場景,在Java API中都有響應實現

原创 wordpress被攻擊之後的一些總結

今天早晨在在公司打開電腦,吃着早飯,翻着自己之前寫的一篇文章,回到主頁時發現,出現了很多英文的發佈(亂七八糟的內容),第一反應就是被攻擊了,趕緊到儀表盤去看一下,發現這時候站點所有的url都已經無法訪問了。 我的這個個人站點是部署在一個虛

原创 Java編程拾遺『併發容器——ConcurrentSkipListSet和ConcurrentSkipListMap』

由於水平有限,ConcurrentSkipListSet和ConcurrentSkipListMap的實現又比較複雜,所以並沒有去通讀源碼。下文的內容來自《Java編程的邏輯》,簡單講了ConcurrentSkipListMap基於跳躍表

原创 Java編程拾遺『Java ClassLoaser工作機制』

ClassLoader顧名思義就是類加載器,負責將類的.class文件中的二進制數據加載到JVM中,然後在堆區創建一個java.lang.Class對象,用來封裝類在方法區內的數據結構(類的方法代碼,變量名,方法名,訪問權限,返回值等)。

原创 讓CPU告訴你硬盤和網絡到底有多慢

前幾天看到一篇文章,感覺寫的挺有意思的,轉載過來分享一下。文章用比較生動的比喻,體現了硬盤和網絡延遲在計算機系統到底有多慢,也刷新了我的整體認知,原文鏈接:讓CPU告訴你硬盤和網絡到底有多慢,以下時原文: 1. 簡介 經常聽到有人說磁盤很

原创 MySQL InnoDB鎖介紹及不同SQL語句分別加什麼樣的鎖

原文鏈接:https://blog.csdn.net/iceman1952/article/details/85504278 本文中,我們詳細介紹MySQL InnoDB存儲引擎各種不同類型的鎖,以及不同SQL語句分別會加什麼樣的鎖。 閱

原创 Java編程拾遺『併發容器——ConcurrentHashMap』

在之前的文章中已經介紹過的哈希表數據結構有HashMap、TreeMap、LinkedHashMap、HashTable以及Collections類生成的各種同步Hash容器。但是我們也瞭解到,HashMap是非線程安全的,在多線程環境下

原创 徹底搞懂動態代理

生活中我們肯定知道代理商的概念,代理商代替廠家售賣其生產的商品,廠家“委託”代理商爲其銷售商品。通過代理商這種銷售模式,普通消費者是不直接跟廠家打交道,但是卻能獲得廠家的商品服務,也就是說,“委託者”對普通消費者來說是不可見的。其次,同一

原创 Java編程拾遺『線程池』

在之前的文章中,我們已經講了很多Java線程的使用以及Java併發編程的原理,本篇文章,我們來重點看一下Java併發編程中一個比較常用的工具——線程池的使用以及源碼實現,這也是Java面試的基本問題。 在使用線程池之前,我們可以嘗試考慮這

原创 Java編程拾遺『字符流』

之前一篇文章講述了Java中字節流的分類及簡單用法,最後我們可以發現,Java中的字節流既可以用來處理二進制文件,也可以用來處理文本文件。但是字節流對於文本文件的處理是不太方便的,比如字節流的媒介是字節,但是文本文件的內容都是可顯式地字符

原创 redis實現分佈式鎖

分佈式鎖一般有三種實現方式: Zookeeper Redis 數據庫排他鎖 從可靠性和實現的複雜度講,上面三種方式在可靠性上逐漸降低,在實現複雜度上也是逐漸降低的。在實際使用中,通過redis實現分佈式鎖是一種比較常見的方式,但是在使用r

原创 Java編程拾遺『併發編程概述』

從本篇文章開始,我們一起來認識一下Java併發編程的相關細節。如果讓你寫一個多線程程序,相信絕大多數開發人員都能很輕鬆的實現。但是對於Java併發編程的一些細節,比如線程多個狀態的流轉、線程安全保證的原理、線程池的實現等等,綜合考慮起來還

原创 Java編程拾遺『線程的使用』

上篇文章講了一些關於併發編程的一些基本概念,也簡單提到Java中線程的創建方式,本篇文章將詳細介紹一下Java中線程使用的相關細節。 1. 創建線程 如果程序中只有一條執行流,程序從main方法的第一條語句逐條執行直到結束。如果在main

原创 Netty基礎篇:Netty是什麼?

原文鏈接:https://www.jianshu.com/p/a4e03835921a 之前瞭解過NIO、和Netty的一些概念,但是感覺概念上很晦澀,只是瞭解簡單的概念,也不知道具體該怎麼應用