当前位置: 首页 > news >正文

昌平区手机网站制作服务国内最近重大新闻2024

昌平区手机网站制作服务,国内最近重大新闻2024,黑马程序员培训在哪里,wordpress无法上传exeRabbitMQ的消息如何实现路由 RabbitMQ是一个基于AMQP协议实现的分布式消息中间件#xff0c;AMQP具体的工作机制是生产者将消息发送到RabbitMQ Broker上的Exchange交换机上#xff0c;Exchange交换机将收到的消息根据路由规则发给绑定的队列#xff08;Queue#xff09;AMQP具体的工作机制是生产者将消息发送到RabbitMQ Broker上的Exchange交换机上Exchange交换机将收到的消息根据路由规则发给绑定的队列Queue然后再将消息投递给订阅了该队列的消费者从而完成消息的异步通讯 Exchange是一个消息交换机消息路由规则的核心组件可定义消息路由规则即消息应该路由到哪个队列Queue表示消息的载体每个消息可以根据路由规则路由到一个或多个队列中 Exchange负责接收生产者的消息并将消息路由到消息队列而消息的路由规则由ExchangeType和Binding决定 Binding表示Queue和Exchange之间的绑定关系每个绑定关系存在一个BindingKey通过这种方式相当于在Exchange中建立一个路由关系表 生产者发送消息时需要声明一个routingKey路由键Exchange获取到routingKey之后根据routingKey和路由表中的BindingKey进行匹配而匹配的规则是通过交换机类型ExchangeType来决定的 在RabbitMQ中有三种类型的交换机Direct 、Fanout 、Topic 1Direct Exchange直连交换机具有路由功能的交换机绑定到此交换机时需要指定一个routingKey交换机发送消息时需要routingKey会将消息发送到对应的队列即 routingKey 和 BindingKey完全一致相当于点对点的发送 2Fanout Exchange扇形交换机广播机制这种方式不会基于routingKey来匹配而是将消息广播给绑定到当前Exchange上的所有队列上速度最快即在直连交换机的基础上增加模式匹配即对routingKey进行模式匹配* 代表一个单词# 代表多个单词 3Topic Exchange主题交换机正则表达式匹配根据routingKey使用正则表达式进行匹配符合匹配规则的Queue都会收到该消息 4首部交换机Headers Exchange忽略routingKey使用Headers信息一个Hash的数据结构进行匹配优势在于可以有更多更灵活的匹配规则 如何保证RabbitMQ中的消息可靠传输 在RabbitMQ的整个消息传递过程中有三种情况会存在消息丢失 1生产者将消息发送到RabbitMQ Server的过程中 从生产者发送消息的角度来说RabbitMQ提供了一个Confirm消息确认机制生产者发送消息到Server端以后如果消息处理成功Server端会返回一个ack消息。客户端可以根据消息的处理结果来决定是否要做消息的重新发送从而确保消息一定到达RabbitMQ Server上 2RabbitMQ Server收到消息后在持久化之前宕机从而导致数据丢失 从RabbitMQ Server端来说可以开启消息的持久化机制即收到消息之后持久化到磁盘中 设置消息的持久化有两个步骤创建Queue的时候设置为持久化发送消息的时候将消息投递模式设置为持久化投递 即便设置了持久化消息但是仍有可能会出现消息刷新到磁盘之前RabbitMQ Server宕机导致消息丢失的问题为了确保万无一失需要结合Confirm消息确认机制一起使用 3消费端收到消息还没来得及处理就宕机导致RabbitMQ Server认为该消息已经签收 从消费端的角度来说我们可以将消息的自动确认机制修改为手动确认即消费端只有手动调用消息确认方法才表示消息已经被签收这可能会造成重复消费的问题所以这里需要考虑幂等性的设计 如为避免MQ重复消费导致数据多次被修改的问题可以在接受到MQ消息时将消息通过setnx命令写入到Redis中一旦消息被消费过就不会在消费 RabbitMQ如何实现高可用 RabbitMQ高可用实现方式有两种 第一种普通集群在这种模式下一个Queue的消息只会存在集群的一个节点上集群中的其他节点会同步Queue所在节点的元数据消息在生产和消费时不管请求发送到集群的哪个节点最终都会路由到Queue所在节点上去存储和拉取消息这种方式并不能保证Queue的高可用性但可以提升RabbitMQ消息的吞吐能力第二种镜像集群即集群中的每个节点都会存储Queue的数据副本在每次生产消息时都需要将消息内容同步给集群中的其他节点这种方式能够保证Queue的高可用性但集群副本之间的同步会带来性能的损耗 另外由于每个节点都保存了副本我们还可以通过HAProxy实现负载均衡 多线程异步和MQ有什么区别
http://www.hkea.cn/news/14346571/

相关文章:

  • 怎么查网站开发的语言网站如何添加外链
  • 博客用来做微网站网上国网app推广经验
  • 网站风格设计的选择做网站怎么添加背景图片
  • 大尺度做爰网站在线成都微信小程序开发平台
  • 智能建站收费标准岚庭装饰公司口碑怎么样
  • 凡高网站建设宠物网站建设策划方案
  • 网站开发项目外包宁夏建网站报价
  • 网站可以用cdr做吗阜蒙县建设学校官网网站
  • 网站建设与网页制作的实验目的阜宁城乡建设局网站
  • 怎样找人做网站软件定制解决方案
  • 网站开发人员需要去做原型吗做毕业设计网站教程
  • 站点与网站有什么区别wordpress图片打叉
  • 服务器可以做网站网站怎么上线
  • 齐河专业企业网站建设微股东微网站制作平台
  • 孝感公司做网站wordpress主题网店
  • iis 访问网站需要进行身份验证网站建设用户核心
  • 帝国cms下载类网站怎么做wordpress 外贸
  • 适合毕设做的简单网站网站搭建好有什么内容可以修改
  • 福州网站建设名列前茅国外网站建设企业
  • 网站怎么做一级域名跳转网站兼容ie代码
  • 东莞市建设局网站首页广州外贸网站建设推广
  • 济南学网站建设哪里好rss订阅wordpress
  • 企业建设营销型网站有哪些步骤进口网站建设
  • 网站开发学生鉴定表网站分页效果
  • 龙之向导外贸网站asp.net网站制作步骤
  • 服装设计有哪些网站网站月流量
  • 集团网站推广旅游网站系统建设方案
  • 怎么做提卡密网站万游昆明做网站哪家好
  • 网站建设中可能升级河北网诚网站建设
  • 免费建站工具网站原型图是什么