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

在线捐款网站开发中邦建设工程有限公司官方网站

在线捐款网站开发,中邦建设工程有限公司官方网站,广西建设教育学会网站,做网站做得好的公司目录 前言 1.什么是RabbitMQ#xff1f; 2.同步调用的优缺点 3.异步调用的优缺点 3.1优点#xff1a; 3.2异步调用的问题是什么#xff1f; 4技术选型 4.1AMQP协议就是#xff1a; 4.2kafka和RabbitMQ的使用场景 5.安装RabitMq 6.rabitmq的整体架构 7.RabibtM…目录 前言 1.什么是RabbitMQ 2.同步调用的优缺点 3.异步调用的优缺点 3.1优点 3.2异步调用的问题是什么 4技术选型 4.1AMQP协议就是 4.2kafka和RabbitMQ的使用场景 5.安装RabitMq 6.rabitmq的整体架构  7.RabibtMQ的快速入门 7.1小结 8.数据隔离 9.任务模型workqueue 10.Fanout交换机 总结 前言 这是我学习RabbitMQ总结的笔记RabbitMQ是很强大的消息队列组件是学习java路上不可缺少的一部分越学越觉得自己无知继续加油欢迎大家阅读本文相信阅读后大家可以对RabbitMQ有简单的认识 1.什么是RabbitMQ RabbitMQ 是一个开源的消息代理软件有时也被称为面向消息的中间件它实现了高级消息队列协议AMQP在分布式系统中扮演着重要的角色。可以使用mq实现异步通信 2.同步调用的优缺点 优点时效性强等待到结果才会返回 缺点可拓展性差每次都需要修改各个模块的代码性能下降级联失败问题 3.异步调用的优缺点 异步调用通常是基于消息通知的方式包含三个角色消息发送者投递消息的人就是原来的调用者消息接收者接收和处理消息的人就是原来的服务提供者消息代理管理、暂存、转发消息你可以把它理解成微信服务器或者是一个中转站 消息发送者消息代理一般是消息队列这里使用RabitMQ 就是broker消息接收者 3.1优点 解除耦合拓展性强无需等待性能好故障隔离缓存消息流量削峰填谷常见的场景就比如抖音卖货321开始抢单只有在那一会并发量较大需要处理的流量多而其他时候流量却很少这时候流量就像山峰和山谷消息队列可以实现流量的削峰填谷实现流量的相对平稳被服务器处理 3.2异步调用的问题是什么 不能立即得到调用结果时效性差不确定下游业务执行是否成功业务安全依赖于Broker的可靠性 我们在选择消息队列的时候尽量要选择安全性可靠性高的消息队列如果消息队列一出现问题那么我们的消息全部丢失这时候如果是一些支付消息那就很糟糕了 4技术选型 市场上有许多的消息队列供我们选择这里我们分析各个消息队列的优缺点 4.1AMQP协议就是 AMQPAdvanced Message Queuing Protocol协议是一个开放标准的应用层协议专为在分布式系统中实现可靠的消息传递和异步通信而设计。它定义了一套详细的规范涵盖了消息的创建、发布、路由、接收以及确认等各个环节确保消息能够在不同的应用程序或系统之间准确无误地传输并且支持多种消息传递模式如点对点、发布/订阅等以满足不同业务场景的需求。同时AMQP协议还具有良好的可扩展性和互操作性允许不同的实现之间进行无缝集成和通信。也就是不区分编程语言 消息队列就是我们进行异步调用模型的消息代理brokerkafka的单机吞吐量非常之高可以达到几百万每秒适合做一些大数据处理RocketMq单机吞吐量可以达到10w以上RabbitMQ一般在10w一下 4.2kafka和RabbitMQ的使用场景 可以看一下我之前写的csdn分析过 点我 支持镜像集群可用性高 5.安装RabitMq 这里使用docker安装更加方便 之前有写过docker的安装教程点我 docker run \-e RABBITMQ_DEFAULT_USERitheima \ 用户名-e RABBITMQ_DEFAULT_PASS123321 \ 密码-v mq-plugins:/plugins \ 数据卷挂载--name mq \ 容器名字--hostname mq \ 主机名字-p 15672:15672 \ 客户端端口-p 5672:5672 \ 接受信息端口--network hm-net\ 网络-d \rabbitmq:3.8-management 6.rabitmq的整体架构  这里我们就可以知道消息发送者将消息发送给交换机然后根据交换机的不同类型不同策略去将消息发送给我们的队列然后再由我们的消费者去消费。 交换机有不同类型目前刚学到Fanout广播 7.RabibtMQ的快速入门 在学习一门技术我们一般可以先去学习如何使用快速入门然后根据功能逐步扩展这里我们选择快速入门实践我们的RabbitMQ rabitmq客户端的地址。这里是我的虚拟机地址 绑定了两个队列 发送消息 rabitMq的客户端的功能相当全面我们可以查看我们发送的消息而不用消费者 7.1小结 交换机只能进行路由消息无法存储消息如果我们没有给交换机绑定消息队列那么我们的消息就会丢失因此必须进行交换机绑定 8.数据隔离 我们在开发的时候往往希望不同的业务和项目再使用我们的mq服务时候数据数据是隔离的因此我们会采取给不同的业务和项目赋予不同的用户然后再给用户赋予不同的虚拟主机以此来实现数据隔离 9.任务模型workqueue workqueue可以加快我们消费者消费的速度就比如在一些高并发场景下我们可以让多个消费者去同时监听一个队列可以解决消息堆积问题 可以简单的去模拟我们的任务模型在java当中 生产者 消费者 默认采取轮询的策略,为了实现能者多劳我们可以修改配置如下 workqueue任务模型 多个消费者绑定到一个队列可以加快消息处理速度同一条消息只会被一个消费者处理通过设置prefetch来控制消费者预取的消息数量处理完一条再处理下一条实现能者多劳 10.Fanout交换机 交换机的作用主要是接收发送者发送的消息并将消息路由到与其绑定的队列。 常见交换机的类型有以下三种 Fanout:广播Direct:定向Topic话题 fanout交换机是广播每一个与其绑定的queue都可以接收消息所以也叫广播模式 可以看一下代码的简单实现。 消费者 生产者 总结 RabbitMQ 是一款开源的消息代理软件实现了 AMQP 协议在分布式系统异步通信中发挥关键作用。与同步调用相比异步调用借助消息发送者、接收者和 RabbitMQ 这样的消息代理虽然牺牲了时效性、难以确定业务执行状态且依赖代理可靠性但具备解除耦合、提升性能、隔离故障以及流量削峰填谷等优势。在技术选型上RabbitMQ 单机吞吐量一般在 10w 以下相比 Kafka 的数百万每秒、RocketMQ 的 10w 以上更适用于对可用性要求高的场景。通过 Docker 可便捷安装 RabbitMQ其架构中交换机负责消息路由如 Fanout 交换机采用广播模式将消息分发至所有绑定队列。使用时交换机必须绑定队列以防止消息丢失还可通过用户和虚拟主机实现数据隔离workqueue 任务模型支持多消费者绑定同一队列加速消息处理通过设置 prefetch 实现能者多劳 。
http://www.zqtcl.cn/news/711829/

