Java高频面试题:RabbitMQ中有哪几种交换机类型?
大家好我是锋哥。今天分享关于【Java高频面试题RabbitMQ中有哪几种交换机类型】面试题。希望对大家有帮助Java高频面试题RabbitMQ中有哪几种交换机类型在RabbitMQ中交换机Exchange是消息路由的核心组件它负责接收生产者发送的消息然后根据路由规则将消息分发到一个或多个队列。RabbitMQ 默认支持以下四种主要交换机类型1.Direct直连交换机特点根据完全匹配的路由键routing key将消息发送到绑定的队列。使用场景需要精确路由的情况。例子队列A绑定了routing keyinfo队列B绑定了error。如果生产者发送的消息路由键是info则消息只会进入队列A。2.Fanout扇形/广播交换机特点忽略路由键把消息发送给绑定到交换机的所有队列。使用场景广播消息比如通知系统、日志系统。例子队列A、B、C都绑定到同一个Fanout交换机。生产者发送一条消息三个队列都会收到这条消息。3.Topic主题交换机特点根据模糊匹配的路由键进行路由。路由键通常是以.分隔的字符串队列绑定时使用通配符*匹配一个单词#匹配零个或多个单词使用场景复杂路由需求如日志分级、事件分发。例子队列A绑定user.*队列B绑定user.#消息user.create会进入队列A和B消息user.profile.update会进入队列B但不会进入队列A4.Headers头部交换机特点通过消息头Headers匹配进行路由而不是通过 routing key。使用场景当路由规则非常复杂不便用字符串匹配时使用。例子队列绑定条件x-match all头部必须包含formatpdf且typereport消息头满足条件的消息才会被路由到该队列✅总结类型路由方式特点典型场景Direct精确匹配 routing key精确路由指定任务队列Fanout广播忽略 routing key发送到所有队列消息广播、日志广播Topic模糊匹配 routing key支持*和#通配符复杂分发规则、事件订阅Headers匹配消息头根据消息头属性路由高度自定义路由需求
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2414043.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!