日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

最近對(duì)redis使用較為頻繁,各項(xiàng)配置已經(jīng)不太熟練,結(jié)合各位大佬分享的配置,整理一篇筆記,方便查詢。

1.基礎(chǔ)參數(shù)配置

# 是否在后臺(tái)執(zhí)行,yes:后臺(tái)運(yùn)行;no:不是后臺(tái)運(yùn)行(老版本默認(rèn))
daemonize yes
 
# 是否開(kāi)啟保護(hù)模式(默認(rèn)開(kāi)啟)
# 要是配置里沒(méi)有指定bind和密碼。開(kāi)啟該參數(shù)后,redis只會(huì)本地進(jìn)行訪問(wèn),拒絕外部訪問(wèn)。要是開(kāi)啟了密碼 和bind,可以開(kāi)啟。否 則最好關(guān)閉,設(shè)置為no。
protected-mode yes
# redis的進(jìn)程文件
pidfile /var/run/redis/redis-server.pid
# redis監(jiān)聽(tīng)的端口號(hào)
port 6379
# 此參數(shù)確定了TCP連接中已完成隊(duì)列的長(zhǎng)度(默認(rèn)511)
tcp-backlog 511
 
# 指定redis只接收指定IP地址的請(qǐng)求
# 如需處理所有請(qǐng)求(遠(yuǎn)程訪問(wèn)) bind 0.0.0.0
bind 127.0.0.1
 
# 配置unix socket來(lái)讓redis支持監(jiān)聽(tīng)本地連接。
unixsocket /var/run/redis/redis.sock
# 配置unix socket使用文件的權(quán)限
unixsocketperm 700
 
# 此參數(shù)為設(shè)置客戶端空閑超過(guò)timeout,服務(wù)端會(huì)斷開(kāi)連接,為0則服務(wù)端不會(huì)主動(dòng)斷開(kāi)連接,不能小于0。
timeout 0
 
# tcp keepalive參數(shù)。如果設(shè)置不為0,就使用配置tcp的SO_KEEPALIVE值,使用keepalive有兩個(gè)好處:檢測(cè)掛掉的對(duì)端。降低中間設(shè)備出問(wèn)題而導(dǎo)致網(wǎng)絡(luò)看似連接卻已經(jīng)與對(duì)端端口的問(wèn)題。在linux內(nèi)核中,設(shè)置了keepalive,redis會(huì)定時(shí)給對(duì)端發(fā)送ack。檢測(cè)到對(duì)端關(guān)閉需要兩倍的設(shè)置值。
tcp-keepalive 0
 
# 指定了服務(wù)端日志的級(jí)別
# debug(適合開(kāi)發(fā)、測(cè)試環(huán)境)
# verbose(較少于debug級(jí)別 適合開(kāi)發(fā)、測(cè)試環(huán)境)
# notice(適合生產(chǎn)環(huán)境)
# warn(只有非常重要的信息)
loglevel notice
 
# 指定了記錄日志的文件。空字符串的話,日志會(huì)打印到標(biāo)準(zhǔn)輸出設(shè)備。后臺(tái)運(yùn)行的redis標(biāo)準(zhǔn)輸出是/dev/null。
logfile /var/log/redis/redis-server.log
 
# 是否打開(kāi)記錄syslog功能
# syslog-enabled no
 
# syslog的標(biāo)識(shí)符
# syslog-ident redis
 
# 日志的來(lái)源、設(shè)備
# syslog-facility local0
 
# 數(shù)據(jù)庫(kù)的數(shù)量(默認(rèn)16)
databases 16

2.持久化配置

