40、分布式系统的数据共享策略与一致性探讨

分布式系统的数据共享策略与一致性探讨

1. 数据共享决策的重要性

在考虑避免单点故障和恢复策略时,需要决定是否以及如何在节点、节点族和集群之间复制数据。这些决策会影响系统的可用性(包括容错性、弹性和可靠性)以及可扩展性。有些决策可以推迟到系统压力测试和基准测试时再做,而有些则可以根据已知需求和过往设计类似系统的经验提前确定。在分布式系统中,访问和移动数据是最具挑战性的任务之一,可能成为严重的瓶颈。对于每个表和状态,有三种数据复制策略可供选择:不共享、部分共享和全共享,应明智地选择最符合目标规模或可用性水平的策略。

2. 不共享(Share nothing)架构

2.1 架构原理

不共享架构中,任何数据或状态都不共享,可针对特定节点、节点族或集群。在解决了硬件、网络和负载均衡等底层基础设施问题后,这种架构可实现线性可扩展的系统。因为每个节点集合都有自己独立的数据和状态副本,能够独立运行。当需要扩展时,只需添加更多基础设施并重新配置负载均衡器。

2.2 示例流程

以下是一个登录请求的示例流程:
1. 客户端(Client1 和 Client2)发送登录凭证以启动会话,请求通过负载均衡器转发到前端节点之一。
2. 前端节点将请求转发到其主逻辑节点,逻辑节点检查客户端凭证并创建会话,将会话状态存储在数据库中。
3. 若存储 Client1 会话数据的节点崩溃,Client1 发送新请求,前端节点将其转发到备用逻辑节点,备用逻辑节点因不知会话信息而拒绝请求。
4. Client1 收到未知会话错误后,发送新的登录请求,由第二个逻辑节点处理。此后,该客户端的所有请求应转发到包含会话

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值