分布式
文章平均质量分 87
分布式服务化架构、服务治理、rpc、分布式事务、分布式锁
勤天
一直在路上,路上的风景很精彩!
展开
-
基于数据库实现分布式锁
基于数据库的实现方式的核心思想是:在数据库中创建一个表,表中包含方法名等字段,并在方法名字段上创建唯一索引,想要执行某个方法,就使用这个方法名向表中插入数据,成功插入则获取锁,执行完成后删除对应的行数据释放锁。...原创 2022-08-03 14:37:17 · 1404 阅读 · 1 评论 -
PHP+zookeeper实现分布式锁
1、redis分布式锁,其实需要自己不断去尝试获取锁,比较消耗性能;zk分布式锁,获取不到锁,注册个监听器即可,不需要不断主动尝试获取锁,性能开销较小2、如果是redis获取锁的那个客户端bug了或者挂了,那么只能等待超时时间之后才能释放锁;而zk的话,因为创建的是临时znode,只要客户端挂了,znode就没了,此时就自动释放锁。...原创 2022-07-08 15:06:43 · 1312 阅读 · 0 评论 -
PHP+Redis实现分布式锁
分布式锁实现的注意点:1)互斥: 任意时刻, 只能有一个客户端获得锁2)不会死锁: 客户端持有锁期间崩溃, 没有主动解除锁, 能保证后续的其他客户端获得锁3)锁归属标识: 加锁和解锁的必须是同一个客户端, 客户端不能解掉非自己持有的锁(锁应具备标识)4)如果是Redis集群, 还得考虑具有容错性:只要大部分Redis节点正常运行, 客户端就可以加锁和解锁....原创 2022-07-08 13:45:59 · 3948 阅读 · 0 评论 -
分布式事务2PC和3PC原理
两阶段提交又称2PC,2PC是一个非常经典的强一致、中心化的原子提交协议。这里所说的中心化是指协议中有两类节点:一个是中心化协调者节点(coordinator)和N个参与者节点(partcipant)。两个阶段:第一阶段:投票阶段 和第二阶段:提交/执行阶段。...原创 2022-07-07 14:42:02 · 206 阅读 · 0 评论 -
分布式事务解决方案之可靠消息最终一致性
可靠消息最终一致性方案是指当事务发起方执行完成本地事务后并发出一条消息, 事务参与方(消息消费者)一定能够接收消息并处理事务成功 ,此方案强调的是只要消息发给事务参与方最终事务要达到一致。...原创 2022-07-07 14:28:39 · 443 阅读 · 0 评论 -
分布式事务解决方案之TCC
分布式事务解决方案之TCC原创 2022-07-06 16:45:18 · 3164 阅读 · 0 评论 -
分布式事务解决方案之2PC
XA是一个分布式事务协议,由Tuxedo提出。XA中大致分为两部分:事务管理器和本地资源管理器。其中本地资源管理器往往由数据库实现,比如Oracle、DB2这些商业数据库都实现了XA接口,而事务管理器作为全局的调度者,负责各个本地资源的提交和回滚。...原创 2022-07-06 16:39:44 · 693 阅读 · 0 评论 -
分布式事务介绍
分布式系统会把一个应用系统拆分为可独立部署的多个服务,因此需要服务与服务之间远程协作才能完成事务操作,这种分布式系统环境下由不同的服务之间通过网络远程协作完成事务称之为分布式事务 ,例如用户注册送积分事务、创建订单减库存事务,银行转账事务等都是分布式事务。......原创 2022-07-06 16:29:28 · 391 阅读 · 0 评论 -
分布式全局ID生成方案
数据库自增ID、批量生成ID、UUID、取当前毫秒数、Redis生成ID、类snowflake算法原创 2022-07-06 16:25:13 · 699 阅读 · 0 评论