原创 【Redis高級】redis事務

1、Redis事務的定義 redis事務就是一個命令執行的隊列,將一系列預定義命令包裝成一個整體(一個隊列)。當執行時,一次性按照添加順序依次執行,中間不會被打斷或者干擾 2、事務的基本操作 開啓事務 multi 作用 作

原创 【Redis高級】 刪除策略

文章目錄1.過期數據2.數據刪除策略3、逐出算法 1.過期數據 Redis中的數據特徵 Redis是一種內存級數據庫,所有數據均存放在內存中,內存中的數據可以通過TTL指令獲取其狀態 XX :具有時效性的數據 -1 :永久有效的

原创 Redis:五大基本數據類型詳解

文章目錄1. String及應用場景2.Hash(Hashmap)和使用場景3. List(有序可重複)和使用場景4. set (無序不可重複)和場景5. sorted_set(無序不重複但排列有序)6. 應用場景總結7. 通用指

原创 【redis高級】一、持久化

文章目錄1. 持久化簡介2. RDB:數據(快照)3. AOF:過程(日誌)4. RDB VS AOF 1. 持久化簡介 持久化:將內存中的數據保存在硬盤中當作備份,當遇到斷電,數據崩潰等,內存中數據丟失,可以將數據從硬盤恢復到內

原创 說一下 Future 和 FutureTask,以及他們之前的區別

文章目錄1.簡介:1.1.線程池解決:Callable1.2. 工廠類Executors解決:Callable2.Future接口:3.FutureTask類:4.Callable/Future/FutureTask的使用(封裝了

原创 其他鎖: StampedLock(戳)、Semaphore(信號量)、CountdownLatch(倒計時)

文章目錄1. StampedLock(戳)2. Semaphore(信號量)1.自定義例子2. Semaphore加鎖解鎖流程3. Semaphore源碼3. CountdownLatch(倒計時) 1. StampedLock(

原创 ReentrantReadWriteLock 底層原理

文章目錄1.讀寫鎖自定義2. ReentrantReadWriteLock底層原理2.1. t1 w.lock,t2 r.lock2.1.1. 寫鎖上鎖流程(跟ReentrantLock一樣,t1 w.lock是獨佔鎖/排它鎖)2

原创 KafKa簡介

文章目錄1. 消息隊列1.1消息隊列的兩種模式1.2 使用消息隊列的好處2. Kafka(消息默認在磁盤內存7天) 1. 消息隊列 1.1消息隊列的兩種模式 (1)點對點模式(一對一,消費者主動拉取數據,消息收到後消息清除) 消息

原创 kafka簡單操作:Windows下cmd:生產者與消費者(消息隊列kafka)

我用Windows測試:首先到kafka官網下載版本,解壓到目錄 1.再配置zookeeper.properties: dataDir=E:/JAVA/JAVA1/javaEE/kafka/ka_zookeeper/data

原创 SpringIOC方面知識

文章目錄1.Spring的框架了解2. Spring IOC和依賴注入(DI)3.Bean的裝配方式/依賴注入 (實例化後,注入Bean中所有屬性值)3.1 基於XML的裝配(setter和構造方法)3.2 基於註解(Annota

原创 leetcode32:最長有效括號(棧:解決成對字符)

棧 以後碰到解決成對出現的字符 給定一個只包含 ‘(’ 和 ‘)’ 的字符串,找出最長的包含有效括號的子串的長度。 示例 1: 輸入: "(()" 輸出: 2 解釋: 最長有效括號子串爲 "()" 示例 2: 輸入: ")()()

原创 【動態規劃問題:】0-1揹包問題

動態規劃算法介紹 1)動態規劃(Dynamic Programming)算法的核心思想是:將大問題劃分爲小問題進行解決,從而一步步獲取最優解的處理算法 2)動態規劃算法與分治算法類似,其基本思想也是將待求解問題分解成若干個子問題,

原创 【數據結構:樹的應用】:二叉排序樹--刪除節點

文章目錄1.思路分析2.代碼實現 1.思路分析 三種刪除節點情況: 2.代碼實現 public class BinarySortTreeDemo { public static void main(String[]

原创 【數據結構:樹的應用】:赫夫曼樹

1. 赫夫曼樹基本介紹 赫夫曼樹需要先將數組按照從小到大排序,然後操作 public class HuffmanTree { public static void main(String[] args) {

原创 【併發編程】:鎖 !!!!!

文章目錄一、1. wait / notify2. wait/notify的使用1、wait(n)與sleep(n)的區別2、使用過程3. 保護性暫停模式4. 生產者消費者模式二、park / unpark三、 線程狀態裝換四、多把