[已解决问题] 跨域缓存的处理问题
提问时间: 2008-05-13 22:51
悬赏分:15 浏览:184 次

跨域缓存的处理

比如我在user.domain.com 缓存一个当前登陆用户资料的实体,然后修改这个用户资料,再清除这个缓存,在user.domain.com 再获取该用户资料就会是修改后的.

然而在www.doamin.com 下缓存的该用户实体可能还是修改前的(没有同时清除),这样会造成数据不准确,请问怎么有好的解决方案吗?


提问者:xiaowei - 初学一级
最佳答案
在user.domain.com有更新时,要通知www.doamin.com更新缓存;同样,如果www.domain.com有更新时也要通知user.domain.com。

通知的机制,可以是修改一个都在监视的文件;或者通过.net remoting发一个消息等等。
2008/5/14 10:39:29 回答者:玉开


提问者对于答案的评价:谢谢了,老兄
其它回答(3)
修改好扔给用户一个cookie(domain.com),记录上次更改时间。

每次请求都检查此cookie的存在和值,如果需要就从新加载缓存。
2个月前   回答者:deerchao - 大侠五级
可以考虑SqlServer2005的数据库缓存依赖~~
2个月前   回答者:沙加 - 老鸟四级
可以考虑以下方案:

使用domain.com作为cookie的域,而不是www.domain.com或user.domain.com

或者

在js脚本中强制更新www.domain.com的cokie,这个没有验证,不知道是否可行。

2个月前   回答者:笨笨蜗牛 - 菜鸟二级
评论
2个月前   xj :
用Cookie ,如果是本人访问还可以,但可能是100个人在查看你的资料,怎么扔COOKIE呢.
2个月前   xj :
"都在监视的文件" 可能两个域名不是同一台服务器,
用WEB SERVICE可行不
2个月前   玉开 :
也可以,只是效率不如.net remoting
2个月前   xj :
还是在用SQL Server 2000  喔
2个月前   xj :
COOKIE应该不行吧,COOKIE是客户端的,而缓存是服务器端的.
   您需要登录以后才能回答!
我的问题    我要提问


快到期问题

> 问题排行榜

有不合适内容,建议去除