# 注釋掉"save"這一行配置項(xiàng)就可以讓保存數(shù)據(jù)庫(kù)功能失效
# 設(shè)置redis進(jìn)行數(shù)據(jù)庫(kù)鏡像的頻率。
# 900秒(15分鐘)內(nèi)至少1個(gè)key值改變(則進(jìn)行數(shù)據(jù)庫(kù)保存--持久化) 
# 300秒(5分鐘)內(nèi)至少10個(gè)key值改變(則進(jìn)行數(shù)據(jù)庫(kù)保存--持久化) 
# 60秒(1分鐘)內(nèi)至少10000個(gè)key值改變(則進(jìn)行數(shù)據(jù)庫(kù)保存--持久化)
save 900 1
save 300 10
save 60 10000
# 當(dāng)rdb持久化出現(xiàn)錯(cuò)誤后,是否依然進(jìn)行繼續(xù)進(jìn)行工作,
# yes:不能進(jìn)行工作,
# no:可以繼續(xù)進(jìn)行工作,
# 可以通過(guò)info中的rdb_last_bgsave_status了解RDB持久化是否有錯(cuò)誤
stop-writes-on-bgsave-error yes
# 使用壓縮rdb文件
# yes:壓縮,但是需要一些cpu的消耗
# no:不壓縮,需要更多的磁盤(pán)空間
rdbcompression yes
# 是否校驗(yàn)rdb文件
rdbchecksum yes
# rdb文件的名稱
dbfilename dump.rdb
# 數(shù)據(jù)目錄,數(shù)據(jù)庫(kù)的寫(xiě)入會(huì)在這個(gè)目錄。rdb、aof文件也會(huì)寫(xiě)在這個(gè)目錄
dir /var/lib/redis
# 默認(rèn)redis使用的是rdb方式持久化,這種方式在許多應(yīng)用中已經(jīng)足夠用了。但是redis如果中途宕機(jī),會(huì)導(dǎo)致可能有幾分鐘的數(shù)據(jù)丟失,根據(jù)save來(lái)策略進(jìn)行持久化,Append Only File是另一種持久化方式,可以提供更好的持久化特性。Redis會(huì)把每次寫(xiě)入的數(shù)據(jù)在接收后都寫(xiě)入 appendonly.aof 文件,每次啟動(dòng)時(shí)Redis都會(huì)先把這個(gè)文件的數(shù)據(jù)讀入內(nèi)存里,先忽略RDB文件。
appendonly no
 
# aof文件名
appendfilename "appendonly.aof"
 
# aof持久化策略的配置
# no表示不執(zhí)行fsync,由操作系統(tǒng)保證數(shù)據(jù)同步到磁盤(pán),速度最快。
# always表示每次寫(xiě)入都執(zhí)行fsync,以保證數(shù)據(jù)同步到磁盤(pán)。
# everysec表示每秒執(zhí)行一次fsync,可能會(huì)導(dǎo)致丟失這1s數(shù)據(jù)。
appendfsync everysec
 
# 在aof重寫(xiě)或者寫(xiě)入rdb文件的時(shí)候,會(huì)執(zhí)行大量IO,此時(shí)對(duì)于everysec和always的aof模式來(lái)說(shuō),執(zhí)行fsync會(huì)造成阻塞過(guò)長(zhǎng)時(shí)間,no-appendfsync-on-rewrite字段設(shè)置為默認(rèn)設(shè)置為no。如果對(duì)延遲要求很高的應(yīng)用,這個(gè)字段可以設(shè)置為yes,否則還是設(shè)置為no,這樣對(duì)持久化特性來(lái)說(shuō)這是更安全的選擇。設(shè)置為yes表示rewrite期間對(duì)新寫(xiě)操作不fsync,暫時(shí)存在內(nèi)存中,等rewrite完成后再寫(xiě)入,默認(rèn)為no,建議yes。Linux的默認(rèn)fsync策略是30秒。可能丟失30秒數(shù)據(jù)。
no-appendfsync-on-rewrite no
 
# aof自動(dòng)重寫(xiě)配置。當(dāng)目前aof文件大小超過(guò)上一次重寫(xiě)的aof文件大小的百分之多少進(jìn)行重寫(xiě),即當(dāng)aof文件增長(zhǎng)到一定大小的時(shí)候Redis能夠調(diào)用bgrewriteaof對(duì)日志文件進(jìn)行重寫(xiě)。當(dāng)前AOF文件大小是上次日志重寫(xiě)得到AOF文件大小的二倍(設(shè)置為100)時(shí),自動(dòng)啟動(dòng)新的日志重寫(xiě)過(guò)程。
auto-aof-rewrite-percentage 100
# 設(shè)置允許重寫(xiě)的最小aof文件大小,避免了達(dá)到約定百分比但尺寸仍然很小的情況還要重寫(xiě)
auto-aof-rewrite-min-size 64mb
 
