Q:平时电商业务系统用mysql读写数据,近期需要上线一个促销活动,需要把购物车数据在活动期间切换到redis读写,并且在活动数据后结婚回去继续使用mysql,做一个平滑重启的方案?
1、保证redis服务正常后,首先切换到redis、mysql双写;
2、待双写稳定后,可以确定需要导入redis的购物车数据范围(此时数据范围已经完全确定);
3、在活动上线前切换为双读的模式(可以优先读redis数据,对未命中的数据做记录,然后读取mysql,后续补充);
4、活动正式开始后切换为只读写redis的方式;(切换上线OK)
5、活动结束后,切换为双写的的状态redis、mysql,此时查询只都redis;
6、把活动期间的redis新增的数据导入mysql(此时数据范围可以完全确定);
7、切换为双读双写模式(此时以mysql为主,可以补充mysql缺失的数据);
8、关闭redis的操作 end!
网友评论