分布式事物相关面试题

一.目的

  解决强一致性和最终一致性问题

二.典型方案

  两阶段提交方案(2pc)

  eBay 事件队列方案

  TCC 补偿模式

  缓存与数据最终一致性

三.一致性理论

  CAP 理论:一致性(Consistency),可用性(Avaliability),分区容忍性(Patition Tolerance)

  Base 理论:基本可用性(Basically Avaliable),软状态(Soft state),最终一致性(Eventual consistency)

四.一致性模型

  强一致性:任意时刻,所有副本中的数据都是一致的

  弱一致性:系统不承诺,任意时刻可以读到最新的写入值

  最终一致性:保证最终会返回上一次写入的值

五.解决方案

  1.2pc 强一致性方案

  2.eBay 事件队列方案--最终一致性

  

 

  3.TCC 补偿模式--最终一直性

  

 4.Saga框架

参考:https://github.com/eventuate-tram/eventuate-tram-sagas

 

  

转载于:https://www.cnblogs.com/yuanpeng-java/p/10653462.html

Kafka相关面试题涵盖了众多方面,包括Kafka的设计、数据传输、节点判断、消息顺序性、消费组、分区等等。以下是一些常见的Kafka面试题: 1. Kafka的设计是什么样的? Kafka是一个分布式流处理平台,主要由生产者、消费者和Broker组成。生产者将数据发送到Broker,消费者从Broker订阅并消费数据。Kafka使用分区来实现可扩展性和容错性。 2. 数据传输的事物定义有哪三种? Kafka支持事务,有三种事务定义:生产者事务、消费者事务和流事务。生产者事务用于确保发送到Kafka的消息在提交事务之前不会被其他消费者读取。消费者事务用于确保在事务提交之前消费的消息不会被其他消费者提交。流事务用于保证在流处理应用程序中对多个Kafka主题的读写操作的原子性。 3. Kafka判断一个节点是否还活着有哪两个条件? Kafka判断一个节点是否还活着主要有两个条件:心跳和元数据。心跳是指Kafka节点定期向控制器发送心跳信号,以表明节点还存活。元数据是指Kafka节点定期发送元数据更新请求给控制器,以表明节点还能处理客户端请求。 4. producer是否直接将数据发送到broker的leader(主节点)? 是的,生产者将数据直接发送到broker的leader节点。leader节点负责接收和写入数据,然后将数据复制到其他follower节点以实现数据的冗余和容错性。 5. Kafka consumer是否可以消费数据或者是Push模式? Kafka的consumer可以以Pull模式或者Push模式消费数据。在Pull模式中,消费者主动从broker拉取数据。在Push模式中,broker将数据推送给消费者。 希望以上回答对您有所帮助。如需了解更多详情,请参考相关面试资料。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Kafka面试题.pdf](https://download.youkuaiyun.com/download/qq_44273429/20700822)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [20道常见的kafka面试题以及答案](https://blog.youkuaiyun.com/wanghaiping1993/article/details/125346010)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Kafka常见面试题(附个人解读答案+持续更新)](https://blog.youkuaiyun.com/C_Xiang_Falcon/article/details/100917145)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值