# aof文件可能在尾部是不完整的,當(dāng)redis啟動(dòng)的時(shí)候,aof文件的數(shù)據(jù)被載入內(nèi)存。重啟可能發(fā)生在redis所在的主機(jī)操作系統(tǒng)宕機(jī)后,尤其在ext4文件系統(tǒng)沒(méi)有加上data=ordered選項(xiàng)(redis宕機(jī)或者異常終止不會(huì)造成尾部不完整現(xiàn)象。)出現(xiàn)這種現(xiàn)象,可以選擇讓redis退出,或者導(dǎo)入盡可能多的數(shù)據(jù)。如果選擇的是yes,當(dāng)截?cái)嗟腶of文件被導(dǎo)入的時(shí)候,會(huì)自動(dòng)發(fā)布一個(gè)log給客戶端然后load。如果是no,用戶必須手動(dòng)redis-check-aof修復(fù)AOF文件才可以。
aof-load-truncated yes

3.主從配置

# 復(fù)制選項(xiàng),slave復(fù)制對(duì)應(yīng)的master
slaveof <masterip> <masterport>
 
# 如果master設(shè)置了requirepass,那么slave要連上master,需要有master的密碼才行。masterauth就是用來(lái)配置master的密碼,這樣可以在連上master后進(jìn)行認(rèn)證
masterauth <master-password>
 
# 當(dāng)slave同master失去連接或者復(fù)制正在進(jìn)行,slave的運(yùn)行方式
# 1.如果slave-serve-stale-data設(shè)置為yes(默認(rèn)設(shè)置),slave會(huì)繼續(xù)響應(yīng)客戶端的請(qǐng)求。
# 2.如果slave-serve-stale-data設(shè)置為no,除去INFO和SLAVOF命令之外的任何請(qǐng)求都會(huì)返回一個(gè)錯(cuò)誤”SYNC with master in progress”。
slave-serve-stale-data yes
 
# slave服務(wù)器讀寫(xiě)配置
# 默認(rèn)情況下是只讀的(yes)
# 修改成no,可讀可寫(xiě)(不建議)
slave-read-only yes
 
# 是否使用socket方式復(fù)制數(shù)據(jù)。目前redis復(fù)制提供兩種方式,disk和socket。如果新的slave連上來(lái)或者重連的slave無(wú)法部分同步,就會(huì)執(zhí)行全量同步,master會(huì)生成rdb文件。有2種方式:disk方式是master創(chuàng)建一個(gè)新的進(jìn)程把rdb文件保存到磁盤(pán),再把磁盤(pán)上的rdb文件傳遞給slave。socket是master創(chuàng)建一個(gè)新的進(jìn)程,直接把rdb文件以socket的方式發(fā)給slave。disk方式的時(shí)候,當(dāng)一個(gè)rdb保存的過(guò)程中,多個(gè)slave都能共享這個(gè)rdb文件。socket的方式就的一個(gè)個(gè)slave順序復(fù)制。在磁盤(pán)速度緩慢,網(wǎng)速快的情況下推薦用socket方式。
repl-diskless-sync no
 
# diskless復(fù)制的延遲時(shí)間,防止設(shè)置為0。一旦復(fù)制開(kāi)始,節(jié)點(diǎn)不會(huì)再接收新slave的復(fù)制請(qǐng)求直到下一個(gè)rdb傳輸。所以最好等待一段時(shí)間,等更多的slave連上來(lái)。
repl-diskless-sync-delay 5
 
# slave根據(jù)指定的時(shí)間間隔向服務(wù)器發(fā)送ping請(qǐng)求
# 時(shí)間間隔可以通過(guò) repl_ping_slave_period 來(lái)設(shè)置,默認(rèn)10秒。
repl-ping-slave-period 10
 
