原创 Jenkins環境搭建和部署項目的過程

安裝部署docker jenkins 環境 創建一個文件夾 用於存放jenkins相關配置 mkdir /Users/mengfanxiao/docker/jenkins 下載docker jenkins鏡像 docker pull

原创 Semaphore 原理簡介和使用

Semaphore共享鎖 簡介 在多線程環境下用於協調各個線程, 以保證它們能夠正確、合理的使用公共資源 信號量維護了一個許可集,我們在初始化Semaphore時需要爲這個許可集傳入一個數量值, 該數量值代表同一時間能訪問共享資源的線程

原创 同步工具類CyclicBarrier原理及使用

簡介 柵欄類似於閉鎖,它能阻塞一組線程直到某個事件的發生。柵欄與閉鎖的關鍵區別在於,所有的線程必須同時到達柵欄位置,才能繼續執行。閉鎖用於等待事件,而柵欄用於等待其他線程。 CyclicBarrier可以使一定數量的線程反覆地在柵欄

原创 【教你如何放大招】程序猿是如何一點點的喫下一個產品的

本文宗旨 目標 : 從一個程序猿的角度來解讀如何消化掉產品經理給的需求 即產品經理放一個大招 程序猿如何接大招 適讀人羣 : 1⃣️ 剛入行的小白:對開發的流程還不太熟悉 接到一個需求 一頭亂碼 一頭霧水 不知道怎麼下手 或者 下手

原创 AQS原理簡介

AQS簡介 原名 AbstractQueuedSynchronizer 即隊列同步器 是構建鎖和其他同步組件的基礎框架(如ReentrantLock、ReentrantReadWriteLock、Semaphore、CountDownL

原创 可重複鎖ReentrantLock原理分析

可重入鎖ReentrantLock實現層面依賴 一、CAS(compareAndSet) LockSupport 基本的方法 park park使得當前線程放棄cpu 進入等待(waiting)狀態 操作系統不會再對其進行調度 直到

原创 CountDownLatch原理簡介和使用過程

前言 本文介紹下面試的高能考點 countDownLatch 的原理和應用 countDownLatch具有的功能 CountDownLatch主要有兩個方法,當一個或多個線程調用await方法時,這些線程會阻塞。 其它線程調用

原创 Redlock原理簡介和實現過程

前言 上篇文章介紹了通過 SET key_name my_random_value NX PX 30000 NX 表示if not exist 就設置並返回True,否則不設置並返回False

原创 Redis分佈鎖原理簡介和實現過程

前言 這篇文章介紹下如何實現redis來實現分佈式鎖及原理簡介 原理簡介 redis 獲取分佈式鎖使用lua腳本的命令 setnx pexpire(提供了毫秒的過期時間,expire提供了基於秒的過期時間) lua腳本(保證

原创 zookeeper分佈式鎖原理及實現

前言 本文介紹下 zookeeper方式 實現分佈式鎖 原理簡介 zookeeper實現分佈式鎖的原理就是多個節點同時在一個指定的節點下面創建臨時會話順序節點,誰創建的節點序號最小,誰就獲得了鎖,並且其他節點就會監聽序號比自己小的節

原创 基於shiro實現session持久化和分佈式共享

前言 本文寫下session持久化和分佈式共享 基於shiro框架對session的管理機制來實現 必要性 一直處於登陸狀態:你登陸微信 不可能三天兩頭就讓你重新登陸吧?而是一直處於登陸狀態 除非主動退出微信 session共享

原创 shiro、cas、pac4j 實現單點登陸

前言 上一篇文章介紹了 cas 環境搭建過程 本文介紹下cas和shiro集成代碼實現及數據流轉過程簡介 先看下實現的效果 訪問 http://localhost:8086/demo1 轉發到認證中心 輸入登陸賬號 回到de

原创 CAS單點登陸原理簡介及環境搭建

前言 最近這幾天在研究CAS 今天終於在本地部署成功了 今天寫一篇文章記錄下 原理簡介 SSO單點登錄 在多個相互信任的系統中,用戶只需要登錄一次就可以訪問其他受信任的系統。 新浪微博與新浪博客是相互信任的應用系統。 當用戶首次訪

原创 mybatis-generator插件使用 批量插入、更新

1、 <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <

原创 Shiro框架原理及應用分析

shiro 介紹 ounter(line Shiro是apache旗下一個開源框架,它將軟件系統的安全認證相關的功能抽取出來,實現用戶身份認證,權限授權、加密、會話管理等功能,組成了一個通用的安全認證框架。 學習shiro原因 既然s