消息队列
文章平均质量分 85
上善若水
每天努力一点,就离大神们近一点。
展开
-
六、RabbitMQ发布确认
一、发布确认原理 生产者将信道设置成confirm模式,一旦信道进入confirm模式,所有在该信道上面发布的消息都将会被指派一个唯一的ID(从1开始),一旦消息被投递到所有匹配的队列之后,broker就会发送一个确认给生产者(包含消息的唯一ID),这就使得生产者知道消息已经正确到达目的队列了,如果消息和队列是可持久化的,那么确认消息会在将消息写入磁盘之后发出,broker回传给生产者的确认消息中delivery-tag域包原创 2021-10-30 21:30:02 · 135 阅读 · 0 评论 -
五、RabbitMQ持久化
一、RabbitMQ持久化1.1、概念刚刚我们已经看到了如何处理任务不丢失的情况,1.2、队列如何实现持久化原创 2021-10-27 21:24:10 · 1254 阅读 · 0 评论 -
四、RabbitMQ中模式—工作队列(Work Queues)模式
一、工作队列(work queues)模式工作队列(又称任务队列)的主要思想是避免立即执行资源密集型任务,而不得不等待它完成。相反我们安排任务在之后执行。我们把任务封装为消息并将其发送到队列。在后台运行的工作经常将弹出任务并最终执行作业。当有多个工作线程时,这些工作线程将一起处理这些任务。1.1、轮询分发消息在这个案例中我们会启动两个工作线程,一个是消息发送线程,我们来看看它们两个工作线程是如何工作的。1.1.1、抽取工具类package com.xbmu.rabbitmq.utils;imp原创 2021-10-10 22:38:53 · 308 阅读 · 0 评论 -
三、RabbitMQ中模式—简单模式Hello World
一、Hello World程序我们将用Java编写两个程序,发送单个消息的生产者和接收消息并打印出来的消费者。将介绍Java API中的一些细节。在下图中,"P"是我们的生产者,"C"是我们的消费者。中间的框是一个队列——RabbitMQ代表使用者保留的消息缓冲区。1.1、加入依赖 <dependencies> <!-- rabbitmq依赖客户端 --> <dependency> <group原创 2021-10-10 19:57:24 · 190 阅读 · 0 评论 -
二、RabbitMQ介绍与安装
一、RabbitMQ的介绍1.1、RabbitMQ的概念RabbitMQ是一个消息中间件:它接受并转发消息。你可以把它当作一个快递站点,当你要发送一个包裹时,你把你的包裹放到快递站,快递员最终会把你的快递送到收件人哪里。按照这种逻辑RabbitMQ是一个快递站,一个快递员帮你传递快件。RabbitMQ与快递站的主要区别在于,它不处理快件而是接收、存储和转发消息数据。1.2、四大核心概念生产者产生数据,发送消息的程序是生产者。交换机交换机是RabbitMQ非常重要的一个部件,一方面它接收来自原创 2021-10-10 10:57:58 · 416 阅读 · 0 评论 -
一、消息队列MQ
一、MQ的相关概念1.1、什么是MQMQ(Message Queue),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已,还是一种跨进程的通信机制,用于上下游传递信息。在互联网架构中,MQ是一种非常常见的上下游“逻辑解耦+物理解耦”的消息通信服务。使用了MQ之后,消息发送上游只需要依赖MQ,不用依赖其他服务。1.2、为什么要用MQ先说一下消息队列常见的使用场景吧,其实场景有很多,但是比较核心的有3个:应用解耦、异步提速、流量削峰。1.2.1、应用解耦看这原创 2021-10-10 09:58:38 · 268 阅读 · 0 评论