# 復(fù)制連接超時(shí)時(shí)間。master和slave都有超時(shí)時(shí)間的設(shè)置。master檢測(cè)到slave上次發(fā)送的時(shí)間超過(guò)repl-timeout,即認(rèn)為slave離線,清除該slave信息。slave檢測(cè)到上次和master交互的時(shí)間超過(guò)repl-timeout,則認(rèn)為master離線。需要注意的是repl-timeout需要設(shè)置一個(gè)比repl-ping-slave-period更大的值,不然會(huì)經(jīng)常檢測(cè)到超時(shí)。
repl-timeout 60
 
# 是否禁止復(fù)制tcp鏈接的tcp nodelay參數(shù),可傳遞yes或者no。默認(rèn)是no,即使用tcp nodelay。如果master設(shè)置了yes來(lái)禁止tcp nodelay設(shè)置,在把數(shù)據(jù)復(fù)制給slave的時(shí)候,會(huì)減少包的數(shù)量和更小的網(wǎng)絡(luò)帶寬。但是這也可能帶來(lái)數(shù)據(jù)的延遲。默認(rèn)我們推薦更小的延遲,但是在數(shù)據(jù)量傳輸很大的場(chǎng)景下,建議選擇yes。
repl-disable-tcp-nodelay no
 
# 復(fù)制緩沖區(qū)大小,這是一個(gè)環(huán)形復(fù)制緩沖區(qū),用來(lái)保存最新復(fù)制的命令。這樣在slave離線的時(shí)候,不需要完全復(fù)制master的數(shù)據(jù),如果可以執(zhí)行部分同步,只需要把緩沖區(qū)的部分?jǐn)?shù)據(jù)復(fù)制給slave,就能恢復(fù)正常復(fù)制狀態(tài)。緩沖區(qū)的大小越大,slave離線的時(shí)間可以更長(zhǎng),復(fù)制緩沖區(qū)只有在有slave連接的時(shí)候才分配內(nèi)存。沒(méi)有slave的一段時(shí)間,內(nèi)存會(huì)被釋放出來(lái),默認(rèn)1m。
repl-backlog-size 5mb
 
# master沒(méi)有slave一段時(shí)間會(huì)釋放復(fù)制緩沖區(qū)的內(nèi)存,repl-backlog-ttl用來(lái)設(shè)置該時(shí)間長(zhǎng)度。單位為秒。
repl-backlog-ttl 3600
 
# 當(dāng)master不可用,Sentinel會(huì)根據(jù)slave的優(yōu)先級(jí)選舉一個(gè)master。最低的優(yōu)先級(jí)的slave,當(dāng)選master。而配置成0,永遠(yuǎn)不會(huì)被選舉。
slave-priority 100
 
# redis提供了可以讓master停止寫(xiě)入的方式,如果配置了min-slaves-to-write,健康的slave的個(gè)數(shù)小于N,mater就禁止寫(xiě)入。master最少得有多少個(gè)健康的slave存活才能執(zhí)行寫(xiě)命令。這個(gè)配置雖然不能保證N個(gè)slave都一定能接收到master的寫(xiě)操作,但是能避免沒(méi)有足夠健康的slave的時(shí)候,master不能寫(xiě)入來(lái)避免數(shù)據(jù)丟失。設(shè)置為0是關(guān)閉該功能。
# min-slaves-to-write 3
 
# 延遲小于min-slaves-max-lag秒的slave才認(rèn)為是健康的slave。
min-slaves-max-lag 10
 
# 設(shè)置1或另一個(gè)設(shè)置為0禁用這個(gè)特性。
min-slaves-max-lag is set to 10.

4.安全配置

# 配置redis連接密碼(默認(rèn)未啟用,建議啟用)
requirepass foobared
 
# 把危險(xiǎn)的命令給修改成其他名稱。比如CONFIG命令可以重命名為一個(gè)很難被猜到的命令,這樣外部連接不能使用,而服務(wù)器內(nèi)部連接工具還能繼續(xù)使用。
rename-command CONFIG cmd
 
# 設(shè)置成一個(gè)空的值,可以禁止一個(gè)命令
rename-command CONFIG ""

5.連接配置

