原创 Forkjoin框架原理解析

聲明:本篇博客是在閱讀了引用博客的兩篇文章後做了簡短的概括與歸納,只作爲自己筆記 文章目錄一、思想二、工作竊取算法三、demo用例四、關鍵組件ForkJoinPoolForkJoinTaskForkJoinWorkerThre

原创 併發中Thread的yield方法

public class volatileNotEnsureAtomic { volatile int i = 0; /** * 由於volatile雖然支持可見性,支持單個變量的讀寫原子性,但不支持複合操作的原子性 *

原创 字符串排列組合(去重)

字符串排列組合 一、 字符串排列 要求字符串:abc產生abc |acb|bac|bca|cab|cba 思路: 1、固定一個位置第一個位置,數組中該位置之後的元素與該位置元素交換, 2、在1的基礎之上,固定第二個位置,數組

原创 ConcurrentHashMap源碼分析(JAVA 8)(綜述)

文章目錄一、ConcurrentHashMap緣起二、ConcurrentHashMap 的升級打怪                                  ---jdk1.7、jdk1.8實現方式存在差異三、Concu

原创 reids 模仿消息隊列

文章目錄一、消息隊列二、Jedis資源池生成實例三、生產者四、消費者參考 一、消息隊列 消息隊列簡單來說就是一個消費者生產者模型,消費消費資源,生產者生產資源,如何通過redis來實現消息隊列,會發覺redis中list結構很適

原创 redis-實現商品交易

文章目錄一、結構設計二、用戶掛賣商品三、購買商品四、test 一、結構設計 1、需要設計用戶存儲結構hash,來存放當前用戶具有的金錢數 2、設計用戶包裹set,裏邊存儲了用戶的所有商品 3、設計交易區market:zset集合來

原创 redis實戰--文章投票

文章目錄一、 **確定投票系統結構**二、考慮生成文章三、 考慮投票模型四、考慮獲取文章模型五、 打印文章 一、 確定投票系統結構 hash來存儲文章 key:article:110 titile:文章標題 link:鏈接 v

原创 代理模式

文章目錄一、靜態代理二、jdk的動態代理1、實現jdk動態代理2、使用要點(1)爲什麼jdk動態代理只能針對於接口?(2)爲什麼調用InvocationHandler會自動執行invoke()函數?(3)爲什麼匿名內部類使用局部變

原创 01揹包問題

文章目錄一、遞歸解決揹包問題二、動態規劃 一、遞歸解決揹包問題 暴力遞歸,窮舉出所有的可能性,在檢索完所有物品,即index=nums.length時候決定是否更新最大值 1、當物品體積小於等於當前揹包容量,選擇放或者不放 2、

原创 HTTP協議

文章目錄一、Http協議過程1、Url輸入地址2、DNS解析3、request請求1、請求行2、請求頭部3、空行+請求正文(Get無請求正文)4、response請求1、狀態行:協議版本、狀態碼、狀態描述2、響應頭3、空行+響應正

原创 觀察者模式

文章目錄一、觀察者模式二、訂閱/發佈模式(push模式)三、pop模式拉取模式四、標準模式(繼承現有接口和抽象類)五、引用 一、觀察者模式 觀察者的通俗理解可以參考訂閱發佈的方式,每一個訂閱內容,一旦被觀察對象內容改變就會向觀察者

原创 享元模式

文章目錄一、享元模式的意義?二、享元模式結構1、單純享元模式2、複雜享元模式三、單純享元模式實現四、複合享元模式實現 一、享元模式的意義? 享元模式重點在於享,可以理解爲分享,String的設計使用到了祥元模式,這個模式存在的意義

原创 工廠模式

文章目錄一、簡單工廠模式Demo二、工廠方法模式1、工廠方法模式簡介2、工廠方法模式結構2、Demo三、抽象工廠模式1、抽象工廠方法簡介2、抽象工廠方法結構3、Demo四、引用 一、簡單工廠模式 簡單工廠模式就是爲了避免直接ne

原创 Mysql索引詳解

文章目錄一、爲什麼需要索引?(索引的優缺點)1、索引產生的意義2、索引的優缺點二、索引的分類三、B樹-數據庫索引原理1、B樹(平衡多路查找樹)2、B+樹3、B+樹的優勢四、聚合索引(InNoDB存儲引擎)與非聚合索引(MyISAM

原创 MySQL鎖機制

文章目錄一、鎖的分類(一)、按粒度劃分的鎖1、表級鎖(偏向於讀)2、行級鎖3、頁級鎖(二)、按鎖的級別劃分1、共享鎖(讀鎖)2、排他鎖(寫鎖)三、MyISAM存儲引擎的鎖1、支持表鎖(偏向於讀)2、併發鎖2、鎖調度四、InNoDB