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

时间:2020-12-18 08:07:49

1.搭建主从复制

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

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

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

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

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

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

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

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

2.启动服务

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

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

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

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

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

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

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

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

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

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

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

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

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

4.基于Redis的Session共享

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

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

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

第一次点击登录之后

分两步:

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

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

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

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

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

第二次点击登录之后

分两步:

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

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

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

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

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