如何防止集群模式下并发现象

qq980172733 东润环能技术有限公司 2015-08-26 05:19:57
首先,我需要详细通俗易懂地说明一下我提出的这个问题。这种现象出现的具体应用场景是这样子的:
==》①:同一个用户,针对同一个服务,在同一时间点内,同时提交了两个请求,但是请求参数值并不相同。但是,这两个请求分别被分发到集群中两个节点上,集群节点中公用同一个Memcached缓存集群,此时节点1中的请求和节点2中的请求由于要对同一个缓存进行删除、添加操作,这样就导致两个集群节点在操作同一个Memcached缓存的时候,出现缓存操作混乱,最终导致返回给用户的数据是错乱的。
==》此时,我们可以选择什么方案,来避免同一用户在同一时间点的两次不同请求,结果在成数据混乱的现象呢?
...全文
191 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Mr_yyy 2015-08-27
以前做的项目在集群时 同一用户发送的请求始终会给同一个服务器,而不会发生这个用户这次请求给服务器A,下次请求给服务器B。。。
回复
lxduu87 2015-08-27
那需要在用户操作memcached的时候为用户上锁
回复
中华雪碧 2015-08-26
方案1.Memcached cas Memcached cas 方案2.前端控制 比如用户点了 “删除”,页面会被锁住,不能进行其他操作(js可实现)。删除成功后,页面解锁,用户可进行其他操作。
回复
java_cloub 2015-08-26
用session
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-08-26 05:19
社区公告
暂无公告