项目是 星期三上线的 , 今天来的时候有个问题, 我觉得很有价值,所以就记录了一下。
问题描述: 我们是做app 开发 的, 这次开发是要 把 以前的app 的业务 分开,新建一 个app ,这个新 的app 的大部分service 接口都是调用 old app de , so 开发的时间很快。
在 old app 的首页有个getGames 的 接口 这个接口的访问频率很高,返回的数据也很多,所以用到了 redis 缓存。
为这个首页服务的还有个定时任务,这个任务是查询数据库保存到redis 。
服务发上去之后, 两个app 用的是同一个redis ,old app 的定时任务 查询的 game 对象 是用 old game 项目里面的对象接收的,而在new app 从redis 获娶 getGames 的数据的时候 ,用的 是new app 项目的game 对象, 两个对象的字段都是一样的,只是包的路径不对。数据返回的时候出现了 @type game 的包路径, 而且 data 的数据没有格式化,导致了数据出错误,首页挂了。
解决的方式很简单,我们把 之前的个定时任务,复制一下,改了名字, 这个任务put到 redis的时候和 old app 的区分开,get的时候也区分开,这样就不会出现时间格没有格式化的问题了。