基于Redis主从复制读写分离架构的Session共享(Windows Server)

时间:2021-09-25 01:22:00

搭建主从复制

1.安装软件

下载Redis-x64-3.2.100.zip:https://github.com/MicrosoftArchive/redis/releases

第一步:将Redis拷贝到虚拟机上的指定文件夹内,此Redis作为主服务

redis加入到Windows 服务

cmd命令安装命令:redis-server.exe --service-install redis.windows.conf --loglevel verbose

卸载命令:redis-server --service-uninstall

启动服务命令:redis-server --service-start

Redis3.2解决远程访问redis的办法

注释掉bind 127.0.0.1可以使所有的ip访问redis,若是想指定多个ip访问,但并不是全部的ip访问,可以bind

在redis3.2之后,redis增加了protected-mode,在这个模式下,即使注释掉了bind 127.0.0.1,再访问redisd时候还是报错,修改办法:protected-mode no

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第二步:将Redis拷贝到本机的指定文件夹内,此Redis作为从服务

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第三步:修改主服务的配置文件(redis.conf)

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第四步:修改从服务的配置文件(redis.conf)

基于Redis主从复制读写分离架构的Session共享(Windows Server)

2.启动服务

第一步:首先启动主服务:通过cmd跳转到主服务所在的文件夹下,使用redis-server.exe redis.conf命令启动主服务(当然也可以双击redis-server.exe启动主服务,通过redis-server.exe redis.conf命令启动主服务的原因是,有时候我们修改了 redis.con配置,需要重新加载该文件)

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第二步:启动从服务:步骤同上

基于Redis主从复制读写分离架构的Session共享(Windows Server)

此时主服务的日志信息发生了以下改变,表示主从复制搭建成功。

基于Redis主从复制读写分离架构的Session共享(Windows Server)

3.口说无凭,测试是否成功

第一步:我们用Redis可视化客户端redis-desktop-manager分别连接主从服务

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第二步:打开主服务的客户端并输入测试数据

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第三步:打开redis-desktop-manager可视化客户端,验证数据,至此主从配置成功搭建完毕

基于Redis主从复制读写分离架构的Session共享(Windows Server)

基于Redis的Session共享

基于Redis主从复制读写分离架构的Session共享(Windows Server)

未点击登录之前,主从数据库中均未有任何数据

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第一次点击登录之后

分两步:

第一步:模拟的sessionId写入浏览器的cookie中

第二步:模拟的sessionId和用户名obj.ToString()分别作为键值写入Redis数据库

基于Redis主从复制读写分离架构的Session共享(Windows Server)

基于Redis主从复制读写分离架构的Session共享(Windows Server)

基于Redis主从复制读写分离架构的Session共享(Windows Server)

第二次点击登录之后

分两步:

第一步:从浏览器的cookie中根据键sessionId取出对应的值

第二步:把第一步取出的值作为键,从Redis数据库中取出对应的值

基于Redis主从复制读写分离架构的Session共享(Windows Server)

1分钟后,缓存到期,数据被清除

基于Redis主从复制读写分离架构的Session共享(Windows Server)