Redis in .NET Core 入门 (1) (2)

Redis in .NET Core 入门 (1)

里面的save 900 1.。。。这部分是指,900秒过后,如果至少1个key改变了,那么就做一个快照。

下面的就是300秒过后,如果10个key改变了,那就做一个快照。。。

这些就是进行快照动作的触发条件。

 

AOF相关

Redis in .NET Core 入门 (1)

AOF模式默认是不开启的,也就是no。如果想开启,那就改成yes即可。

 

使用自定义配置运行Redis容器 RDB & AOF

把上述文件下载到本地,进行修改:

Redis in .NET Core 入门 (1)

我添加了一个RDB的条件,5秒内1个Key被修改就会触发快照动作。

 

然后我启用了AOF:

Redis in .NET Core 入门 (1)

 

首先把之前的容器删除吧,然后再建立一个。

这次建立docker容器的时候需要使用volume:

Redis in .NET Core 入门 (1)

说明一下:

-v这部分是指volume,redis.conf在我电脑里的位置是:D:\Projects\Redis\redis.conf,所以我把该位文件的位置挂载到了容器里的/usr/local/etc/redis/redis.conf这个地方。

然后运行redis这个镜像,同时运行里面的redis-server,而redis-server的配置文件就是/usr/local/etc/redis/redis.conf。

 

现在这个redis-server运行起来了。

 

再打开一个redis-cli,还是使用容器:

Redis in .NET Core 入门 (1)

 

然后我设置一个key的值:

Redis in .NET Core 入门 (1)

这时就达到了RDB的最后一个条件,所以触发了快照动作。

我就不再实验了。。。

 

我再打开一下redis容器的bash,然后看一下aof文件是否生成:

Redis in .NET Core 入门 (1)

可以看到每次操作后aof文件都会更新(里面可以认为就是事务的log)。

 

Master-Slave Replication 主从复制

简单讲一下Redis的主从复制,首先把之前的容器都删掉。。。

然后我们先建立docker 网络:

Redis in .NET Core 入门 (1)

 

然后创建redis master的容器,不过首先修改一下redis.conf里的bind地址,原来是127.0.0.1,改为 bind 0.0.0.0:

Redis in .NET Core 入门 (1)

这样的话其它的ip地址也可以连接过来了。

 

然后创建master容器:

Redis in .NET Core 入门 (1)

注意里面使用了之前创建的桥接网络。

 

检查一下redis-net这个网络:

Redis in .NET Core 入门 (1)

Redis in .NET Core 入门 (1)

可以看到该网络里有一个容器master-redis,其ip为172.20.0.2。

 

然后把redis.conf再复制一份,名字为redis2.conf。

在redis2.conf的Replication部分里,把下面这部分取消注释,并修改为:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpsddx.html