redis 服務端和客戶端的安裝啟動
redis 自帶的壓力測試工具# 產看當前redis版本
$ redis-server -v
-bash: /usr/local/bin/redis-server: no such file or directory
$ redis-cli -v
-bash: /usr/local/bin/redis-cli: no such file or directory
# 以上可以判斷本機沒有裝redis
# 開始安裝
$ brew install redis
......
# 產看當前redis版本
$ redis-server -v
redis server v=5.0.3 sha=00000000:0 malloc=libc bits=64 build=457be8ba4fa3e51f
$ redis-cli -v
redis-cli 5.0.3
$ 啟動redis服務端
redis-server
$ 使用redis客戶端連線服務端
redis-cli
redis 自帶的日誌監控# 壓測需要一段時間因為它需要依次壓測多個命令的結果 如:get.set.incr.lpush等所以我們需要耐心等待
$ redis-benchmark -h 127.0.0.1 -p 6379 -c 50 -n 10000
$ redis-benchmark -c 50 -n 10000
# 如果只需要壓測某個命令,如:get,那麼可以在以上的命令後加乙個引數-t
$ redis-benchmark -c 50 -n 10000 -t get
$ redis-benchmark -c 50 -n 10000 -t set
# 以500個併發傳送二十萬個get請求
$ redis-benchmark -c 500 -n 200000 -t get
# 結果如下
*****= get *****=
# 二十萬個請求在2.89秒內完成
$ 200000 requests completed in 2.89 seconds
$ 500 parallel clients
$ 3 bytes payload
$ keep alive: 1
# x% 的請求在 x毫秒內完成
$ 0.00% <= 2 milliseconds
$ 1.54% <= 3 milliseconds
$ 87.15% <= 4 milliseconds
$ 98.00% <= 5 milliseconds
$ 99.59% <= 6 milliseconds
$ 99.94% <= 7 milliseconds
$ 100.00% <= 7 milliseconds
# 平均每秒傳送69252.08 個請求
$ 69252.08 requests per second
# redis 實時列印伺服器的操作,日誌監控
$ redis-cli -h 127.0.0.1 -p 6379 monitor
$ redis-cli monitor
令牌桶 漏斗 冷啟動限流在sentinel的應用
分布式系統為了保證系統穩定性,在服務治理的限流中會根據不同場景進行限流操作,常見的限流演算法有 在分析sentinel限流之前,我們先看下sentinel是什麼,官網說明如下 隨著微服務的流行,服務和服務之間的穩定性變得越來越重要。sentinel 是面向分布式服務架構的流量控制項,主要以流量為切入...
redis令牌桶限流
每個ip 1秒內只能傳送一次請求 pom檔案 org.springframework.bootgroupid spring boot starter data redis reactiveartifactid 2.1.3.releaseversion dependency 啟動引導類定義 keyre...
php令牌桶限流
前端每次請求從令牌桶取走令牌,後端勻速向桶內投遞令牌,如果前端取到令牌,則說明這次請求有效,否則讓前端再次請求或者等待。避免了大量請求下伺服器壓力過大導致的崩潰問題。令牌桶演算法 class token catch redi ception exception 令牌初始化 public functi...