# 設(shè)置能連上redis的最大客戶端連接數(shù)量。默認(rèn)是10000個(gè)客戶端連接。由于redis不區(qū)分連接是客戶端連接還是內(nèi)部打開(kāi)文件或者和slave連接等,所以maxclients最小建議設(shè)置到32。如果超過(guò)了maxclients,redis會(huì)給新的連接發(fā)送’max number of clients reached’,并關(guān)閉連接。
maxclients 10000
 
# redis配置的最大內(nèi)存容量。當(dāng)內(nèi)存滿了,需要配合maxmemory-policy策略進(jìn)行處理。注意slave的輸出緩沖區(qū)是不計(jì)算在maxmemory內(nèi)的。所以為了防止主機(jī)內(nèi)存使用完,建議設(shè)置的maxmemory需要更小一些。
maxmemory <bytes>
 
# 內(nèi)存容量超過(guò)maxmemory后的處理策略。
# volatile-lru:利用LRU算法移除設(shè)置過(guò)過(guò)期時(shí)間的key。
# volatile-random:隨機(jī)移除設(shè)置過(guò)過(guò)期時(shí)間的key。
# volatile-ttl:移除即將過(guò)期的key,根據(jù)最近過(guò)期時(shí)間來(lái)刪除(輔以TTL)
# allkeys-lru:利用LRU算法移除任何key。
# allkeys-random:隨機(jī)移除任何key。
# noeviction:不移除任何key,只是返回一個(gè)寫(xiě)錯(cuò)誤。
# 上面的這些驅(qū)逐策略,如果redis沒(méi)有合適的key驅(qū)逐,對(duì)于寫(xiě)命令,還是會(huì)返回錯(cuò)誤。redis將不再接收寫(xiě)請(qǐng)求,只接收get請(qǐng)求。
maxmemory-policy noeviction
 
# lru檢測(cè)的樣本數(shù)。使用lru或者ttl淘汰算法,從需要淘汰的列表中隨機(jī)選擇sample個(gè)key,選出閑置時(shí)間最長(zhǎng)的key移除。
maxmemory-samples 5
 
# 如果達(dá)到最大時(shí)間限制(毫秒),redis會(huì)記個(gè)log,然后返回error。當(dāng)一個(gè)腳本超過(guò)了最大時(shí)限。只有SCRIPT KILL和SHUTDOWN NOSAVE可以用。第一個(gè)可以殺沒(méi)有調(diào)write命令的東西。要是已經(jīng)調(diào)用了write,只能用第二個(gè)命令殺。
lua-time-limit 5000

6.集群配置

# 集群開(kāi)關(guān),默認(rèn)是不開(kāi)啟集群模式。
cluster-enabled yes
 
# 集群配置文件的名稱,每個(gè)節(jié)點(diǎn)都有一個(gè)集群相關(guān)的配置文件,持久化保存集群的信息。這個(gè)文件并不需要手動(dòng)配置,這個(gè)配置文件有Redis生成并更新,每個(gè)Redis集群節(jié)點(diǎn)需要一個(gè)單獨(dú)的配置文件,請(qǐng)確保與實(shí)例運(yùn)行的系統(tǒng)中配置文件名稱不沖突
# cluster-config-file nodes-a.conf
 
# 節(jié)點(diǎn)互連超時(shí)的閥值。集群節(jié)點(diǎn)超時(shí)毫秒數(shù)
# cluster-node-timeout 15000
 
# 在進(jìn)行故障轉(zhuǎn)移的時(shí)候,全部slave都會(huì)請(qǐng)求申請(qǐng)為master,但是有些slave可能與master斷開(kāi)連接一段時(shí)間了,導(dǎo)致數(shù)據(jù)過(guò)于陳舊,這樣的slave不應(yīng)該被提升為master。該參數(shù)就是用來(lái)判斷slave節(jié)點(diǎn)與master斷線的時(shí)間是否過(guò)長(zhǎng)。判斷方法是:
# 比較slave斷開(kāi)連接的時(shí)間和(node-timeout * slave-validity-factor) +repl-ping-slave-period
# 如果節(jié)點(diǎn)超時(shí)時(shí)間為三十秒, 并且slave-validity-factor為10,假設(shè)默認(rèn)的repl-ping-slave-period是10秒,即如果超過(guò)310秒slave將不會(huì)嘗試進(jìn)行故障轉(zhuǎn)移 
cluster-slave-validity-factor 10
 
