互联网一致性架构实践

本文探讨了互联网架构中确保Session一致性、主从一致性、主主一致性和缓存一致性的一系列方案,包括同步策略、分布式解决方案和数据库代理。针对每种一致性问题,文章详细介绍了不同方案的优缺点,以帮助理解在多服务节点环境中如何维持数据的一致性。
摘要由CSDN通过智能技术生成

同样沈主席分享,分别从如何保证Session一致性、主从、主主一直、缓存一致以及时间问题待分享的冗余数据的一致性、多库事务的一致性、库存扣减的一致性、消息时序的一致性进行讨论。

单机部署必然不会出现保证一致性的系统设计,一致意味着至少大于等于2台服务节点,才有必要考虑双机数据一致的问题。数据多种类型,如上提到的session数据、db集群数据、缓存与db的数据。从具体到抽象,先分别看看各种数据类型在保证一致性方面的经典方式,再通而总之,看看各数据保证一致性是否有通用的设计思路。 

Session一致性

多个web服务,nginx请求分发默认是轮训方式,若用户1访问若web1,而后续访问将请求分发到web2上,则导致web2上无用户session信息,系统提示请重新登录系统。接着web3、web4同理从而导致用户不断重新登入。

那多web节点间如何保证session数据共享且一致呢?

方案一、同步

Tomcat支持session共享的配置,百度一搜N多解决方案,tomcat自带的session共享配置,或是tomcat依赖redis实现session共享配置。

优点:代码0侵入,无需改动任何代码

缺点:若集群扩容不断增加节点,则导致同步实例越来越多,增加扩容成本。

方案二、端

session信息不存到web server上,而是存到端上即浏览器中。这就使得使用同一浏览器进行用户请求到不论哪台web&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值