原创 Activiti7 多實例子流程

顧名思義,子流程是一個包含其他活動、網關、事件等的活動,這些活動本身形成了一個流程,該流程是更大流程的一部分。 使用子流程確實有一些限制: 一個子流程只能有一個none類型的啓動事件,不允許有其他類型的啓動事件。一個子流程必須至少有一個結

原创 InnoDB 中不同SQL語句設置的鎖

鎖定讀、UPDATE 或 DELETE 通常會給在SQL語句處理過程掃描到的每個索引記錄上設置記錄鎖。語句中是否存在排除該行的WHERE條件並不重要。InnoDB不記得確切的WHERE條件,但只知道哪些索引範圍被掃描了。鎖通常是next-k

原创 Redis SCAN命令

1. 獲取指定前綴的key 需求描述: Redis中有大量以xxx開頭的key,在不使用keys命令的情況下,如何快速獲取這些前綴的key 解決方案: redis自帶的scan命令可以解決這個問題 2. SCAN命令 SCAN是一個

原创 Redis 哈希Hash底層數據結構

1. Redis 底層數據結構 Redis數據庫就像是一個哈希表,首先對key進行哈希運算得到哈希值再取模得到一個下標,每個元素是一個節點,節點之間形成鏈表。這感覺有點像Java中的HashMap。 不同的數據類型的實現方式是不一樣的,

原创 Redis+Lua實現簡易的秒殺搶購

1  商品搶購 主要邏輯是:減庫存,記錄搶購成功的用戶 @RestController public class DemoController { @Resource private StringRedisTemplat

原创 從 KeyStore 中獲取 PublicKey 和 PrivateKey

KeyStore(譯:密鑰存儲庫) 代表用於加密密鑰和證書的存儲設施。 KeyStore 管理不同類型的 entry(譯:條目)。每種類型的 entry 都實現了 KeyStore.Entry 接口。提供了三個基本的 KeyStore.En

原创 Redis緩存相關的幾個問題

1  緩存穿透 問題描述 緩存穿透是指查詢一個一定不存在的數據,由於緩存是不命中時需要從數據庫查詢,查不到數據則不寫入緩存,這將導致這個不存在的數據每次請求都要到數據庫去查詢,進而給數據庫帶來壓力。 解決方案 緩存空值,即對於不存在的數據

原创 用 WebClient 代替 RestTemplate

RestTemplate是用於執行 HTTP 請求的同步客戶端,通過底層 HTTP 客戶端庫(例如 JDK HttpURLConnection、Apache HttpComponents 等)公開一個簡單的模板方法 API。 RestTem

原创 在OAuth 2.0模式下使用Spring Cloud Gateway

Spring Cloud Gateway主要用於以下角色之一: OAuth Client OAuth Resource Server 1  Spring Cloud Gateway as an OAuth 2.0 Client 在

原创 OAuth2 Authorization Server

基於Spring Security 5 的 Authorization Server的寫法 先看演示 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http:

原创 Spring Security OAuth 筆記

1  單點登錄 關於單點登錄的原理,我覺得下面這位老哥講的比較清楚,有興趣可以看一下,下面我把其中的重點在此做個筆記總結 https://juejin.cn/post/6844904079274197005 主流的單點登錄都是基於共享 c

原创 Spring Security實現統一登錄與權限控制

1  項目介紹 最開始是一個單體應用,所有功能模塊都寫在一個項目裏,後來覺得項目越來越大,於是決定把一些功能拆分出去,形成一個一個獨立的微服務,於是就有個問題了,登錄、退出、權限控制這些東西怎麼辦呢?總不能每個服務都複製一套吧,最好的方式是

原创 Python遞歸遍歷目錄並刪除文件中的前N行

1 import os 2 3 # 遍歷目錄下的所有文件 4 def check_file(file_path): 5 os.chdir(file_path) 6 print(os.path.abspath(

原创 Kafdrop

Kafdrop 是一個用於查看 Kafka 主題和瀏覽消費者組的 Web UI docker run -d --rm -p 9000:9000 \ -e KAFKA_BROKERCONNECT=host:port,host:por

原创 MongoDB Security

1.  Security MongoDB提供了一系列的保護措施,以保護它自身安全: 啓用訪問控制並實行身份驗證 MongoDB支持多種身份認證機制,默認的認證機制是SCRAM  配置基於角色的訪問控制 首先創建一個管理員賬號(ad