原创 【設計模式】動態代理

其實這篇文章已經寫完很久了,但是最近沉迷於JUC源碼,所以一直放在草稿箱沒有發。這幾天把AQS以及相關的子類擼了一遍,寫了幾篇JUC源碼解讀,準備發到公號上面來,於是乎決定把草稿箱的這篇文章先解決了   我上一篇文章已經通過代購的例子討論

原创 【系統設計】如何設計一個牛X的系統?這三點很重要

         今天這篇文章是我看完極客時間《高併發系統設計40問》前幾章後做的一個讀書筆記,將裏面的重點都總結出來了,大家如果認真看完,應該會對系統設計有一個比較清晰的框架了。         什麼樣的系統纔是一個牛逼的系統呢?如果一

原创 【系統設計】秒殺系統的設計思路

         還記得校招剛開始的時候,作爲一個非科班、無實習經驗、手上只有一個後臺管理項目的渣渣來說,那面試真是一個酸爽,各種猛錘吊打啊。但是最後,自己還是拿到了幾個offer?是什麼原因呢?是運氣嗎?有可能,但其中還有一個重要原因就

原创 【Java併發編程】AQS(3)——獨佔鎖的釋放

今天主要講AQS中對獨佔鎖的釋放,如果大家把昨天“獨佔鎖的獲取”看完了,今天這篇文章將會很輕鬆!   AQS在獨佔模式下,對鎖的釋放只有release方法,而release方法其實就做了兩件事:釋放鎖和喚醒後繼Node(準確講是Node中

原创 【Java基礎】靜態內部類與普通內部類的區別

今天接到一個需求,是將公司的一些統計數據文件內容解析出來後,通過mq發給用戶運營平臺,給公司的大佬看,這個還是很簡單,半個小時就碼完了,但自測完後突然發現怎麼建了這麼多DTO(data transform object)!因爲統計文件有很

原创 【設計模式】 靜態代理

本來是想直接寫動態代理的,但是後來想想,要寫就寫完整吧,而且我相信很多人其實對靜態代理的理解也不是很深刻,包括寫這篇文章之前的我。 大家一定都聽過,藝術源於生活,其實,計算機中的許多思想也是通過生活而來,所以,像計算機領域中的代理模式,肯

原创 【Java併發編程】AQS(1)——併發三板斧

自己定的目標不能一開始就垮了啊,明天就放假了,所以趕緊開始更新Java併發編程系列的第一篇文章(準確來說是第二篇,因爲前面還寫過一篇FutureTask源碼解讀),也是AQS系列的第一篇文章。其實關於AQS系列的早就寫好了,但是一直在反覆

原创 【Java併發編程】FutureTask源碼解讀

最近在學習netty,其中講到了異步回調,而Netty中的異步回調繼承並擴展了JdK中FutureTask相關的API,所以索性又把FutureTask源碼看了一遍,看完就覺得兩個字:🐂🍺!於是決定寫篇文章梳理梳理。 最近要做的東西太多了

原创 redis——redis.conf文件參數說明

本文轉自https://blog.csdn.net/tiantiandjava/article/details/72831529  特此申明!   1. 備釋 當配置中需要配置內存大小時,可以使用 1k, 5GB, 4M 等類似的格式,其

原创 RocketMQ——單主部署、一主一從部署、雙主雙從部署

一.RocketMQ單機部署   Hosts添加信息 我們首先進入/etc/hosts來添加信息 vim /etc/hosts 添加信息如下:   上傳解壓安裝包 通過XFTP工具將apache-rocketmq.tar.gz傳到/u

原创 什麼是環境變量?爲什麼java要配置環境變量?

本文是將https://blog.csdn.net/qq_37872792/article/details/80642985 與 https://blog.csdn.net/Pre_waist_L/article/details/7969

原创 redis——基本概述、數據結構

  一   基本概述、 (1) redis基本命令的時間複雜度如下: 可以看到,keys命令是一個比較重的命令,所以在開發環境中我們一般不使用(因爲redis是單線程的,如果你keys一個一百萬的命令,可能就會在這個命令上耗費10秒,那

原创 【Java併發編程】AQS(5)——ConditionObject

這篇文章是AQS系列的最後一篇文章,也是非常重要的一篇,因爲這篇文章將引入併發編程中非常重要的一個概念:條件變量。在聊條件變量之前我想先聊聊管程(monitor),下面是對管程的描述: 在併發程序中,管程是一種同步結構,它不僅允許線程擁有

原创 【Java併發編程】AQS(4)——共享鎖的獲取與釋放

  今天來說下共享鎖的獲取與釋放,建議大家在看這篇文章之前,先將我寫的關於獨佔鎖的文章看一下,其中涉及了許多重複的方法,在這篇文章中就不會再次講解了。好了,我們先來看共享鎖的獲取吧   一.  共享鎖的獲取   在AQS中共享鎖的獲取一共

原创 【Java併發編程】AQS(2)——獨佔鎖的獲取

今天是4月4日,清明節第一天,互聯網一片灰白,大家都在緬懷逝者,致敬英烈。所以今天我也沒有過多的娛樂,一天都在鼓搗這篇文章。今天這篇主要說說AQS獨佔鎖的獲取。   AQS中對獨佔鎖的獲取一共有三個方法,今天主要說第一個 acquire