2022年-C#中高级开发工程师面试题【消息队列篇】

2022/6/24 14:21:53

本文主要是介绍2022年-C#中高级开发工程师面试题【消息队列篇】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

心之所向,勇往直前!
简单归纳消息队列相关的面试题

正文

   1. MQ的作用是什么?

     解耦、异步、削峰

 

   2. 如何保证消息队列的幂等性?

    a. 消费操作时可以先校验数据是否重复再写入

    b. 数据表设置唯一索引

    c. 丢到redis里(分布式锁)

 

   3. 如何保证消息队列的可靠性?(RabbitMq)

    a. Confirm模式/启用事务

    b. 启用持久化

    c. ACK应答机制

 

   4. 你是如何解决死信问题的?

     a. Rabbitmq可以设置死信交换机

    b. 可以自行实现一个缓存区,将死信消息先丢到缓存区,再跑定时任务检测重新发送

 

   5. 什么情况下消息会进入死信队列?(RabbitMq)

     a. 消息被拒收

     b. 消息过期

     c. 队列最大长度满了

 

   6. 怎么实现延时队列?(RabbitMq)

     使用TTL + 死信队列实现

 

   7. 设置TTL的方式有几种,分别是什么(RabbitMq)

     有两种方式,基于队列设置、基于消息设置。如果同时使用了两种方式,则优先时间最小的

 

 

     

 

 

结语

  本篇到此结束,如果有任何疑问或者指正,请发表在评论区。



这篇关于2022年-C#中高级开发工程师面试题【消息队列篇】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程