摘要: Zookeeper脑裂问题? 当一个集群的不同部分在同一时间都认为自己是活动的时候,我们就可以将这个现象称为脑裂症状。通俗的说,就是... 阅读全文
posted @ 2021-04-07 17:11 javawxid 阅读(67) 评论(0) 推荐(0) 编辑
摘要: Zookeeper分布式锁? 客户端A要获取分布式锁的时候首先到locker下创建一个临时顺序节点(node_n),然后立即获取lo... 阅读全文
posted @ 2021-04-07 16:55 javawxid 阅读(25) 评论(0) 推荐(0) 编辑
摘要: Zookeeper假死问题? 假死:心跳出现超时可能是master挂了,但是也可能是master,zookeeper之间网络出现了问... 阅读全文
posted @ 2021-04-07 16:55 javawxid 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 选举机制 领导者选举的过程实际上就是比较哪台服务器比较强,比较规则是:1. 谁的数据比较新谁当领导(zxid),2.数据都一样则看谁... 阅读全文
posted @ 2021-04-07 16:54 javawxid 阅读(43) 评论(0) 推荐(0) 编辑
摘要: Zookeeper底层原理? zookeeper:Zookeeper会维护一个类似于标准的文件系统的具有层次关系的数据结构。这个文件... 阅读全文
posted @ 2021-04-07 16:53 javawxid 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 索引数据结构 B+树中间节点没有存储数据,叶节点存放数据,其余节点用来索引,所以同样大小的磁盘页可以容纳更多的节点元素,而B树是每个... 阅读全文
posted @ 2021-04-07 16:35 javawxid 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 悲观锁、乐观锁、排它锁、共享锁、表级锁、行级锁,死锁? 悲观锁:每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,... 阅读全文
posted @ 2021-04-07 15:30 javawxid 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 四大属性底层实现原理? A(原子性): 要么全部完成,要么完全不起作用。底层实现原理:undo log(当这个事务对数据库进行修改的... 阅读全文
posted @ 2021-04-07 13:56 javawxid 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 数据库事务隔离级别? 脏读: 一个事务a修改或添加了一条数据,在a事务提交之前,另一个事务b读到了这条数据,并进行了操作。a如果回滚... 阅读全文
posted @ 2021-04-07 13:50 javawxid 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 可靠消息最终一致性方案 基于 MQ 来实现事务。比如阿里的 RocketMQ 就支持消息事务。 大概的意思就是: A 系统先发送一个... 阅读全文
posted @ 2021-04-07 11:22 javawxid 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 最大努力通知? 最大努力通知 其实我觉得本地消息表也可以算最大努力,事务消息也可以算最大努力。 就本地消息表来说会有后台任务定时去查... 阅读全文
posted @ 2021-04-07 11:09 javawxid 阅读(47) 评论(0) 推荐(0) 编辑
摘要: MQ 事务消息? MQ 事务消息 有一些第三方的MQ是支持事务消息的,比如RocketMQ,他们支持事务消息的方式也是类似于采用的二... 阅读全文
posted @ 2021-04-07 11:05 javawxid 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 补偿事务(TCC)? 补偿事务(TCC) 针对每个操作,都要注册一个与其对应的确认和补偿(撤销)操作。它分为三个阶段: Try 阶段... 阅读全文
posted @ 2021-04-07 11:01 javawxid 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 三阶段提交(3PC)? 3PC 相比于 2PC 它在参与者中也引入了超时机制,并且新增了一个阶段使得参与者可以利用这一个阶段统一各自... 阅读全文
posted @ 2021-04-07 10:58 javawxid 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 两阶段提交(2PC)? 两阶段提交(2PC) 第一阶段:协调者询问参与者事务是否执行成功,参与者发回事务执行结果。这一阶段的协调者有... 阅读全文
posted @ 2021-04-07 10:56 javawxid 阅读(47) 评论(0) 推荐(0) 编辑
摘要: CAP理论? 分布式环境下(数据分布)要任何时刻保证数据一致性是不可能的,只能采取妥协的方案来保证数据最终一致性。这个也就是著名的C... 阅读全文
posted @ 2021-04-07 10:54 javawxid 阅读(36) 评论(0) 推荐(0) 编辑
摘要: BASE理论? BASE 理论是对 CAP 理论的延伸,核心思想是即使无法做到强一致性,但应用可以采用适合的方式达到最终一致性。 基... 阅读全文
posted @ 2021-04-07 10:52 javawxid 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 秒杀场景设计 流量过滤: 本质上,参与秒杀的用户很多,但是商品的数量是有限的,真正能抢到的用户并不多,那么第一步就是要过滤掉大部分无... 阅读全文
posted @ 2021-04-07 10:40 javawxid 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 库存超卖问题 针对秒杀建议选择下单扣库存的方式:首先查询redis缓存库存是否充足先扣库存再落订单数据,可以防止订单生成了没有库存的... 阅读全文
posted @ 2021-04-07 10:39 javawxid 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 金额篡改问题 案例:下订单时,拿到别人的URL,篡改数据(金额)发送给系统 方法一:对插入的操作进行校验:一个请求的URL传入进来,... 阅读全文
posted @ 2021-04-07 10:32 javawxid 阅读(40) 评论(0) 推荐(0) 编辑