最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Redis配置文件最佳實踐

 更新時間:2025年05月23日 08:49:49   作者:huangSir-devops  
這篇文章主要介紹了Redis配置文件詳解,本文主要是根據Redis6.0.x版本的配置文件講解,其它版本的也可以當做一個參考,需要的朋友可以參考下

概述

Redis 配置文件的官網地址:https://redis.io/topics/config

GitHub地址:https://github.com/redis/redis/blob/unstable/redis.conf

本文主要是根據Redis6.0.x版本的配置文件講解,其它版本的也可以當做一個參考。

Redis配置說明

基礎配置

# 綁定的IP地址(默認綁定127.0.0.1,僅本地訪問)
# 生產環(huán)境建議綁定具體IP或0.0.0.0(需配合防火墻/密碼)
bind 0.0.0.0
# 監(jiān)聽端口(默認6379)
port 6379
# 是否以守護進程方式運行(默認no),生產環(huán)境建議使用yes
daemonize yes
# PID文件路徑
pidfile /var/run/redis_6379.pid
# 日志級別(debug|verbose|notice|warning,默認notice)
loglevel notice
# 日志文件路徑(設為stdout輸出到控制臺,默認空)
logfile "/var/log/redis/redis.log"
# 數據庫數量(0-15,默認16個)
databases 16
# 是否開啟保護模式(默認yes,僅允許本地訪問或密碼訪問)
protected-mode yes
# 客戶端最大連接數(默認10000,設為0表示無限制)
maxclients 10000

內存管理

# 最大內存限制(如2gb、512mb,默認0表示不限制,生產環(huán)境必須設置)
maxmemory 0
# 內存淘汰策略(默認noeviction)
# - noeviction:禁止寫入,返回錯誤
# - allkeys-lru:移除最近最少使用的key
# - allkeys-random:隨機移除key
# - volatile-lru:移除設置了過期時間的LRU key
# - volatile-random:隨機移除設置了過期時間的key
# - volatile-ttl:移除即將過期的key
# - volatile-lfu:移除最不經常使用的帶過期時間的key
# - allkeys-lfu:移除最不經常使用的key
maxmemory-policy noeviction
# LRU/LFU算法的近似精度(值越大越精確,默認50)
maxmemory-samples 50
# 是否開啟內存碎片自動整理(默認no)
activedefrag no
# 碎片整理觸發(fā)的最小內存碎片量(默認100mb)
active-defrag-ignore-bytes 100mb
# 碎片整理觸發(fā)的最小碎片率(默認10%)
active-defrag-threshold-lower 10
# 碎片整理觸發(fā)的最大碎片率(默認100%)
active-defrag-threshold-upper 100
# 碎片整理使用的CPU時間下限(默認1%)
active-defrag-cycle-min 1
# 碎片整理使用的CPU時間上限(默認25%,避免影響正常服務)
active-defrag-cycle-max 25

持久化配置

RDB 快照

# 自動生成RDB快照的條件(save <seconds> <changes>)
# 可設置多條規(guī)則,滿足任一條件即觸發(fā)
save 900 1      # 900秒內至少1個key被修改
save 300 10     # 300秒內至少10個key被修改
save 60 10000   # 60秒內至少10000個key被修改
# 禁用RDB快照(注釋所有save行)
# save ""
# RDB文件名稱(默認dump.rdb)
dbfilename dump.rdb
# RDB文件存儲路徑(必須是目錄)
dir ./
# RDB文件是否壓縮(默認yes,壓縮可能影響性能)
rdbcompression yes
# RDB文件是否添加CRC64校驗和(默認yes,犧牲約10%性能換取數據完整性)
rdb-checksum yes
# 后臺生成RDB時是否使用增量fsync(默認yes,4.0+支持)
rdb-save-incremental-fsync yes

AOF配置

# 是否啟用AOF持久化(默認no)
appendonly no
# AOF文件名(默認appendonly.aof)
appendfilename "appendonly.aof"
# AOF同步策略(默認everysec)
# - always:每次寫操作都同步到磁盤(最慢但最安全)
# - everysec:每秒同步一次(兼顧性能和安全性)
# - no:由操作系統(tǒng)決定何時同步(最快但可能丟失數據)
appendfsync everysec
# AOF重寫期間是否暫停fsync(默認no,避免數據丟失)
no-appendfsync-on-rewrite no
# AOF文件自動重寫的最小大?。J64mb)
auto-aof-rewrite-min-size 64mb
# AOF文件自動重寫的增長率(默認100%,即當前文件是上次重寫后2倍時觸發(fā))
auto-aof-rewrite-percentage 100
# 加載AOF文件時是否忽略最后一條可能不完整的命令(默認yes)
aof-load-truncated yes
# AOF重寫時是否使用RDB格式的前綴(減少文件體積,默認yes)
aof-use-rdb-preamble yes

