**網絡配置:**
```php
bind 127.0.0.1 # 綁定的ip
protected-mode yes # 保護模式
port 6379 # 默認端口
```
------------
**SECURITY 安全:**
設置redis連接密碼:
```php
requirepass 123456
```
------------
**性能配置:**
```php
maxclients 10000 # 設置能連上redis的最大客戶端連接數量
maxmemory <bytes> # redis配置的最大內存容量
maxmemory-policy noeviction
```
**maxmemory-policy說明: 內存達到上限的處理策略**
- volatile-lru:利用LRU算法移除設置過過期時間的key。
- volatile-random:隨機移除設置過過期時間的key。
- volatile-ttl:移除即將過期的key,根據最近過期時間來刪除(輔以TTL)
- allkeys-lru:利用LRU算法移除任何key。
- allkeys-random:隨機移除任何key。
- noeviction:不移除任何key,只是返回一個寫錯誤。
------------
**GENERAL 通用:**
```asp
daemonize yes
# 默認情況下,Redis不作為守護進程運行。需要開啟的話,改為 yes(開啟就以后臺的方式允許)
```
```php
supervised no # 可通過upstart和systemd管理Redis守護進程
pidfile /var/run/redis_6379.pid # 以后臺進程方式運行redis,則需要指定pid 文件
loglevel notice # 日志級別。可選項有:
# debug(記錄大量日志信息,適用于開發、測試階段);
# verbose(較多日志信息);
# notice(適量日志信息,使用于生產環境);
# warning(僅有部分重要、關鍵信息才會被記錄)。
logfile "" # 日志文件的位置,當指定為空字符串時,為標準輸出
databases 16 # 設置數據庫的數目。默認的數據庫是DB 0
```
------------
**Redis的兩種持久化方式:RDB與AOF**
**1.SNAPSHOPTING 快照(RDB)**
在規定的時間內,有多少個key值變化,才會持久化到文件 .rdb文件或者.aof文件!
redis是內存數據庫,如果沒有持久化,那么數據斷電即失,所以需要持久化的機制!
```php
# 900秒(15分鐘)內至少1個key值改變(則進行數據庫保存--持久化)
save 900 1
# 300秒(5分鐘)內至少10個key值改變(則進行數據庫保存--持久化)
save 300 10
# 60秒(1分鐘)內至少10000個key值改變(則進行數據庫保存--持久化)
save 60 10000
stop-writes-on-bgsave-error yes # 持久化出現錯誤后,是否依然進行繼續進行工作
rdbcompression yes # 是否壓縮rdb文件 yes:壓縮,但是需要一些cpu的消耗。no:不壓縮,需要更多的磁盤空間
rdbchecksum yes # 保存rdb文件的時候,是否進行錯誤的rdb文件檢查校驗,更有利于文件的容錯性,但是在保存rdb文件的時候,會有大概10%的性能損耗
dbfilename dump.rdb # dbfilenamerdb文件名稱
dir ./ # dir 數據目錄,數據庫的寫入會在這個目錄。rdb、aof文件也會寫在這個目錄
```
**2.append only模式(AOF)**
appendonly no # 是否以append only模式作為持久化方式,默認使用的是rdb方式持久化,這種方式在許多應用中已經足夠用了
```php
appendfilename "appendonly.aof" # AOF 持久化文件名稱
appendfsync everysec # appendfsync aof持久化策略的配置
# no表示不執行fsync,由操作系統保證數據同步到磁盤,速度最快。
# always表示每次寫入都執行fsync,以保證數據同步到磁盤。
# everysec表示每秒執行一次fsync,可能會導致丟失這1秒的數據。
```
- Redis介紹
- String類型的應用場景
- Hash類型的應用場景
- List類型應用場景
- Set類型應用場景
- Zset類型應用場景
- Redis官網
- 安裝Redis
- Redis配置文件詳解
- 配置Redis開機啟動
- Redis的命令行工具
- Redis的可視化管理軟件
- 各開發語言對應的Redis庫
- Server管理命令
- 通用命令
- String類型命令
- HASH類型命令
- LIST類型命令
- Set類型命令
- Sorted_Set類型命令
- ThinkPHP集成Redis
- SpringBoot集成Redis
- 實戰篇:優惠券功能概述
- 實戰篇:表單頁面實現
- 實戰篇:后端處理邏輯
- 實戰篇:優惠券類邏輯
- 實戰篇:優惠券列表
- 原理篇:Redis緩存雪崩
- 原理篇:Redis緩存擊穿
- 原理篇:Redis緩存穿透
- 進階篇:Redis的事務與持久化
- 進階篇:Redis集群
- 進階篇:Redis的發布訂閱模式
- 進階篇:Redis分布式鎖
- 進階篇:Redis分布式緩存
- 進階篇:一致性哈希
- 進階篇:Redis安全管理
- 進階篇:Redis性能優化