分布式
安心撸码
这个作者很懒,什么都没留下…
展开
-
分布式事务解决方案
1基于XA协议的两阶段提交XA是一个分布式事务协议,由Tuxedo提出。XA中大致分为两部分:事务管理器和本地资源管理器。其中本地资源管理器往往由数据库实现,比如Oracle、DB2这些商业数据库都实现了XA接口,而事务管理器作为全局的调度者,负责各个本地资源的提交和回滚。XA实现分布式事务的原理如下:总的来说,XA协议比较简单,而且一旦商业数据库实现了XA协议,使用分布式...原创 2019-07-18 13:59:27 · 141 阅读 · 0 评论 -
Springboot+atomikos+jta实现分布式事务统一管理
1.要使用atomikos+jta就要引入相关依赖<!-- automatic+jta的分布式事务管理 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jta-atomikos</ar...原创 2019-07-18 14:23:49 · 451 阅读 · 0 评论 -
基于Redis实现分布式锁
概述目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都需要牺...原创 2019-07-28 15:27:31 · 91 阅读 · 0 评论 -
Eureka和ZooKeeper都可以提供服务注册与发现的功能,两者的区别
1.ZooKeeper保证的是CP,Eureka保证的是APZooKeeper在选举期间注册服务瘫痪,虽然服务最终会恢复,但是选举期间不可用的Eureka各个节点是平等关系,只要有一台Eureka就可以保证服务可用,而查询到的数据并不是最新的自我保护机制会导致Eureka不再从注册列表移除因长时间没收到心跳而应该过期的服务Eureka仍然能够接受新服务的注册和查询请求,但是不...转载 2019-07-18 21:14:48 · 440 阅读 · 0 评论 -
使用Rocket MQ事务消息达到数据最终一致性
参考1、 http://rocketmq.apache.org/rocketmq/the-design-of-transactional-message/ Rocket MQ事务消息的设计2、https://rocketmq.apache.org/docs/transaction-example/ RocketMQ 事务消息的例子0x00 前言在分布式环境下,经常会有跨服务的事务需...原创 2019-07-30 21:48:37 · 467 阅读 · 0 评论 -
基于ZooKeeper实现分布式锁
基于ZooKeeper分布式锁的流程在zookeeper指定节点(locks)下创建临时顺序节点node_n 获取locks下所有子节点children 对子节点按节点自增序号从小到大排序 判断本节点是不是第一个子节点,若是,则获取锁;若不是,则监听比该节点小的那个节点的删除事件 若监听事件生效,则回到第二步重新进行判断,直到获取到锁具体实现下面就具体使用java和zook...原创 2019-07-31 19:41:30 · 100 阅读 · 0 评论