主從復制

# 設置當前Redis為從節(jié)點,并指定主節(jié)點(主節(jié)點IP和端口)
replicaof <masterip> <masterport>
# 主節(jié)點密碼(如果有)
masterauth <password>
# 從節(jié)點是否只讀(默認yes)
replica-read-only yes
# 主從復制的網絡超時時間(秒,默認60)
repl-timeout 60
# 主從復制的心跳頻率(秒,默認10)
repl-ping-replica-period 10
# 復制緩沖區(qū)大?。ㄓ糜诒4嬷鞴?jié)點未同步給從節(jié)點的寫命令,默認1mb)
repl-backlog-size 1mb
# 復制緩沖區(qū)的持久化時間(秒,超過此時長且無從節(jié)點連接則釋放內存,默認3600)
repl-backlog-ttl 3600
# 從節(jié)點優(yōu)先級(數值越小優(yōu)先級越高,0表示不參與選舉,默認100)
replica-priority 100
# 主節(jié)點不可用時,從節(jié)點是否繼續(xù)服務讀請求(默認yes)
replica-serve-stale-data yes
# 是否使用無盤復制(主節(jié)點直接通過網絡發(fā)送RDB,避免磁盤I/O,默認no)
repl-diskless-sync no
# 無盤復制的延遲時間(秒,等待更多從節(jié)點連接后一起傳輸,默認5)
repl-diskless-sync-delay 5

安全配置

# 設置訪問密碼(建議使用復雜密碼,生產環(huán)境必須設置)
requirepass foobared
# 是否啟用ACL(訪問控制列表,替代傳統(tǒng)密碼,默認no)
aclfile /etc/redis/users.acl
# 重命名危險命令(例如將FLUSHALL改為安全名稱,或禁用命令)
# rename-command FLUSHALL ""        # 禁用命令
# rename-command FLUSHALL "FLUSHDB"  # 重命名命令(不建議)

網絡與連接

# TCP連接的backlog隊列長度(默認511,影響短時間內的突發(fā)連接處理能力)
tcp-backlog 511
# TCP連接?;顣r間(秒,默認300)
tcp-keepalive 300
# 是否禁用TCP_NODELAY(默認no,啟用Nagle算法減少網絡包數量,但可能增加延遲)
tcp-nodelay no
# 客戶端閑置超時時間(單位秒,默認0表示不超時)
timeout 0

慢查詢日志

# 慢查詢閾值(微秒,默認10000=10ms)
slowlog-log-slower-than 10000
# 慢查詢日志的最大長度(默認128)
slowlog-max-len 128

I/O 線程

# 是否啟用I/O多線程(默認no,4.0+支持,僅加速網絡I/O,命令執(zhí)行仍為單線程)
io-threads-do-reads no
# I/O線程數(建議設置為CPU核心數的一半,不超過8,默認4)
io-threads 4

集群配置(Redis Cluster)

# 是否啟用集群模式(默認no),設置為 yes 時,Redis 實例將以集群節(jié)點的身份運行,參與集群的管理和數據分布。
cluster-enabled no
# 集群配置文件(自動生成,無需手動編輯)
cluster-config-file nodes.conf
# 節(jié)點超時時間(毫秒,默認15000)
cluster-node-timeout 15000
# 故障轉移時,從節(jié)點復制的最小時長(秒,默認10)
cluster-replica-validity-factor 10
# 集群是否要求所有槽位都被分配(默認yes,避免腦裂)
cluster-require-full-coverage yes
# 從節(jié)點是否可以遷移到其他主節(jié)點(默認yes)
cluster-migration-barrier 1

發(fā)布訂閱

# 發(fā)布訂閱的客戶端連接數上限(默認不限制,設為0表示不限制)
pubsub-max-connections 0
# 發(fā)布訂閱的消息隊列長度上限(默認32,防止內存溢出)
client-output-buffer-limit pubsub 32mb 8mb 60

監(jiān)控與統(tǒng)計

# 是否記錄內存分配信息(默認no,生產環(huán)境建議關閉)
memtier yes
# 是否記錄內存碎片信息(默認yes)
meminfo-command yes
# 是否記錄內存分配器的詳細信息(默認no)
malloc-stats no

其他配置

# 是否在啟動時檢查AOF文件(默認yes)
aof-checksum yes
# 是否啟用Lua腳本功能(默認yes)
lua-time-limit 5000  # Lua腳本最大執(zhí)行時間(毫秒,默認5000)
# 是否啟用哈希表的漸進式rehash(默認yes,提高性能)
activerehashing yes
# 是否啟用大頁內存(默認no,啟用可能導致延遲問題)
transparent-hugepage yes
# 是否啟用客戶端追蹤(默認no,用于調試客戶端請求來源)
client-tracking no
# 客戶端追蹤的重定向模式(默認OFF)
# - ON:追蹤所有客戶端
# - REDIRECT:將追蹤信息重定向到指定客戶端
client-tracking-redirection ""
# 是否啟用延遲監(jiān)控(默認no)
latency-monitor-threshold 0  # 設為0表示禁用,設為具體值(如10)則監(jiān)控超過此值的操作
# 延遲監(jiān)控的歷史記錄長度(默認1024)
latency-history-length 1024

