分布式
陌逸_逺
Ideas fly on code
展开
-
什么是幂等?幂等如何解决
定义所谓幂等,就是任意多次执行所产生的影响均与一次执行的影响相同风险一次操作因重试导致生效两次,如库存扣减,钱结算等如何避免全局ID分配分配中心,统一分配由业务服务集群UUIDSnowflake...原创 2022-05-22 14:51:46 · 191 阅读 · 0 评论 -
Gossip
Gossip流言算法,疫情传播算法执行过程由种子节点发起,当一个种子节点有状态需要更新到网络中其他节点,他会随机选择周边几个节点散播消息,收到消息到节点重复此过程,直至网络中所有节点都收到消息在过程中的某个时刻不能保证所有节点都收到消息,到那时理论上最终所有节点都会收到消息,属于最终一致性协议gossip 优点扩展性 >...原创 2020-09-24 15:37:48 · 145 阅读 · 0 评论 -
CALM
CALM当认为分布式一致性被认为很容易实现协调是相关程序设计决策的附带要求,但是协调存在成本calm理论支持在某些情况下可以去协调,提高性能从操作满足交换律则可以不进行协调calm 的关键观点是从程序结果的角度观察一致性,而不是传统的存储突变历史。...原创 2020-09-24 15:37:16 · 243 阅读 · 0 评论 -
BASE
BaseBase 理论是Basically Available(基本可用),Soft State(软状态)和Eventually Consistent(最终一致性)既是无法做到强一致性(Strong consistency),但每个应用都可以根据自身的业务特点,采用适当但方式使系统达到最终的一致性基本可用响应时间上的损失:正常情况下的搜索引擎0.5 秒即返回给用户结果,而基本可以用的搜索引擎可以在2秒作用返回结果功能上的损失: 功能降级返回结果软状态允许系统中的数据存在中间状态,并认原创 2020-09-24 15:36:45 · 137 阅读 · 0 评论 -
DLS
DLS在一个部分同步的网络模型(网络有延迟,但不知道在哪里)下的协议可以容忍1/3(拜占庭)任意错误在一个异步模型中的确定性协议(没有网络延迟上限)不能容错同步模型的协议(网络延迟可以保证小于已知时间)可以达到100%容错...原创 2020-09-24 15:36:11 · 357 阅读 · 0 评论 -
FLP 定理
FLP 定理在异步通信场景,即使只有一个进程失败了,没有任何算法能够保证进程能够达到一致性系统模型系统模型1.1 异步通信 > 异步通信与同步通信最大区别是没有时钟,不能时间同步,不能使用超时,不能探测失败,消息可任意延迟,消息可乱序1.2 通信健壮 > 只要进程非失败,消息虽会被无限延迟,但最终会被送达,且消息只会被送达一次(无重复)1.3 Fail-Stop模型 > 进程失败如同宕机,不再处理任何消息。相对Byzantine模型,不会产生错误消息;1.4 协议约束原创 2020-09-24 15:35:39 · 701 阅读 · 0 评论 -
CAP
CAPConsistency -> 一旦数据更新完毕,分布式系统中所有节点在同一时间的数据完全一致1.1 数据同步会有数据延迟1.2 为了保证数据一致性,会对资源进行上锁,待数据同步完成后释放锁定资源1.3 如果数据同步失败,节点会返回错误信息,不会返回旧数据可用性(Availability)2.1 所有请求都有响应,不能返回响应超时或者响应错误分区容错性(Partition tolerance)3.1 分布式系统中,尽管部分节点出现任何消息丢失或者故障,系统应该继续运行...原创 2020-09-24 15:35:06 · 81 阅读 · 0 评论 -
ACID
ACID事务1.1 提供一种机制将一个活动涉及的所有操作都纳入一个不可分割都执行单元,组成事务的所有操作只有在所有操作均能正常执行的情况下方可提交,只要其中任一操作执行失败,都将导致整个事务都回滚ACID2.1 数据库事务的ACID2.1.1 原子性 > 整个事务的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节2.1.2 一致性 > 在事务开始和事务结束以后,数据库的一致性约束没有被破坏2.1.3 隔离性 > 数据库允许多个并发事务同时对数据进行读写和修原创 2020-09-24 15:34:34 · 109 阅读 · 0 评论 -
时间与顺序
时间与顺序物理时钟与逻辑时钟分布式系统中每个节点记录时间不一样,即便设置NTP时间同步,节点间也存在毫秒级的偏差,由此产生了逻辑时钟,记录时间发生顺序分布式系统中按是否存在节点交互可拆分三类事件,一类发生节点内部,二是发生事件,三是接受事件逻辑时钟(Lamport timestamps, Vector clock)3.1 逻辑时钟前进3.1.1 每个事件对应一个逻辑时间戳,初始值为03.1.2 如果事件发生节点内发生,时间戳加13.1.3 如果事件属于发送事件,时间戳加1并在消息中带上该时原创 2020-09-24 15:34:06 · 453 阅读 · 0 评论 -
分布式网络
分布式网络什么是分布式网络分布式网络也叫网状网络,它是有分布在不同地点的计算机系统连接而成,网中无中心节点。通信子网是封闭式结构通信控制功能分布在各节点上分布式网络特点特点1.1 可靠性高,网内节点共享资源容易;1.2 可改善线路的信息流量分配1.3 可选择最佳路径,传输时延小1.4 控制复杂1.5 软件复杂1.6 线路费用高,不易扩充种类2.1 总线型2.2 环形2.3 星形2.4 树形...原创 2020-09-24 15:33:24 · 2254 阅读 · 0 评论 -
CAP含义应用
CAP 含义应用三个指标ConsistencyAvailabilityPartition tolerancePartition tolerance(分区容错性)大多数分布式系统分布在多个子网络,每个子网络叫做一个区。分区容错性代表区间通信可能失败。分区容错性无法避免,需要在C和A之间进行选择Consistency不能分区需要保持数据一致性Availability用户发起请求需要得到回应Consistency 和Availability矛盾不可能同时成立,因为可能存原创 2020-08-02 11:05:29 · 195 阅读 · 0 评论