springboot2.x簡單詳細教程--整合Redis實戰(第 九章)
阿新 • • 發佈:2018-11-24
一、分散式快取Redis介紹
簡介:講解為什麼要用快取和介紹什麼是Redis,新手練習工具
1.什麼是Redis
由c語言編寫的,以鍵值對的形式儲存的非關係資料庫. 快取技術(駐留在記憶體中) CPU(暫存器) > 記憶體 > 磁碟
key:value
支援5種資料型別:
String
Hash(雜湊表)
list
set
sortedset(zset)
1、redis官網 https://redis.io/download
2、新手入門redis線上測試工具 :http://try.redis.io/
edis是所謂的鍵值儲存,通常稱為NoSQL資料庫。鍵值儲存的本質是能夠在鍵記憶體儲一些稱為值的資料。只有當我們知道用於儲存它的確切金鑰時,才可以檢索此資料。我們可以使用命令SET將值“fido”儲存在鍵“server:name”中
SET server:name "fido"
Redis將永久儲存我們的資料,因此我們稍後可以詢問“金鑰伺服器上儲存的值是什麼:名稱?” 和Redis將回復“fido”: GET server:name => "fido"
二、原始碼編譯安裝Redis4.x
redis安裝可安裝在本地,也可以裝在linux系統上(推薦),可以租一個阿里雲伺服器不是很貴的。
簡介:使用原始碼安裝Redis4.x和配置外網訪問
1、快速安裝 https://redis.io/download#installation
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
安裝在linux系統上的命令()
上傳到linux
crt中 alt+p
1. 在 usr/local/redis下新建資料夾 redis
mkdir /usr/local/redis
2 將root下的redis移動到 /usr/local/redis 然後解包(不要加z)
mv redis-3.0.7.tar.gz /usr/local/redis/
cd /usr/local/redis
tar -xvf redis-3.0.7.tar.gz
我為了方便就安裝在本地了
1)
2)
出現如圖所示即可啟動成功
3)想測試的話啟動redis-cli.exe
啟動服務端:src/redis-server
啟動客戶端:src/redis-cli
2、預設是本地訪問的,需要開放外網訪問
1)開啟redis.conf檔案在NETWORK部分修改
註釋掉bind 127.0.0.1可以使所有的ip訪問redis
修改 protected-mode,值改為no
三、SpringBoot2.x整合redis實戰講解
簡介:使用springboot-starter整合reids實戰
1、官網:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#boot-features-redis
叢集文件:https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/#cluster
2、springboot整合redis相關依賴引入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
3、相關配置檔案配置
#=========redis基礎配置=========
spring.redis.database=0(0是預設,改成1,2都行)
spring.redis.host=127.0.0.1
spring.redis.port=6390
# 連線超時時間 單位 ms(毫秒)
spring.redis.timeout=3000
#=========redis執行緒池設定=========
# 連線池中的最大空閒連線,預設值也是8。
spring.redis.pool.max-idle=200(-1是不限制的意思)
#連線池中的最小空閒連線,預設值也是0。
spring.redis.pool.min-idle=200
# 如果賦值為-1,則表示不限制;pool已經分配了maxActive個jedis例項,則此時pool的狀態為exhausted(耗盡)。
spring.redis.pool.max-active=2000
# 等待可用連線的最大時間,單位毫秒,預設值為-1,表示永不超時
spring.redis.pool.max-wait=1000
4、常見redistemplate種類講解和快取實操(使用自動注入)
1、注入模板
@Autowired
private StirngRedisTemplate strTplRedis
2、型別String,List,Hash,Set,ZSet
對應的方法分別是opsForValue()、opsForList()、opsForHash()、opsForSet()、opsForZSet()
補充:
5.啟動訪問
1)
2)
3)redis-cli.exe也可以測試出來
四、Redis工具講解
簡介:高效開發方式 Redis工具類封裝講解和實戰
1、常用客戶端 https://redisdesktop.com/download
介紹redis客戶端
1).根據自己的系統安裝對應的客戶端
2)
3)
4)
5)連線成功,點選ok
6)
7)
8)
9)
10)
總結
1, redis 最適合的場景
Redis最適合所有資料in-momory的場景,雖然Redis也提供持久化功能,但實際更多的是一個disk-backed的功能,跟傳統意義上的持久化有比較大的差別,那麼可能大家就會有疑問,似乎Redis更像一個加強版的Memcached,那麼何時使用Memcached,何時使用Redis呢?
如果簡單地比較Redis與Memcached的區別,大多數都會得到以下觀點:
1 、Redis不僅僅支援簡單的k/v型別的資料,同時還提供list,set,zset,hash等資料結構的儲存。
2 、Redis支援資料的備份,即master-slave模式的資料備份。
3 、Redis支援資料的持久化,可以將記憶體中的資料保持在磁碟中,重啟的時候可以再次載入進行使用。
2、會話快取(Session Cache)