redis集群配置参数及优化
- 格式:docx
- 大小:37.22 KB
- 文档页数:10
Redis配置参数详解Redis是⼀个应⽤⾮常⼴泛的⾼性能Key-Value型数据库,与memcached类似,但功能更加强⼤!本⽂将按照不同功能模块的⽅式,依次对各个功能模块的配置参数进⾏详细介绍。
GENERAL./redis-server /path/to/redis.conf 按照指定的配置⽂件启动include /path/to/other.conf 包含其它的redis配置⽂件daemonize yes 启⽤后台守护进程运⾏模式pidfile /var/run/redis.pid redis启动后的进程ID保存⽂件port 6379 指定使⽤的端⼝号bind IP 监听指定的⽹络接⼝unixsocket /tmp/redis.sock 指定监听的socket,适⽤于unix环境timeout N 客户端空闲N秒后断开连接,参数0表⽰不启⽤loglevel notice 指定服务器信息显⽰的等级,4个参数分别为debug\verbose\notice\warninglogfile “” 指定⽇志⽂件,默认是使⽤系统的标准输出syslog-enabled no 是否启⽤将记录记载到系统⽇志功能,默认为不启⽤syslog-ident redis 若启⽤⽇志记录,则需要设置⽇志记录的⾝份syslog-facility local0 若启⽤⽇志记录,则需要设置⽇志facility,可取值范围为local0~local7,表⽰不同的⽇志级别databases 16 设置数据库的数量,默认启动时使⽤DB0,使⽤“select <dbid>”可以更换数据库tcp-backlog 511 此参数确定TCP连接中已完成队列(3次握⼿之后)的长度,应⼩于Linux系统的/proc/sys/net/core/somaxconn的值,此选项默认值为511,⽽Linux的somaxconn默认值为128,当并发量⽐较⼤且客户端反应缓慢的时候,可以同时提⾼这两个参数。
redis集群配置参数
在Redis集群中,需要配置以下参数:
1. cluster-enabled:设置为yes来启用集群模式。
2. cluster-config-file:指定集群配置文件的路径。
3. cluster-node-timeout:指定集群节点之间的超时时间。
4. cluster-announce-ip:指定集群节点的IP地址。
5. cluster-announce-port:指定集群节点的端口号。
6. cluster-announce-bus-port:指定集群节点之间通信的端口号。
7. cluster-require-full-coverage:设置为yes来要求所有槽位都要有节点才能正常工作。
8. cluster-migration-barrier:设置为yes来阻止在槽迁移期间的对数据的写入操作。
这些参数可以在Redis的配置文件redis.conf中进行设置。
在配置文件中找到对应的参数进行修改并重启Redis服务即可生效。
jediscluster连接参数jedisCluster连接参数详解一、引言在分布式系统中,JedisCluster是一个非常重要的组件,它提供了对Redis集群的支持。
本文将详细介绍jedisCluster连接参数的含义和用法,以帮助开发者更好地理解和使用该组件。
二、JedisCluster连接参数1. nodesnodes参数是一个Set类型的参数,用于指定Redis集群中所有节点的地址和端口。
每个节点的地址和端口之间使用冒号分隔,不同节点之间使用逗号分隔。
例如:"127.0.0.1:6379,127.0.0.1:6380"。
需要注意的是,这里的地址是Redis节点的IP地址,而不是HTTP 地址。
2. connectionTimeoutconnectionTimeout参数用于设置与Redis节点建立连接的超时时间,单位是毫秒。
如果在指定的时间内无法建立连接,则会抛出JedisConnectionException异常。
建议将该参数设置为较短的时间,以避免长时间的等待。
3. soTimeoutsoTimeout参数用于设置与Redis节点进行通信的超时时间,单位是毫秒。
如果在指定的时间内未能完成通信,则会抛出JedisConnectionException异常。
建议将该参数设置为较短的时间,以避免长时间的等待。
4. maxAttemptsmaxAttempts参数用于设置在执行命令时的最大重试次数。
当与Redis节点建立连接或执行命令失败时,JedisCluster会自动尝试重新连接或执行命令。
建议将该参数设置为一个较大的值,以增加重试的机会。
5. passwordpassword参数用于设置连接Redis集群时的密码。
如果Redis集群设置了密码验证,那么需要使用该参数进行身份验证。
需要注意的是,该参数的值不能为null,否则会抛出JedisConnectionException异常。
Redis集群配置参数及优化Redis的主要参数配置在redis.conf文件中。
1.conf 内存值2.bind ip默认情况下,如果没有指定“bind”配置指令,Redis将侦听服务器上可用的所有网络接口的连接。
默认情况:bind 127.0.0.1实际配置:bind 本机ip3.protected-mode yes启用默认保护模式。
只有当您确定您希望其他主机的客户端连接到Redis 时,您才应该禁用它,即使没有配置身份验证,也没有使用“bind”指令显式列出特定的接口集。
4.tcp-keepalive 300如果非零,请使用SO_KEEPALIVE向没有通信的客户发送TCP协议。
这很有用,有两个原因:a)检测死同伴b)从中间的网络设备的角度进行连接在Linux上,指定的值(以秒为单位)是用于发送ack的周期。
注意,要关闭连接,需要双倍的时间。
这个选项的合理值是300秒,这是新的Redis默认值,从Redis 3.2.1开始。
5.timeout 0在客户机空闲N秒后关闭连接(0到禁用)6.port 6379在指定端口上接受连接,默认值是63797.daemonize yesredis后台运行8.pidfile /var/run/redis_6379.pid如果指定了一个pid文件,Redis会在启动时指定,并在退出时删除它。
当服务器运行非守护进程时,如果配置中没有指定pid文件,则不会创建pid文件。
当服务器被守护时,即使没有指定,也会使用pid文件,默认为“/var/run/redis.pid”。
创建一个pid文件是最好的工作:如果Redis不能创建它,那么服务器就会正常启动和运行。
9.loglevel notice指定服务器冗余级别包括:a)debug:大量信息,用于开发/测试b)verbose:许多很少有用的信息,但不像debug级别那样混乱c)notice:适度详细,可能在生产中需要d)warning:只有非常重要/关键的消息被记录10.logfile ""指定日志文件名。
redis cluster参数Redis Cluster是Redis提供的分布式解决方案,旨在为高可用性、可扩展性和可扩展性提供支持。
在使用Redis Cluster时,需要了解并设置一些参数,以便系统能够以最佳状态运行。
下面将介绍一些常用的Redis Cluster参数及其作用。
1. cluster-enabled:是否启用Redis Cluster。
默认值为no。
2. cluster-node-timeout:Redis集群节点超时时间。
超时时间内未收到节点的ACK消息,则将认为该节点无法正常工作。
默认为15秒。
3. cluster-replica-validity-factor:Redis集群副本的有效性因子。
当主节点宕机时,副本将被晋升为新的主节点。
该参数指定晋升后是否应该将新主节点的副本作为可用节点加入Redis集群。
默认为0,表示不添加。
4. cluster-migration-barrier:Redis集群迁移阈值。
当一次集群迁移操作的键值数量超过该阈值时,集群将被阻塞以防止过多节点同时执行迁移操作。
默认为1,即不阻塞。
5. cluster-require-full-coverage:Redis集群是否要求完全覆盖。
默认为yes,表示所有节点都必须可用。
设置为no则表示只需满足半数节点可用即可。
6. cluster-announce-ip:Redis节点通告的IP地址。
默认为空,Redis将自动使用绑定的IP地址。
7. cluster-announce-port:Redis节点通告的端口号。
默认值为0,Redis将自动使用随机端口。
8. cluster-announce-bus-port:Redis总线通告的端口号。
默认值为0,Redis将自动使用随机端口。
9. cluster-slave-validity-factor:Redis副本的有效性因子。
当最后一个主节点宕机后,副本将被晋升为新的主节点。
redis主从服务器搭建修改记录目录redis主从服务器搭建 (1)一.redis主从服务器搭建 (2)第一步:下载redis (2)第二步:解压redis tar包 (2)第三步:进入reidis目录 (2)第四步:make (2)第五步:make install (3)第六步:修改redis.conf 操作 (3)第七步:redis从服务器配置 (4)第八步:修改从服务redis.conf (4)二.redis测试 (4)第一步:编写redis客户端启动shell (4)第二步:启动客户端 (5)第三步:操作 (5)第四步:set name test (5)第五步:get name (5)第六步:从服务器端启动客户端 (5)第七步:从服务器端(10.105.76.100) get name (5)三.sentinel配置及启动 (5)第一步:修改sentinel.conf (6)第二步启动sentinel (6)第三步:启动sentinel (6)一.redis主从服务器搭建第一步:下载redis在redis官网下载redis2.8.17版本第二步:解压redis tar包将下载的redis-2.8.17.tar.gz放在10.105.76.99(主服务器)上/usr/local下然后解压tar包命令:tar -zxvf redis-2.8.17.tar.gz第三步:进入reidis目录进入redis-2.8.17目录命令: cd redis-2.8.17第四步:makemake 或者make MALLOC=libc 如果使用make时报错(zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory)此时可使用make MALLOC=libc出现下图说明make完成第五步:make install第六步:修改redis.conf 操作进入redis安装目录cd /usr/local/redis-2.8.17,vi redis.conf将daemonize no改为yes ,意思是在后台运行logfile改为log的存放路径requirepass 前面的#去掉后面改为itmiredis此处为密码前六步已经完成了redis主端的安装及配置,如果需要可以写一个启动redis的shell脚本,touch start.sh,vi start.sh 里面的内容为src/redis-server redis.conf第七步:redis从服务器配置将安装好的redis拷贝到从服务器(10.105.76.100) 命令scp -r /usr/local/redis-2.8.17root@10.105.76.100:/usr/local第八步:修改从服务redis.conf拷贝完成后进入从服务器(10.105.76.100) ,cd /usr/local/redis-2.8.17,修改redis.confslaveof ip(10.105.76.99) 端口(6379) 此处为主服务的ip和端口因为主服务上设置了密码所以需要修改masterauth ,并将requirepass注释掉此时redis主从应配置完成通过start.sh分别启动redis(10.105.76.99)和(10.10.576.100) 通过ps -ef|grep redis查看进程,出现如下图说明redis启动完成二.redis测试第一步:编写redis客户端启动shell可以写一个shell脚本启动redis客户端cd /usr/local/redis-2.8.17/,touch startcli.sh,vi startcli.sh startcli.sh内容为src/redis-cli,并将此文件拷贝到从服务器10.105.76.100第二步:启动客户端在主服务器端(10.105.76.99) 命令:sh startcli.sh第三步:操作输入密码auth itmiredis第四步:set name test第五步:get name第六步:从服务器端启动客户端从服务器端启动客户端(10.105.76.100),sh startcli.sh第七步:从服务器端(10.105.76.100) get name此时说明主从服务已经搭建完成。
Redis的故障排查与性能优化方法Redis是一个常用的开源内存数据库,被广泛应用于各种场景中。
然而,由于其特殊的架构和使用模式,Redis也常常面临一些故障和性能问题。
本文将重点介绍Redis的故障排查和性能优化方法,帮助读者更好地理解和使用Redis。
一、故障排查方法1. 监控Redis在故障排查中,最基础的操作是监控Redis的运行状态。
Redis提供了丰富的监控指标,如内存使用情况、连接数、命令执行耗时等,可以通过命令行工具redis-cli或者集成的监控工具进行查看。
通过监控数据的变化,可以及时发现异常情况,并作出相应的处理。
2. 查看日志Redis通过日志记录各种运行时事件和错误信息,包括客户端连接、命令执行、数据持久化等。
在故障排查时,可以通过查看日志文件来了解Redis的运行情况和发生的异常事件。
常见的日志文件位置为/var/log/redis/redis-server.log。
3. 使用redis-check命令Redis提供了redis-check命令来检查数据文件的一致性和完整性。
当Redis出现故障时,可以使用该命令进行数据检查和修复。
例如,使用redis-check命令可以修复由于异常退出导致的数据文件损坏问题。
4. 使用GDB进行调试对于一些复杂的故障,如内存泄漏、死锁等,可以通过使用GDB进行调试。
首先需要使用gdb命令附加到Redis进程,然后通过设置断点、观察变量等方式来定位问题。
二、性能优化方法1. 合理配置RedisRedis的性能优化首先需要合理配置Redis实例的参数。
例如,根据实际机器的内存情况,设置合适的maxmemory参数来避免内存溢出;通过设置tcp-backlog参数来优化TCP连接的处理;设置client-output-buffer-limit参数来控制客户端输出缓冲的大小等。
2. 优化数据结构Redis提供了多种数据结构,每种数据结构在不同场景下的性能也有所差异。
Redis集群使用指南一、Redis集群简介Redis(Remote Dictionary Server)是一个开源的基于内存的键值对存储系统,经常用来作为缓存、消息队列和数据库。
在实际使用过程中,Redis可能会出现性能瓶颈和单点故障。
为了解决这些问题,Redis提供了集群模式。
Redis集群是对多个Redis节点进行逻辑分区和复制,从而实现高可用、高性能和可伸缩性。
Redis集群能够自动进行故障转移和重新分配,可以提供更好的可靠性和吞吐量。
二、Redis集群的工作原理Redis集群采用哈希槽(Hash Slot)的方式来实现数据的分片和复制。
一个Redis集群可以包含多个Redis节点,每个节点管理一部分哈希槽。
当客户端需要对某个键进行操作时,Redis首先计算该键对应的哈希值,然后将其分配到某个哈希槽中。
Redis集群根据哈希槽的分配情况,将该键的操作转发给相应的Redis节点进行处理。
如果某个节点出现故障,Redis集群会自动将该节点管理的哈希槽重新分配给其他节点。
Redis集群采用主从复制的方式来实现数据的持久化和高可用。
每个主节点可以有多个从节点,主节点负责处理读写请求,同时将数据复制到从节点。
如果主节点出现故障,其中的一个从节点会被自动选举为新的主节点,继续处理客户端请求。
三、搭建Redis集群的步骤1、安装Redis节点在Linux系统上安装Redis比较简单,可以使用以下命令:sudo apt-get updatesudo apt-get install redis-server安装完毕后,可以通过以下命令启动Redis服务:sudo service redis-server start2、配置Redis节点每个Redis节点都需要进行一些配置,以便加入到Redis集群中。
可以通过以下命令进入Redis配置文件:sudo vim /etc/redis/redis.conf需要修改的配置项有以下几个:cluster-enabled yes:启用Redis集群模式。
redission配置参数Redisson是一个基于Redis的分布式Java对象和服务框架。
通过Redisson,我们可以使用Java来访问Redis集群和Redis服务器。
在Redisson中,有一些重要的配置参数,我们需要了解和配置它们,以便正确地使用Redisson。
1. 集群模式配置参数如果我们要使用Redisson来访问Redis集群,那么需要配置一个RedissonClient对象,并设置一些重要的参数,如下所示:```javaConfig config = new Config();eClusterServers().setScanInterval(2000) //集群状态扫描间隔时间,单位是毫秒.addNodeAddress('redis://127.0.0.1:7000').addNodeAddress('redis://127.0.0.1:7001').addNodeAddress('redis://127.0.0.1:7002').addNodeAddress('redis://127.0.0.1:7003').addNodeAddress('redis://127.0.0.1:7004').addNodeAddress('redis://127.0.0.1:7005');RedissonClient client = Redisson.create(config);```在这个例子中,我们使用了useClusterServers方法来指定Redis集群模式。
然后,我们设置了集群状态扫描间隔时间为2000毫秒。
接着,我们添加了6个节点的地址,这些地址都是Redis实例的地址。
2. 单机模式配置参数如果我们要使用Redisson来访问单个Redis服务器,那么需要配置一个RedissonClient对象,并设置一些重要的参数,如下所示: ```javaConfig config = new Config();eSingleServer().setAddress('redis://127.0.0.1:6379').setDatabase(0).setConnectionMinimumIdleSize(5).setConnectionPoolSize(20).setConnectionTimeout(3000).setRetryAttempts(3).setRetryInterval(1500).setPassword('password');RedissonClient client = Redisson.create(config);```在这个例子中,我们使用了useSingleServer方法来指定Redis 单机模式。
Redis集群配置参数及优化Redis的主要参数配置在redis.conf文件中。
1.conf 内存值2.bind ip默认情况下,如果没有指定“bind”配置指令,Redis将侦听服务器上可用的所有网络接口的连接。
默认情况:bind 127.0.0.1实际配置:bind 本机ip3.protected-mode yes启用默认保护模式。
只有当您确定您希望其他主机的客户端连接到Redis 时,您才应该禁用它,即使没有配置身份验证,也没有使用“bind”指令显式列出特定的接口集。
4.tcp-keepalive 300如果非零,请使用SO_KEEPALIVE向没有通信的客户发送TCP协议。
这很有用,有两个原因:a)检测死同伴b)从中间的网络设备的角度进行连接在Linux上,指定的值(以秒为单位)是用于发送ack的周期。
注意,要关闭连接,需要双倍的时间。
这个选项的合理值是300秒,这是新的Redis默认值,从Redis 3.2.1开始。
5.timeout 0在客户机空闲N秒后关闭连接(0到禁用)6.port 6379在指定端口上接受连接,默认值是63797.daemonize yesredis后台运行8.pidfile /var/run/redis_6379.pid如果指定了一个pid文件,Redis会在启动时指定,并在退出时删除它。
当服务器运行非守护进程时,如果配置中没有指定pid文件,则不会创建pid文件。
当服务器被守护时,即使没有指定,也会使用pid文件,默认为“/var/run/redis.pid”。
创建一个pid文件是最好的工作:如果Redis不能创建它,那么服务器就会正常启动和运行。
9.loglevel notice指定服务器冗余级别包括:a)debug:大量信息,用于开发/测试b)verbose:许多很少有用的信息,但不像debug级别那样混乱c)notice:适度详细,可能在生产中需要d)warning:只有非常重要/关键的消息被记录10.logfile ""指定日志文件名。
还可以使用空字符串强制Redis登录标准输出。
请注意,如果您使用标准输出来记录日志,但是daemalize,日志将被发送到/dev/null。
11.databases 16设置数据库的数量。
默认数据库是DB 0,您可以使用select 在每个连接上选择一个不同的数据库,其中dbid是一个0和'databases'-1之间的数字。
12.always-show-logo yes默认情况下,Redis只显示了ASCII艺术标志,当开始记录到标准输出时,如果标准输出是TTY。
基本上,这意味着通常只有在交互式会话中才会显示徽标。
但是,可以强制执行4.0的行为,并且在启动日志中始终显示一个ASCII艺术标识,通过设置下面的选项为yes。
13.dbfilename dump.rdb要转储数据库的文件名,存储文件。
14.dir ./工作目录将在这个目录中写入,使用“dbfilename”配置指令指定上面指定的文件名。
只在此目录中创建附加文件。
注意,您必须在这里指定一个目录,而不是文件名。
15.slaveof <masterip><masterport>主从复制。
使用slaveof来让一个Redis实例复制另一个Redis服务器。
a)Redis复制是异步的;b)如果复制链接在相对较小的时间内丢失,Redis的奴隶可以与主服务器进行部分的重新同步。
c)复制是自动的,不需要用户干预。
在网络分区后,奴隶会自动尝试重新连接主人并与他们重新同步。
16.masterauth <master-password>如果master是密码保护的(使用下面的“requirepass”配置指令),在启动复制同步进程之前,可以告诉奴隶进行身份验证,否则主人将拒绝奴隶请求。
17.slave-serve-stale-data yes当一个奴隶失去与主人的联系,或当复制仍在进行时,奴隶可以采取两种不同的方式:a)如果slave-serve-stale-data被设置为“yes”(默认),则该slave仍然会回复客户端请求,可能是由于过时数据,或者如果这是第一次同步,数据集可能是空的。
b)如果slave-serve-stale-data被设置为“不”,那么slave将会以“与master同步”的错误来回复所有的命令,but to INFO and SLA VEOF。
18.slave-read-only yes注:只读奴隶不被设计成在互联网上接触不可信的客户。
它只是一个防止滥用实例的保护层。
在默认情况下,仍然只读取奴隶的导出,所有的管理命令,例如CONFIG、DEBUG等等。
在一定程度上,您可以通过使用“rename-command”来对所有的管理/危险命令进行隐藏,从而提高读取的安全性。
19.repl-backlog-size 1mbbacklog是一个缓冲区20.slave-priority 100它被Redis Sentinel所使用,以便在主人不再正确工作的情况下,选择一个奴隶来提升为主人。
一个低优先级的奴隶被认为是更好的晋升机会,例如,如果有三个优先级为10、100、25个哨兵的奴隶将选择优先级为10的,这是最低的。
然而,一个特殊的优先级0标志着奴隶不能执行主人的角色,因此,优先级为0的奴隶将永远不会被Redis Sentinel选中来提升。
默认情况下,优先级是100。
21.maxclients 10000设置同时连接客户端的最大数量,默认情况下这个限制设置为10000个客户,一旦达到限制,Redis将关闭所有新的连接,发送错误的最大客户数。
22.maxmemory <bytes>将内存使用限制设置为指定的字节数。
如果您有附加的奴隶,建议您为maxmemory设置一个较低的限制,以便在系统上有一些空闲RAM用于输出缓冲区(但如果策略是“no驱逐”,则不需要这样做)。
23.maxmemory-policy noevictionMAXMEMORY策略:当达到MAXMEMORY时,Redis将选择要删除的volatile-lru:在键中使用近似的LRU结束设置。
allkeys-lru:使用近似的LRU清除任何键。
volatile-lfu:在密钥中使用近似的LFU结束设置。
allkeys-lfu:使用近似的LFU清除任何密钥。
volatile-random:将一个随机密钥删除,其中有一个过期设置。
allkeys-random:删除一个随机密钥,任何密钥。
volatile-ttl:删除最近过期时间的键(小TTL)noeviction:不驱逐任何东西,只返回写操作上的错误。
注:LRU的意思是最近使用最少,LFU的意思是最不常用,LRU、LFU 和挥发性ttl均采用近似随机算法实现。
在上面的任何一个策略中,Redis将返回一个写操作上的错误,当没有合适的键来驱逐时。
默认是:maxmemory-policy noeviction24.maxmemory-samples 5LRU、LFU和最小TTL算法不是精确的算法,而是近似算法(为了节省内存),所以你可以对它进行调优,以达到速度或精度。
对于默认的Redis将检查5个键并选择最近使用较少的键,您可以使用下面的配置指令来更改示例的大小。
注:默认的5产生足够好的结果。
十分接近真实的LRU,但成本更大。
3更快,但不太准确。
25.appendonly yes只追加模式aof日志开启有需要就开启,它会每次写操作都记录一条日志默认情况下,Redis会异步地转储磁盘上的数据集。
这种模式在许多应用程序中都很好,但是对于Redis进程或断电可能会导致几分钟的写入丢失(取决于配置的保存点)。
Append文件是一种替代持久性模式,它提供了更好的持久性。
AOF和RDB持久性可以同时启用,没有问题。
如果在启动Redis上启用了AOF,则会加载AOF,这是具有更好的耐久性保证的文件。
appendfilename "appendonly.aof"26.appendfsync everysecfsync()调用告诉操作系统在磁盘上实际写入数据,而不是等待输出缓冲区中的更多数据。
有些操作系统会在磁盘上刷新数据,有些操作系统会尽快Redis支持三种不同的模式:no:不要fsync,只需让操作系统在需要的时候刷新数据。
Fasteralways:fsync每次写完后只添加日志。
Slow, Safesteverysec:fsync每秒钟一次。
Compromise默认的是“everysec”,因为这通常是速度和数据安全之间的正确折衷。
由你理解如果你能放松这个“不”字,让操作系统刷新输出缓冲区时,为了更好的表现(但是如果你可以忍受一些数据丢失的想法考虑默认快照的持久性模式),或相反,使用“always”非常缓慢但比” everysec”更安全一点。
如果不确定,就用“everysec”。
27.no-appendfsync-on-rewrite no如果您有延迟问题,请将其转换为"yes"。
否则,从持久性的角度来看,设置为"no"是最安全的选择。
28.auto-aof-rewrite-percentage 100auto-aof-rewrite-min-size 64 mb自动重写附加文件Redis能够自动地重写日志文件,当AOF日志大小以指定的百分比增长时,隐式地调用BGREWRITEAOF。
工作方式:Redis记得在最近一次重写后的AOF文件的大小(如果在重启后没有重写,那么在启动时AOF的大小就会被使用)。
此基础大小与当前大小比较。
如果当前的大小大于指定的百分比,则会触发重写。
您还需要为AOF文件指定一个最小的大小来重写,这对于避免重写AOF文件是很有用的,即使增加了百分比,但是它仍然很小。
指定一个百分比为零,以禁用自动的重写功能。
29.aof-load-truncated yes在Redis启动过程中,当AOF数据被加载回内存时,可能会发现AOF 文件被截断。
如果将aof-load-truncated设置为yes,将加载一个被截断的AOF文件,而Redis服务器将开始发出日志以通知用户该事件。
否则,如果选项被设置为no,服务器会以错误中止并拒绝启动。
当选项设置为no时,用户需要在重新启动服务器之前使用“redis-checkaof”工具修复AOF文件。
注意,如果在中间发现AOF文件被损坏,服务器仍然会以错误退出。
此选项只适用于Redis将尝试从AOF文件读取更多数据,但不会找到足够的字节。