客服业务缓存问题求修改

快速开发师 发布于 2018/07/30 14:05
阅读 115
收藏 0

现在有个客服系统,由于用户打电话进来的人较多,客服来不及处理一些业务,于是就把客服电话信息缓存在session里,挂机后再处理,这涉及到一个问题,如果客服退出系统session里缓存自动被服务器销毁就没了;现用户要求至少要保留1天,咋整,想到了保存到表里,但如果不保存到表里该如何做?保存到cookie中我也想过,但客服说,他们可能在另外登陆一台电脑,说明cookie也完蛋(cookie只能存本机硬盘)。

加载中
1
Sel8616
Sel8616

这还纠结啥,肯定得持久化,要么数据库,要么文件系统,其实存数据库本质上也是存到文件系统里。

放到内存里虽然也能实现要求,但存在宕机丢失数据的风险;如果是集群,还得自己实现同步机制,徒增工作量。

最佳方案见投票

快速开发师
快速开发师
由于如果建表存的话还是来不及,所以我目前暂时的解决方案非常奇葩,就是增删查操作是在application对象上操作的,而且是每台服务器的application;通过jsonp的方式跨域请求,而且负责接收处理存储的jsp也要被排除在是否登陆权限之外;因为用户登陆可能是在一台服务器上被登陆;而其它服务器没有登陆过的用户信息。
快速开发师
快速开发师
有道理
3
sxgkwei
sxgkwei

redis 里面有个存储方法是带超时时间的,你可以考虑一下。过了1天了去取自然就取不到了,很适合你这个场景。

快速开发师
快速开发师
你也说得也有道理,不过还是考虑持久化
0
DeMoNHaDeS
DeMoNHaDeS

信息量不太大的话放内存里就可以

DeMoNHaDeS
DeMoNHaDeS
回复 @快速开发师 : 是你没懂
快速开发师
快速开发师
你没读懂
0
魔力猫
魔力猫

别告诉我你连基本的数据库操作都不会。

快速开发师
快速开发师
回复 @魔力猫 : 那更不行
魔力猫
魔力猫
回复 @快速开发师 : 保存到文件里面
快速开发师
快速开发师
你是瞎子吗“咋整,想到了保存到表里,但如果不保存到表里该如何做?”
0
混乱羽翼
混乱羽翼

redis可以满足你

0
MZHS
MZHS

保存到文件里是比较靠谱的,如果不想搞到数据库里的话,保存到内存里的缺点就是服务器宕机的话记录会全部丢失

0
Mr岳
Mr岳

tomcat+redis 实现Session共享......

0
小骏骏
小骏骏

Spring Session + redis 可以实现Session持久化.....

Good Luck!

快速开发师
快速开发师
对不起,我们系统没有安redis
返回顶部
顶部