随笔分类 - rabbitmq
摘要:死信队列 DLX(Dead Letter Exchange),可以称为死信交换器。当消息在一个队列中变成死信(dead message)之后,它能被重新发送到另一个交换器中,这个交换器就是DLX,绑定DLX的队列就称为死信队列。 消息变成死信队列有下面几个情况: 1. 消息被拒绝(channel.b
阅读全文
摘要:持久化可以提高RabbitMQ的可靠性,以防在异常情况(重启、关闭、右机等)下的数据丢失。 RabbitMQ的持久化分为三个部分: 交换器的持久化:通过在声明交换器时将 参数设置为 实现持久化。不设置持久化,在RabbitMQ服务重启后,相关的交换器元数据会丢失。不过消息因为存储在队列,不会丢失,只
阅读全文
摘要:消息到队列 消息发送后,如何确定到消息是否到达了相应的队列?RabbitMQ默认在发送消息时,如果不能根据交换器类型和路由键找到相应的队列,消息将直接丢弃。而要想知道消息是否达到队列或没到队列却不想消息丢失,RabbitMQ提供有解决方案: 设置 参数 为 时,交换器无法根据自身的类型和路由键找到一
阅读全文
摘要:相关概念 RPC,是Remote Procedure Call的简称,即远程过程调用。它是一种通过网络从远程计算机上请求服务,而不需要了解底层网络的技术。RPC的主要功用是让构建分布式计算更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。 通俗点来说,假设有两台服务器A和B,一个应用部署
阅读全文
摘要:前面的路由教程中改进了日志系统,使用了 类型,而不是只能进行虚拟广播的 的交换器,并且有可能选择性地接收日志。 但前面的 类型交换器还是有局限性。在日志系统中,不仅要查看指定 级别的日志消息,还要知道是哪个地方、哪个类出现的错误消息,例如下面日志消息 上面日志消息除了标记 级别,还有日志消息的来源:
阅读全文
摘要:前面的工作队列是假设每个任务都交付给一个工作者。在这部分,将是向多个消费者传递消息,此模式称为 。 为了说明这种模式,将构建一个简单的日志记录系统。它包含两个程序 发出日志消息 接收和打印消息,这里有两个消费 1. 将日志定向到磁盘 2. 在屏幕上看到日志 基本上,发布的日志消息将被广播给所有接收者
阅读全文
摘要:工作队列,用于多个消费者从队列中消费多个消息。 工作队列(又称: 任务队列 )背后的主要思想是避免立即执行资源密集型任务,并且必须等待它完成。相反,我们安排任务稍后完成。我们将 任务 封装 为消息并将其发送到队列。在后台运行的工作进程将弹出任务并最终执行作业。当您运行许多工作程序时,它们之间将共享任
阅读全文
摘要:Java Client的5.x版本系列需要JDK 8,用于编译和运行。在Android上,仅支持Android 7.0或更高版本。4.x版本系列支持7.0之前的JDK 6和Android版本。 加入RabbitMQ java client(基于4.x最新版本)依赖: RabbitMQ默认用户 默认情
阅读全文
摘要:`RabbitMQ RabbitMQ RabbitMQ`模型更像是一种交换机模型。 RabbitMQ模型 (https://img2018.cnblogs.com/blog/1070782/201811/1070782 20181126114829628 838184144.png) 从图中可以看出
阅读全文
摘要:安装前准备 Linux版本信息: 发行版本:CentOS Linux release 7.5.1804 (Core) 内核版本:Linux version 3.10.0 862.el7.x86_64 所需软件: Erlang版本:erlang 19.3.6.12 2.el7.centos.x86_6
阅读全文
摘要:RabbitMQ简介 RabbitMQ是开源的消息代理和队列服务器,是由Erlang语言开发的,基于AMQP协议(Advanced Message Queuing Protocol高级消息队列协议)的标准实现。具有良好的性能和时效性,同时还能够非常好的支持集群和负载部署,非常适合在较大规模的分布式系
阅读全文
摘要:一、消息队列 1、消息队列概述 消息队列(Message Queue,简称为MQ) 是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消息而不管是谁发布的。这样发布者和使用者都不用知道对方的
阅读全文

浙公网安备 33010602011771号