记录下在面试回答过程中可能会被问到的问题 ,防止自己答不上来

你来说下MQ的异步处理机制

MQ的异步处理机制,说白了就是排队干活
比如用户下单后,系统不需要立刻把所有事情都做完(比如发短信、改库存、记日志),而是先把任务写成一条消息扔进队列里,然后慢慢处理。
这样做的好处是:

  1. 速度快:用户下单完就返回成功,不用等着后面的事做完;
  2. 不丢活:消息会保存在MQ里,不会因为系统忙或出错而丢失任务;
  3. 抗高峰:大促时订单暴涨,MQ可以先收着消息,后端慢慢消化;
  4. 解耦合:谁需要处理这个消息,自己去MQ取就行,不依赖主流程。
    常见的MQ工具有RabbitMQ、Kafka等,就像不同的快递公司,各有各的优势。
    总之,MQ异步机制就是让系统更高效、稳定、可扩展的一种常用手段。
    谢谢!

简单说下什么是MQ分布式事务

好的,面试官:
MQ分布式事务,简单来说就是:在多个服务之间做业务操作的同时,保证消息发送和业务数据一致性的一种机制
比如用户下单扣库存,同时要发一条消息通知其他系统。
如果只用普通MQ,可能会出现:库存扣了,但消息没发出去;或者消息发了,但库存没扣成功,这就乱套了。
所以引入了分布式事务机制,确保这两件事要么都成功,要么都失败。
常见的实现方式有:

  • 本地事务表:先写数据库再发消息,靠定时任务补偿;
  • 事务消息(如RocketMQ):先预提交消息,等业务完成后再确认发送;
  • 最大努力通知:失败后不断重试,直到最终一致。
    核心目的就是:让多个系统在异步通信下保持数据一致、不丢数据
    以上是我的理解,谢谢!