# master的slave數(shù)量大于該值,slave才能遷移到其他孤立master上,如這個(gè)參數(shù)若被設(shè)為2,那么只有當(dāng)一個(gè)主節(jié)點(diǎn)擁有2 個(gè)可工作的從節(jié)點(diǎn)時(shí),它的一個(gè)從節(jié)點(diǎn)會(huì)嘗試遷移。
cluster-migration-barrier 1
 
# 默認(rèn)情況下,集群全部的slot有節(jié)點(diǎn)負(fù)責(zé),集群狀態(tài)才為ok,才能提供服務(wù)。設(shè)置為no,可以在slot沒(méi)有全部分配的時(shí)候提供服務(wù)。不建議打開(kāi)該配置,這樣會(huì)造成分區(qū)的時(shí)候,小分區(qū)的master一直在接受寫(xiě)請(qǐng)求,而造成很長(zhǎng)時(shí)間數(shù)據(jù)不一致。
cluster-require-full-coverage yes

7.慢查詢?nèi)罩?/p>

# slog log是用來(lái)記錄redis運(yùn)行中執(zhí)行比較慢的命令耗時(shí)。當(dāng)命令的執(zhí)行超過(guò)了指定時(shí)間,就記錄在slow log中,slog log保存在內(nèi)存中,所以沒(méi)有IO操作。
# 執(zhí)行時(shí)間比slowlog-log-slower-than大的請(qǐng)求記錄到slowlog里面,單位是微秒,所以1000000就是1秒。注意,負(fù)數(shù)時(shí)間會(huì)禁用慢查詢?nèi)罩荆?則會(huì)強(qiáng)制記錄所有命令。
slowlog-log-slower-than 10000
 
# 慢查詢?nèi)罩鹃L(zhǎng)度。當(dāng)一個(gè)新的命令被寫(xiě)進(jìn)日志的時(shí)候,最老的那個(gè)記錄會(huì)被刪掉。這個(gè)長(zhǎng)度沒(méi)有限制。只要有足夠的內(nèi)存就行。你可以通過(guò) SLOWLOG RESET 來(lái)釋放內(nèi)存。
slowlog-max-len 128
# 延遲監(jiān)控功能是用來(lái)監(jiān)控redis中執(zhí)行比較緩慢的一些操作,用LATENCY打印redis實(shí)例在跑命令時(shí)的耗時(shí)圖表。只記錄大于等于下邊設(shè)置的值的操作。0的話,就是關(guān)閉監(jiān)視。默認(rèn)延遲監(jiān)控功能是關(guān)閉的,如果你需要打開(kāi),也可以通過(guò)CONFIG SET命令動(dòng)態(tài)設(shè)置
latency-monitor-threshold 0

8.事件通知配置

# 鍵空間通知使得客戶端可以通過(guò)訂閱頻道或模式,來(lái)接收那些以某種方式改動(dòng)了 Redis 數(shù)據(jù)集的事件。因?yàn)殚_(kāi)啟鍵空間通知功能需要消耗一些 CPU ,所以在默認(rèn)配置下,該功能處于關(guān)閉狀態(tài)。
# notify-keyspace-events的參數(shù)可以是以下字符的任意組合,它指定了服務(wù)器該發(fā)送哪些類型的通知:
##K 鍵空間通知,所有通知以 __keyspace@__ 為前綴
##E 鍵事件通知,所有通知以 __keyevent@__ 為前綴
##g DEL 、 EXPIRE 、 RENAME 等類型無(wú)關(guān)的通用命令的通知
##$ 字符串命令的通知
##l 列表命令的通知
##s 集合命令的通知
##h 哈希命令的通知
##z 有序集合命令的通知
##x 過(guò)期事件:每當(dāng)有過(guò)期鍵被刪除時(shí)發(fā)送
##e 驅(qū)逐(evict)事件:每當(dāng)有鍵因?yàn)?maxmemory 政策而被刪除時(shí)發(fā)送
##A 參數(shù) g$lshzxe 的別名
# 輸入的參數(shù)中至少要有一個(gè) K 或者 E,否則的話,不管其余的參數(shù)是什么,都不會(huì)有任何 通知被分發(fā)。
 