配置文件最佳實踐

  • 設置 maxmemory 和合理的 maxmemory-policy(如 allkeys-lru)。
  • 啟用 AOF 持久化(appendonly yes)并設置 appendfsync everysec。
  • 配置 requirepass 并禁用危險命令(如 FLUSHALL)。
  • 對于讀寫密集型場景,啟用 I/O 線程(io-threads)。
  • 根據內存碎片情況調整 activedefrag 參數。
  • 禁用不必要的功能(如 Lua 腳本、發(fā)布訂閱)以減少資源消耗。
  • 禁用 protected-mode 并通過 bind 和防火墻限制訪問。
  • 使用 ACL 替代傳統(tǒng)密碼認證(Redis 6.0+)。
  • 定期備份 RDB 或 AOF 文件到外部存儲。

到此這篇關于Redis配置文件詳解的文章就介紹到這了,更多相關Redis配置文件詳解內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解如何使用Redis作為高效緩存

    詳解如何使用Redis作為高效緩存

    Redis是一個高性能的 內存存儲系統(tǒng),通常被用作 緩存 來加速數據訪問,提高應用的吞吐量和響應速度,本文詳細講解如何使用 Redis 作為高效緩存,包括基本原理、常見模式、最佳實踐以及優(yōu)化技巧,需要的朋友可以參考下
    2025-01-01
  • springboot項目redis緩存異常實戰(zhàn)案例詳解(提供解決方案)

    springboot項目redis緩存異常實戰(zhàn)案例詳解(提供解決方案)

    redis基本上是高并發(fā)場景上會用到的一個高性能的key-value數據庫,屬于nosql類型,一般用作于緩存,一般是結合數據庫一塊使用的,但是在使用的過程中可能會出現異常的問題,這篇文章主要介紹了springboot項目redis緩存異常實戰(zhàn)案例詳解(提供解決方案),需要的朋友可以參考下
    2025-05-05
  • Redis GEO實現搜索附近用戶的項目實踐

    Redis GEO實現搜索附近用戶的項目實踐

    RedisGEO主要用于存儲地理位置信息,并對存儲的信息進行操作,本文主要介紹了Redis GEO實現搜索附近用戶的項目實踐,具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • Redis序列化轉換類型報錯的解決

    Redis序列化轉換類型報錯的解決

    本文主要介紹了Redis序列化轉換類型報錯的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • 淺析Redis中String數據類型及其底層編碼

    淺析Redis中String數據類型及其底層編碼

    這篇文章主要介紹?Redis?中?String?數據類型及其底層編碼,文中有詳細的代碼示例,對大家的工作及學習有一定的幫助,需要的朋友可以參考下
    2023-05-05
  • Redis分布式鎖解決超賣問題

    Redis分布式鎖解決超賣問題

    超賣問題是典型的多線程安全問題,本文就來介紹一下Redis分布式鎖解決超賣問題,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • Redis跳躍表添加元素的方法實現

    Redis跳躍表添加元素的方法實現

    本文主要介紹了Redis跳躍表添加元素的方法實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • 手把手教你使用redis實現排行榜功能

    手把手教你使用redis實現排行榜功能

    使用Redis中有序集合的特性來實現排行榜是又好又快的選擇,一般排行榜都是有實效性的,比如“用戶積分榜”,下面這篇文章主要給大家介紹了關于使用redis實現排行榜功能的相關資料,需要的朋友可以參考下
    2023-04-04
  • redis?Template.opsForValue()中方法實例詳解

    redis?Template.opsForValue()中方法實例詳解

    這篇文章主要介紹了redis?Template.opsForValue()中方法講解,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • Redis連接超時異常的處理方法

    Redis連接超時異常的處理方法

    這篇文章主要給大家介紹了關于Redis連接超時異常的處理方法,文中通過示例代碼以及圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2020-07-07

最新評論

平江县| 东至县| 成安县| 浦江县| 剑川县| 灯塔市| 中江县| 新昌县| 高尔夫| 文登市| 万山特区| 嘉定区| 庄浪县| 抚顺县| 辽宁省| 塘沽区| 吴桥县| 玉树县| 凉山| 嫩江县| 阜新市| 平罗县| 札达县| 莒南县| 留坝县| 红安县| 彰武县| 仲巴县| 门源| 肇庆市| 灌云县| 营山县| 北流市| 武邑县| 慈利县| 岫岩| 贵德县| 资中县| 泗洪县| 车致| 长葛市|