Redis 配置檔案雜項。

2022-08-23 10:27:12 字數 2072 閱讀 4618

redis3.2版本後新增protected-mode配置,預設是yes,即開啟。設定外部網路連線redis服務,設定方式如下:

1、關閉protected-mode模式,此時外部網路可以直接訪問

2、開啟protected-mode保護模式,需配置bind ip或者設定訪問密碼

在tcp協議三次握手中,伺服器接到syn 把對應請求資訊放在半連線佇列裡 回覆 syn ack

客戶端收到返回 ack,伺服器收到後假設全連線佇列未滿,那麼從半連線佇列中拿出此請求,放入全連線佇列中。

如果已滿 根據 /proc/sys/net/ipv4/tcp_abort_on_overflow 配置的值

0 表示丟棄該ack

1 表示傳送rst給客戶端,復位。

全連線佇列(accept queue)大小是根據系統配置檔案中/proc/sys/net/core/somaxconn 的值和傳入listen函式中的tcp backlog的最小值決定的

半連線佇列(syns queue) 在 /etc/sysctl.conf 中 tcp_max_syn_backlog 中檢視修改。預設1024

一些伺服器應用程式可能代表客戶端占用資源,它們需要知道客戶端主機是否崩潰。存活定時器可以為這些應用程式提供探測服務。

個人計算機使用者使用tcp/ip協議通過telnet登入一台主機,這是能夠說明需要使用存活定時器的乙個常用例子。如果某個使用者在使用結束時只是關掉了電源,而沒有登出(log off),那麼他就留下了乙個半開啟(half-open)的連線。在圖18.16,我們看到如何在乙個半開啟連線上通過傳送資料,得到乙個復位(reset)返回,但那是在客戶端,是由客戶端傳送的資料。如果客戶端消失,留給了伺服器端半開啟的連線,並且伺服器又在等待客戶端的資料,那麼等待將永遠持續下去。存活特徵的目的就是在伺服器端檢測這種半開啟連線。

在此描述中,我們稱使用存活選項的那一段為伺服器,另一端為客戶端。也可以在客戶端設定該選項,且沒有不允許這樣做的理由,但通常設定在伺服器。如果連線兩端都需要探測對方是否消失,那麼就可以在兩端同時設定(比如nfs)。

1.客戶端已經崩潰,或者已經關閉(down),或者正在重啟過程中。在這兩種情況下,它的tcp都不會響應。伺服器沒有收到對其發出探測的響應,並且在75秒之後超時。伺服器將總共傳送10個這樣的探測,每個探測75秒。如果沒有收到乙個響應,它就認為客戶端主機已經關閉並終止連線。

2.客戶端曾經崩潰,但已經重啟。這種情況下,伺服器將會收到對其存活探測的響應,但該響應是乙個復位,從而引起伺服器對連線的終止。

(http協議中也有keepalive)

daemonize:yes:redis採用的是單程序多執行緒的模式。當redis.conf中選項daemonize設定成yes時,代表開啟守護程序模式。在該模式下,redis會在後台執行,並將程序pid號寫入至redis.conf選項pidfile設定的檔案中,此時redis將一直執行,除非手動kill該程序。

daemonize:no: 當daemonize選項設定成no時,當前介面將進入redis的命令列介面,exit強制退出或者關閉連線工具(putty,xshell等)都會導致redis程序退出。

配置pid檔案路徑,當redis作為守護程序執行的時候,它會把 pid 預設寫到 /var/redis/run/redis_6379.pid 檔案裡面

supervise,它的功能是監控乙個指定的服務,當該服務程序消亡,則重新啟動該程序。

需要密碼

當記憶體使用達到最大值時,redis使用的清楚策略。有以下幾種可以選擇:

1)volatile-lru   利用lru演算法移除設定過過期時間的key (lru:最近使用 least recently used ) 

2)allkeys-lru   利用lru演算法移除任何key 

3)volatile-random 移除設定過過期時間的隨機key 

4)allkeys-random  移除隨機ke

5)volatile-ttl   移除即將過期的key(minor ttl) 

6)noeviction  noeviction   不移除任何key,只是返回乙個寫錯誤 ,預設選項

Redis配置檔案

建立連線池屬性配置 poolconfig class redis.clients.jedis.jedispoolconfig 最大連線數 maxtotal value 10 空閒連線數 maxidle value 2 設定鏈結池的連線耗盡時,是否等待 blockwhenexhausted value...

Redis配置檔案

1,unit 單位 配置大小單位,只支援 bytes,不支援 bit 大小寫不敏感 2,include 包含檔案 bind 127.0.0.1 表示只能本地連線redis,不能遠端連線 protected yes 表示開啟保護模式,不支援遠端訪問 port 6379 埠號 tcp backlog 5...

redis配置檔案詳解

bean redisconnectionfactory public redisconnectionfactory redisconnectionfactory jedispoolconfig jedispoolconfig new jedispoolconfig 最大空閒數 jedispoolco...