notify-keyspace-events ""

9.高級(jí)配置

# 數(shù)據(jù)量小于等于hash-max-ziplist-entries的用ziplist,大于hash-max-ziplist-entries用hash
hash-max-ziplist-entries 512
 
# value大小小于等于hash-max-ziplist-value的用ziplist,大于hash-max-ziplist-value用hash
hash-max-ziplist-value 64
 
# -5:最大大小:64 KB<--不建議用于正常工作負(fù)載
# -4:最大大小:32 KB<--不推薦
# -3:最大大小:16 KB<--可能不推薦
# -2:最大大小:8kb<--良好
# -1:最大大小:4kb<--良好
list-max-ziplist-size -2
 
# 0:禁用所有列表壓縮
# 1:深度1表示“在列表中的1個(gè)節(jié)點(diǎn)之后才開(kāi)始?jí)嚎s,
# 從頭部或尾部
# 所以:【head】->node->node->…->node->【tail】
# [頭部],[尾部]將始終未壓縮;內(nèi)部節(jié)點(diǎn)將壓縮。
# 2:[頭部]->[下一步]->節(jié)點(diǎn)->節(jié)點(diǎn)->…->節(jié)點(diǎn)->[上一步]->[尾部]
# 2這里的意思是:不要壓縮頭部或頭部->下一個(gè)或尾部->上一個(gè)或尾部,
# 但是壓縮它們之間的所有節(jié)點(diǎn)。
# 3:[頭部]->[下一步]->[下一步]->節(jié)點(diǎn)->節(jié)點(diǎn)->…->節(jié)點(diǎn)->[上一步]->[上一步]->[尾部]
list-compress-depth 0
 
# 數(shù)據(jù)量小于等于set-max-intset-entries用iniset,大于set-max-intset-entries用set
set-max-intset-entries 512
 
# 數(shù)據(jù)量小于等于zset-max-ziplist-entries用ziplist,大于zset-max-ziplist-entries用zset
zset-max-ziplist-entries 128
 
# value大小小于等于zset-max-ziplist-value用ziplist,大于zset-max-ziplist-value用zset
zset-max-ziplist-value 64
 
# value大小小于等于hll-sparse-max-bytes使用稀疏數(shù)據(jù)結(jié)構(gòu)(sparse),大于hll-sparse-max-bytes使用稠密的數(shù)據(jù)結(jié)構(gòu)(dense)。一個(gè)比16000大的value是幾乎沒(méi)用的,建議的value大概為3000。如果對(duì)CPU要求不高,對(duì)空間要求較高的,建議設(shè)置到10000左右
hll-sparse-max-bytes 3000
 
# 宏觀節(jié)點(diǎn)的最大流/項(xiàng)目的大小。在流數(shù)據(jù)結(jié)構(gòu)是一個(gè)基數(shù)
# 樹(shù)節(jié)點(diǎn)編碼在這項(xiàng)大的多。利用這個(gè)配置它是如何可能#大節(jié)點(diǎn)配置是單字節(jié)和
# 最大項(xiàng)目數(shù),這可能包含了在切換到新節(jié)點(diǎn)的時(shí)候
# appending新的流條目。如果任何以下設(shè)置來(lái)設(shè)置
# ignored極限是零,例如,操作系統(tǒng),它有可能只是一集通過(guò)設(shè)置限制最大#紀(jì)錄到最大字節(jié)0和最大輸入到所需的值
stream-node-max-bytes 4096
stream-node-max-entries 100
 
