RabbitMq
EchoByCode
这个作者很懒,什么都没留下…
展开
-
RabbitMq-进阶-07-DLX
1、1 简介死信队列,英文缩写:DLX 。Dead Letter Exchange(死信交换机),当消息成为Dead message后,可以被重新发送到另一个交换机,这个交换机就是DLX。1、2 消息成为死信的三种情况: 队列消息长度到达限制; 消费者拒接消费消息,并且不重回队列; 原队列存在消息过期设置,消息到达超时时间未被消费;2、1 代码实现 // DLX // 先定义正常的队列和交换机 public static final String TEST_原创 2022-01-02 13:35:47 · 820 阅读 · 0 评论 -
RabbitMq-进阶-06-TTL
1、1 TTL简介 TTL 全称 Time To Live(存活时间/过期时间)。 当消息到达存活时间后,还没有被消费,会被自动清除。 RabbitMQ可以对消息设置过期时间,也可以对整个队列(Queue)设置过期时间。1、2 定义队列和交换机: public static final String TTL_EXCHANGE_NAME = "springboot_ttl_exchange"; public static final String TTL_QUEUE_NAME = "原创 2022-01-01 19:30:54 · 93 阅读 · 0 评论 -
RabbitMq-进阶-05-prefetch参数
1、1 prefetch参数解释: 设置消费端一次拉取多少消息 !消费端的确认模式一定为手动确认。!1、2 配置文件修改: spring: rabbitmq: host: localhost port: 5672 username: echo password: echo virtual-host: /echo # 设置消费者的Ack为手动处理 listener: simple:原创 2022-01-01 18:13:44 · 1098 阅读 · 0 评论 -
RabbitMq-进阶-04-Ack
1、1 Ack简介: 确认。 表示消费端收到消息后的确认方式。 有三种确认方式: 自动确认:acknowledge="none" 手动确认:acknowledge="manual" 根据异常情况确认:acknowledge="auto"2、1 设置消费者的Ack为手动处理 listener: simple: acknowledge-mode: manual2、2 监听类:/** * @className RmListener *原创 2022-01-01 18:07:18 · 909 阅读 · 0 评论 -
RabbitMq-进阶-03-消息的可靠投递
1、1 在使用 RabbitMQ 的时候,作为消息发送方希望杜绝任何消息丢失或者投递失败场景。 RabbitMQ 为我们提供了两种方式用来控制消息的投递可靠性模式。 rabbitmq 整个消息投递的路径为: producer--->rabbitmq broker--->exchange--->queue--->consumer 1、2 confirm 确认模式 消息从 producer 到 exchange 则会返回一个 confirmCallback 。原创 2022-01-01 17:57:09 · 854 阅读 · 0 评论 -
RabbitMq-进阶-02-SpringBoot整合RabbitMq
1、逻辑同之前写的一样,此处就不过多介绍了。可以直接去看项目代码,注释之类的东西全部都有.....项目代码链接:https://github.com/Mbm7280/rabbitmq_demo原创 2021-12-28 20:59:56 · 333 阅读 · 0 评论 -
RabbitMq-进阶-01-Spring整合RabbitMq
1、逻辑同之前写的一样,此处就不过多介绍了。可以直接去看项目代码,注释之类的东西全部都有.....项目代码链接:https://github.com/Mbm7280/rabbitmq_demo原创 2021-12-28 17:08:29 · 410 阅读 · 0 评论 -
RabbitMq-Demo-05-主题模式
1、代码编写1、生产者代码编写:/** * @className Producer_Topics * @author Echo * @description 主题模式(通配符模式模式)-生产者 * @updateTime 2021/12/28 12:23 * @version 1.0 */public class Producer_Topics { public static void main(String[] args) throws IOException, TimeoutE原创 2021-12-28 12:42:37 · 449 阅读 · 0 评论 -
RabbitMq-Demo-04-路由模式
1、代码编写1、生产者代码:/** * @className com.echo.rm.demo.Producer_Routing * @author Echo * @description 路由模式-生产者 * @updateTime 2021/12/27 21:01 * @version 1.0 */public class Producer_Routing { public static void main(String[] args) throws IOException,原创 2021-12-27 22:15:16 · 291 阅读 · 0 评论 -
RabbitMq-Demo-03-订阅模式
1、 代码编写:1、生产者代码:/** * @className Producer_PubSub * @author Echo * @description 订阅模式-生产者 * @updateTime 2021/12/27 20:12 * @version 1.0 */public class Producer_PubSub { public static void main(String[] args) throws IOException, TimeoutException原创 2021-12-27 20:48:10 · 243 阅读 · 0 评论 -
RabbitMq-Demo-02-工作模式
1、代码编写1、将获取连接代码封装:/** * @className ConnUtils * @author Echo * @description 获取连接工具类 * @updateTime 2021/12/27 17:29 * @version 1.0 */public class ConnUtils { public Connection getConnection() throws IOException, TimeoutException { // 1、创原创 2021-12-27 18:01:45 · 411 阅读 · 0 评论 -
RabbitMq-Demo-01-简单模式
1、登录RabbitMQ图形化操作页面:这是系统默认提供的:username:guestpassword:guest2、创建一个用户:3、此时会发现,新创建的用户并没有虚拟机4、创建一个虚拟机:5、将之前创建的用户与虚拟机赋予权限:6、创建一个项目,开始写个Demo进行测试:1、引入项目依赖: <dependencies> <!--rabbitmq java 客户端--> <dependency>原创 2021-12-27 15:38:34 · 568 阅读 · 0 评论 -
RabbitMq-入门-03-下载安装注意事项
前言RabbitMQ 采用 Erlang 语言开发。Erlang 语言由 Ericson 设计,专门为开发高并发和分布式系统的一种语言,在电信领域使用广泛。Erlang介绍:Erlang在1991年由爱立信公司向用户推出了第一个版本,经过不断的改进完善和发展,在1996年爱立信又为所有的Erlang用户提供了一个非常实用且稳定的OTP软件库并在1998年发布了第一个开源版本。Erlang同时支持的操作系统有linux,windows,unix等,可以说适用于主流的操作系统上,尤其是它支持.原创 2021-12-27 13:44:02 · 397 阅读 · 0 评论 -
RabbitMq-入门-02-工作模式介绍
标题1、RabbitMQ 提供了 6 种工作模式简单模式一个生产者对应一个消费者!P:生产者,也就是要发送消息的程序C:消费者:消息的接收者,会一直等待消息到来queue:消息队列,图中红色部分。类似一个邮箱,可以缓存消息;生产者向其中投递消息,消费者从其中取出消息工作模式与入门程序的简单模式相比,多了一个或一些消费端,多个消费端共同消费同一个队列中的消息。在一个队列中如果有多个消费者,但是只能有一个消费者获得消息!那么消费者之间对于同一个消息的关系是竞争的关系。订阅/发原创 2021-12-27 12:56:05 · 268 阅读 · 0 评论 -
RabbitMq-入门-01-简介
标题1、Mq简介 MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。简单理解:MQ就是一个消息队列,存储消息的中间件标题2、Mq的优势:应用解耦(大致草图如下)原系统: 加入Mq后:异步提速原系统:加入Mq后:削峰填谷原系统:加入Mq后:标题3、Mq的劣势:(问题暂时留在这儿,后续解答)系统可用性降低(如何保证MQ的高可用?)系统引入的外部依赖越多,系统稳定性越差。一旦 MQ原创 2021-12-27 11:11:56 · 87 阅读 · 0 评论