现在有个客服系统,由于用户打电话进来的人较多,客服来不及处理一些业务,于是就把客服电话信息缓存在session里,挂机后再处理,这涉及到一个问题,如果客服退出系统session里缓存自动被服务器销毁就没了;现用户要求至少要保留1天,咋整,想到了保存到表里,但如果不保存到表里该如何做?保存到cookie中我也想过,但客服说,他们可能在另外登陆一台电脑,说明cookie也完蛋(cookie只能存本机硬盘)。
现在有个客服系统,由于用户打电话进来的人较多,客服来不及处理一些业务,于是就把客服电话信息缓存在session里,挂机后再处理,这涉及到一个问题,如果客服退出系统session里缓存自动被服务器销毁就没了;现用户要求至少要保留1天,咋整,想到了保存到表里,但如果不保存到表里该如何做?保存到cookie中我也想过,但客服说,他们可能在另外登陆一台电脑,说明cookie也完蛋(cookie只能存本机硬盘)。
这还纠结啥,肯定得持久化,要么数据库,要么文件系统,其实存数据库本质上也是存到文件系统里。
放到内存里虽然也能实现要求,但存在宕机丢失数据的风险;如果是集群,还得自己实现同步机制,徒增工作量。
最佳方案见投票
redis 里面有个存储方法是带超时时间的,你可以考虑一下。过了1天了去取自然就取不到了,很适合你这个场景。
信息量不太大的话放内存里就可以
别告诉我你连基本的数据库操作都不会。
redis可以满足你
保存到文件里是比较靠谱的,如果不想搞到数据库里的话,保存到内存里的缺点就是服务器宕机的话记录会全部丢失
tomcat+redis 实现Session共享......
Spring Session + redis 可以实现Session持久化.....
Good Luck!