# Redis將在每100毫秒時(shí)使用1毫秒的CPU時(shí)間來(lái)對(duì)redis的hash表進(jìn)行重新hash,可以降低內(nèi)存的使用。當(dāng)你的使用場(chǎng)景中,有非常嚴(yán)格的實(shí)時(shí)性需要,不能夠接受Redis時(shí)不時(shí)的對(duì)請(qǐng)求有2毫秒的延遲的話,把這項(xiàng)配置為no。如果沒(méi)有這么嚴(yán)格的實(shí)時(shí)性要求,可以設(shè)置為yes,以便能夠盡可能快的釋放內(nèi)存
activerehashing yes
 
# 對(duì)客戶端輸出緩沖進(jìn)行限制可以強(qiáng)迫那些不從服務(wù)器讀取數(shù)據(jù)的客戶端斷開(kāi)連接,用來(lái)強(qiáng)制關(guān)閉傳輸緩慢的客戶端。
# 對(duì)于normal client,第一個(gè)0表示取消hardlimit,第二個(gè)0和第三個(gè)0表示取消soft limit,normal client默認(rèn)取消限制,因?yàn)槿绻麤](méi)有尋問(wèn),他們是不會(huì)接收數(shù)據(jù)
client-output-buffer-limit normal 0 0 0
 
# 對(duì)于slave client和MONITERclient,如果client-output-buffer一旦超過(guò)256mb,又或者超過(guò)64mb持續(xù)60秒,那么服務(wù)器就會(huì)立即斷開(kāi)客戶端連接
client-output-buffer-limit replica 256mb 64mb 60
 
# 對(duì)于pubsub client,如果client-output-buffer一旦超過(guò)32mb,又或者超過(guò)8mb持續(xù)60秒,那么服務(wù)器就會(huì)立即斷開(kāi)客戶端連接
client-output-buffer-limit pubsub 32mb 8mb 60
 
# 這是客戶端查詢的緩存極限值大小
client-query-buffer-limit 1gb
 
# 在redis協(xié)議中,批量請(qǐng)求,即表示單個(gè)字符串,通常限制為512MB。但是您可以更改此限制。
# proto-max-bulk-len 512mb
 
# redis執(zhí)行任務(wù)的頻率為1s除以hz
hz 10
 
# 當(dāng)啟用動(dòng)態(tài)赫茲時(shí),實(shí)際配置的赫茲將用作作為基線,但實(shí)際配置的赫茲值的倍數(shù)
# 在連接更多客戶端后根據(jù)需要使用。這樣一個(gè)閑置的實(shí)例將占用很少的CPU時(shí)間,而繁忙的實(shí)例將反應(yīng)更靈敏
dynamic-hz yes
 
# 在aof重寫(xiě)的時(shí)候,如果打開(kāi)了aof-rewrite-incremental-fsync開(kāi)關(guān),系統(tǒng)會(huì)每32MB執(zhí)行一次fsync。這對(duì)于把文件寫(xiě)入磁盤(pán)是有幫助的,可以避免過(guò)大的延遲峰值
aof-rewrite-incremental-fsync yes
 
# 在rdb保存的時(shí)候,如果打開(kāi)了rdb-save-incremental-fsync開(kāi)關(guān),系統(tǒng)會(huì)每32MB執(zhí)行一次fsync。這對(duì)于把文件寫(xiě)入磁盤(pán)是有幫助的,可以避免過(guò)大的延遲峰值
rdb-save-incremental-fsync yes

10.碎片整理

# 已啟用活動(dòng)碎片整理
# activedefrag yes
 
# 啟動(dòng)活動(dòng)碎片整理的最小碎片浪費(fèi)量
# active-defrag-ignore-bytes 100mb
 
# 啟動(dòng)活動(dòng)碎片整理的最小碎片百分比
# active-defrag-threshold-lower 10
 
# 我們使用最大努力的最大碎片百分比
# active-defrag-threshold-upper 100
 
# 以CPU百分比表示的碎片整理的最小工作量
# active-defrag-cycle-min 5
 
# 在CPU的百分比最大的努力和碎片整理
# active-defrag-cycle-max 75
 
# 將從中處理的set/hash/zset/list字段的最大數(shù)目
# 主詞典掃描
# active-defrag-max-scan-fields 1000

分享到:
標(biāo)簽:配置 redis
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定