redis配置文件 配置文件對單位大小寫不敏感 tcp-backlog 511 高併發環境連接數 tcp-keepalive 單位為秒 0 表示不會進行keepalive檢測,,,建議設置為60 redis密碼設置 config get requirepass 查看 設置密碼 config set ...
redis配置文件
配置文件對單位大小寫不敏感
tcp-backlog 511 高併發環境連接數
tcp-keepalive 單位為秒 0 表示不會進行keepalive檢測,,,建議設置為60
redis密碼設置
config get requirepass 查看
設置密碼 config set requirepass "12345"
輸入密碼方式 auth 12345
limits 限制最大值
maxmemory <bytes>
maxclients
maxmemory-poilcy
maxmemory-samples
redis持久化:
rdb (redis database) aof (append only file )
rdb:在指定的時間間隔內將數據集快照寫入磁碟中,也就是快照,恢復時將快照文件直接讀到記憶體
用一個新的fork進程來持久化,主進程不進行io操作 dump.rdb
如果想禁用RDB持久化的策略,只要不設置任何save指令或者save傳入一個空字元串
在該條件下觸發持久化,生成dump.rdb文件
stop-writes-on-bgsave-error:
如果配置成no,表示不在意數據不一致或者可以採用其他手段和控制
rdbcompression:
對於存儲到磁碟中的快照,可以設置是否進行壓縮存儲,yes,則redis採用LZF演算法進行壓縮,不願消耗CPU來進行壓縮,可以關閉
rdbchecksum:
在存儲快照後,可以讓redis使用CRC64演算法進行數據校驗,但是會增加10%性能消耗,可以關閉以提升性能
aof
以日誌的形式來記錄每個操作,將redis執行過的所有指令記錄下來(讀操作不記錄)
只允許追加文件,不允許改寫文件,redis啟動後悔讀取文件重現建立數據,也就是說,redis
重啟就根據日誌文件的內容將指令從前到後執行一次已完成數據的回覆
在同一目錄下存在dump.rdb appendonly.aof 時,預設去找 aof ,若aof文件出錯,則redis服務無法啟動
此時採用自動修複方案:redis-check-aof --fix appendonly.aof 可以自動刪除文件中不符合語法的內容 dump文件也可以修複
appendonly no (預設為no使用則需要改成yes)
appendfsync:
always同步持久化,每次數據變更都會立即被記錄到磁碟,性能差但數據完整性好
everysec 預設設置 非同步操作,每秒記錄 一秒內宕機 數據丟失
no
no-appendfsync-on-rewrite:重寫時是否可以運用Appendfsync 預設no 即可 保證數據安全性
auto-aof-rewrite-percentage:設置重寫的基準值
auto-aof-rewrite-min-size:設置重寫的基準值
rewrite:
AOF採用文件追加方式,文件會越來越大為避免出現此種情況,新增重寫機制,當AOF文件大小超過設定閾值時,redis會啟動AOF文件的內容壓縮
重寫觸發機制:redis會記錄上次重寫時AOF文件大小,預設配置為當AOF文件大小是上次rewrite後的大小的一倍且文件大於64M時觸發
劣勢:對於相同的數據集 aof文件遠大於 rdb文件 恢復速度慢 aof運行效率要慢於rdb,每秒同步策略效率較好,不同步效率和rdb相同
redis事物:
可以一次執行多個命令,本質是一組命令的集合。一個事物中所有的命令都會被序列化,按順序地串列化執行而不會被其他命令插入 ,不加塞
discard 取消事物內所有的命令
exec 執行所有事物塊內的命令
multi 標記一個事物快的開始
unwatch 取消watch命令對所有key的監視
watch key [key ...] 監視一個或者多個key,如果事務執行之前key被其他命令改動,那麼事物將被打斷
註意:在整個過程中,如果有錯誤出現,(命令語法錯誤,直接報錯)整個事物不能正常執行
但是如果已經加入的QUEUED了,那麼只是錯誤的無法正常執行,其他的可以正常執行
redis支持部分支持事物