相关文章:

  • 如何制作自己的网站在线观看2021网页源码
  • 电子商务网站建设百度文库工业设计公司招聘
  • 网站seo测评餐厅设计公司餐厅设计
  • 深圳网站seo推广wordpress swf 上传
  • 织梦做双语网站怎么做制作网站的教程
  • 公司网站开发的国内外研究现状个人网页设计大全
  • 做一个网站人员网站建设及推广优化
  • 胶州市城乡建设局网站能进封禁网站的浏览器
  • 网站做几级等保荣耀商城手机官网
  • 营销网站费用渭南网站建设公司
  • wordpress主题集成插件下载网站如何做360优化
  • 有什么在线做文档的网站网站开发需要用到哪些技术
  • 网站套餐可以分摊吗吗移动登录网页模板免费下载
  • asp网站会员注册不了但是打不开网页
  • wordpress 中文网店杭州排名优化公司
  • wordpress建站安全吗wordpress企业主题教程
  • 网站构建的开发费用信息管理系统网站开发教程
  • 自己做网站怎么维护wordpress素材模板
  • 如何选择一个好的优质网站建设公司wordpress 主题小工具
  • mysql数据库做网站广州网站seo地址
  • 福建省住房和城乡建设厅网站电话网站开发项目步骤
  • 网站注册域名多少钱淘宝网商城
  • 做架构图的网站网站和网店的区别
  • 做红包网站简单个人网站设计
  • 新手学做网站pdf手wordpress修改搜索框
  • 做湲兔费网站视颍如何通过查询网站注册时间
  • 重庆cms建站模板南通网站建设推广优化
  • 合肥网站建设的公司新闻类网站如何做量化统计
  • 好用的在线地图网站十六局集团门户网
  • 网站开发数据库连接失败广州网站建站平台