
rabbitmq
文章平均质量分 88
xiaoliuliu2050
这个作者很懒,什么都没留下…
展开
-
rabbitmq 挂了之后再启动不成功
故障描述由于磁盘满,导致rabbitmq崩溃,无法提供服务 清理磁盘空间后,rabbitmq无法自动恢复正常sudo service rabbitmq-server start 启动失败sudo systemctl restartrabbitmq-server看日志提示 是重新构建索引失败了。所以应该是恢复队列内容数据时候发生了错误可能是由于磁盘满了,队列数据写磁...原创 2019-12-25 12:54:10 · 2988 阅读 · 0 评论 -
spring amqp 起步及抽象接口定义 (1)
Spring AMQP项目是用于开发AMQP的解决方案。 我们提供一个“模板”作为发送和接收消息的抽象。我们还为普通POJO进行提供消息处理支持。这些库促进AMQP资源的管理,同时支持使用依赖注入和声明式配置。 在所有情况下,您将看到与Spring Framework中的JMS支持的相似之处依赖<dependency> <groupId>org....翻译 2019-07-08 16:03:51 · 362 阅读 · 0 评论 -
rabbitmq 学习 之Consumer prefetch count(34)
https://www.rabbitmq.com/consumer-prefetch.htmlConsumer prefetch is an extension to theconsumer prefetch mechanism.AMQP 0-9-1 specifies thebasic.qosmethod to make it possible tolimit the numbe...原创 2019-06-29 16:49:47 · 1586 阅读 · 0 评论 -
rabbitmq 学习 之Consumer Cancel Notification(33)
https://www.rabbitmq.com/consumer-cancel.htmlOverviewWhen a channel is consuming from a queue, there are various reasons which could cause the consumption to stop. One of these is obviously if ...原创 2019-06-17 23:27:34 · 1225 阅读 · 0 评论 -
rabbitmq 学习 之priority queues(32)
https://www.rabbitmq.com/priority.htmlRabbitMQ has priority queue implementation in the core as of version3.5.0. Any queue can be turned into a priority one using client-providedoptional argume...原创 2019-06-17 23:08:25 · 287 阅读 · 0 评论 -
rabbitmq 学习 之dead letter queues(31)
Messages from a queue can be 'dead-lettered'; that is, republished to another exchange when any of the following events occur:queue 中的消息可能成为“死信”;也就是说,会在下面任何一种情况发生时,重新 publish 消息到另外的 exchange 中:Th...转载 2019-06-17 22:53:09 · 432 阅读 · 0 评论 -
rabbitmq 学习 之lazy queues(30)
RabbitMQ从3.6.0版本开始引入了惰性队列(Lazy Queue)的概念。惰性队列会尽可能的将消息存入磁盘中,而在消费者消费到相应的消息时才会被加载到内存中,它的一个重要的设计目标是能够支持更长的队列,即支持更多的消息存储。当消费者由于各种各样的原因(比如消费者下线、宕机亦或者是由于维护而关闭等)而致使长时间内不能消费消息造成堆积时,惰性队列就很有必要了。默认情况下,当生产者将消息发送...原创 2019-06-17 22:11:39 · 294 阅读 · 0 评论 -
rabbitmq 学习 之持久化配置(29)
https://www.rabbitmq.com/persistence-conf.htmlRabbitMQ持久化层的目的是在大多数没有配置的情况下提供良好的结果。然而,某些配置有时是有用的。本页面解释如何配置它。建议你在采取任何行动之前把它全部读完。持久化工作原理持久化消息和非持久化消息均可被写入磁盘。持久化消息一到达队列就会被写入磁盘,非持久化消息只有在内存压力下才会被写入磁盘。在...原创 2019-06-17 21:57:51 · 985 阅读 · 0 评论 -
rabbitmq 学习 之队列最大长度限制(28)
https://www.rabbitmq.com/maxlength.html队列的最大长度可以限制为设定数量的消息,或设定的字节数(所有消息体长度的总和,忽略消息属性和任何开销),或两者。对于任何给定队列,最大长度(任一类型)可以由使用队列参数的客户端定义,也可以在使用策略的服务器中定义。在策略和参数都指定最大长度的情况下,应用这两个值中的最小值。队列长度设置也可以由opera...原创 2019-06-17 17:46:09 · 11398 阅读 · 2 评论 -
rabbitmq 学习 之 可靠机制(27)
https://www.rabbitmq.com/reliability.html包括连接失败检测 :提供了监听器心跳检测 节点或者客户端 可用性。发布者确认机制消费者确认机制集群(镜像)机制保证 高可用当队列被移除 会有 通知客户端取消监听器跨网 集群 有 fedration 和shovel...原创 2019-06-17 15:44:13 · 107 阅读 · 0 评论 -
rabbitmq 学习 之 mirror queue cluster 搭建(26)
官网 :https://www.rabbitmq.com/ha.html高可用(镜像)队列默认情况下,queues存放在RabbitMQ集群的单个节点之上。exchanges和bindings恰恰相反,在集群中的所有节点中都有存档。queues可以配置镜像以此可以在多个节点中有备份。每个镜像队列包含一个master节点和一个或者多个slave节点。如果master节点由于某种原因失...转载 2019-06-17 11:39:11 · 1333 阅读 · 0 评论 -
rabbitmq 学习 之 普通cluster 搭建(25)
转载自:https://www.jianshu.com/p/6376936845ff摘要:实际生产应用中都会采用消息队列的集群方案,如果选择RabbitMQ那么有必要了解下它的集群方案原理一般来说,如果只是为了学习RabbitMQ或者验证业务工程的正确性那么在本地环境或者测试环境上使用其单实例部署就可以了,但是出于MQ中间件本身的可靠性、并发性、吞吐量和消息堆积能力等问题的考虑,在生产环境上...转载 2019-06-17 10:56:28 · 357 阅读 · 0 评论 -
rabbitmq 学习 之 shovel 插件使用(24)
转载自:https://yq.aliyun.com/articles/42383?spm=a2c4e.11153940.0.0.666f202bTDO7gA 从之前的两篇文章《【原创】RabbitMQ 之 Shovel(翻译)》和《【原创】RabbitMQ 之 Dynamic Shovel(翻译)》中,我们已经知道 shovel 插件的使用存在 static 和 dynamic ...转载 2019-07-08 20:50:45 · 547 阅读 · 0 评论 -
rabbitmq 学习 之Consumer priorities(35)
OverviewConsumer priorities allow you to ensure that high priority consumers receive messages while they are active, with messages only going to lower priority consumers when the high priority consu...原创 2019-06-29 16:49:41 · 365 阅读 · 0 评论 -
rabbitmq 学习 之exchange to exchange bindings(36)
OverviewInAMQP 0-9-1thequeue.bindmethod binds a queue to an exchange so that messages flow (subject to various criteria) from the exchange (thesource) to the queue (thedestination). We have in...原创 2019-06-18 00:08:29 · 1045 阅读 · 0 评论 -
spring amqp container and broker-named queues(7)
虽然使用AnonymousQueue实例作为自动删除队列更好,但从2.1版开始,您可以使用在侦听器容器里使用broker named queues。下面的例子说明了如何做到这一点:@Bean public Queue queue() { return new Queue("", false, true, true);}@Bean public ...翻译 2019-07-12 16:53:58 · 308 阅读 · 0 评论 -
spring amqp receive message(6)
消息接收总是比发送稍微复杂一些。接收消息有两种方法。更简单的方法是使用轮询方法调用一次轮询一条消息。更复杂但更常见的方法是注册一个按需异步接收消息的侦听器。我们将在下两个小节中考虑每种方法的示例。轮循消费者AmqpTemplate本身可用于轮询消息接收。默认情况下,如果没有可用的消息,则立即返回null。没有阻塞。从1.5版本开始,您可以设置一个receiveTimeout(以毫秒为单位)...翻译 2019-07-11 23:25:24 · 1106 阅读 · 0 评论 -
spring amqp send message(5)
发送消息时,您可以使用以下任何一种方法: void send(Message message) throws AmqpException; void send(String routingKey, Message message) throws AmqpException; void send(String exchange, String routingKey, Me...翻译 2019-07-11 22:00:34 · 569 阅读 · 0 评论 -
rabbitmq 学习 之 Management Plugin(40)
管理插件介绍RabbitMQ管理插件提供基于HTTP的API,用于管理和监控RabbitMQ节点和集群,以及基于浏览器的UI和命令行工具rabbitmqadmin。它定期收集和汇总有关系统许多方面的数据。这些指标在UI和监控系统中都向操作员公开,用于长期存储,警报,可视化,图表分析等。该插件可以配置为使用HTTPS,非标准端口,路径前缀,HTTP服务器选项,自定义严格传输安...翻译 2019-06-30 00:48:28 · 1606 阅读 · 0 评论 -
rabbitmq 学习 之 Troubleshooting Network Connectivity(39)
https://www.rabbitmq.com/troubleshooting-networking.html网络连接故障排除概观本指南伴随着一个关于网络,侧重于网络连接的troublshooting。对于使用TLS的连接,还有一个有关TLS故障排除的附加指南。故障排除方法网络连接问题的故障排除是一个广泛的主题。有关于它的全书。本指南介绍了一种方法和广泛可用的网络工...翻译 2019-06-30 00:06:41 · 670 阅读 · 0 评论 -
rabbitmq 学习 之 Networking and RabbitMQ(38)
https://www.rabbitmq.com/networking.html网络和RabbitMQ介绍客户端通过网络与RabbitMQ进行通信。broker支持的所有协议都是基于TCP的。RabbitMQ和操作系统都提供了许多可以调整的旋钮。其中一些与TCP和IP操作直接相关,另一些与应用程序级协议(如TLS)有关。本指南涵盖了与RabbitMQ环境中的网络相关的多个主题。...翻译 2019-06-29 23:49:09 · 1043 阅读 · 0 评论 -
rabbitmq 学习 之Connections(37)
https://www.rabbitmq.com/connections.html连接概观本指南涵盖与网络调整或大多数与网络相关的主题以外的连接相关的各种主题。网络和故障排除网络指南涵盖了这些内容。 channel是AMQP 0-9-1中一个密切相关的概念,也在单独的指南中有所涉及。RabbitMQ支持多种协议:AMQP 0-9-1有扩展名 AMQP 1.0 MQTT3....翻译 2019-06-29 23:03:21 · 1458 阅读 · 0 评论 -
spring amqp Message Converters(8)
AmqpTemplate还定义了几种发送和接收消息的方法,这些消息委托给MessageConverter。MessageConverter为每个方向提供了一个方法:一个用于转换为消息,另一个用于从消息转化。注意,在转换为消息时,还可以提供对象之外的属性。对象参数通常对应于消息体。下面的清单显示了MessageConverter接口定义: public interface Message...翻译 2019-07-12 17:51:01 · 630 阅读 · 0 评论 -
spring amqp AmqpTemplate(4)
与Spring框架和相关项目提供的许多其他高级抽象一样,Spring AMQP提供了一个“模板”,它扮演着核心角色。定义主要操作的接口称为AmqpTemplate。这些操作涵盖了发送和接收消息的一般行为。换句话说,它们对于任何实现都不是惟一的——因此名称中有“AMQP”。另一方面,该接口的一些实现与AMQP协议的实现绑定在一起。与JMS本身是接口级API不同,AMQP是一个线级协议。该协议的实现提...翻译 2019-07-08 23:50:18 · 2733 阅读 · 0 评论 -
spring amqp 添加自定义客户端属性(3)
CachingConnectionFactory现在允许访问底层连接工厂,例如,允许设置自定义客户端属性。下面的例子说明了如何做到这一点:connectionFactory.getRabbitConnectionFactory().getClientProperties().put("thing1", "thing2");在查看连接时,这些属性将出现在RabbitMQ管理UI中...翻译 2019-07-08 20:58:05 · 260 阅读 · 0 评论 -
spring amqp 连接和资源管理(2)
连接和资源管理:虽然我们在前一节中描述的AMQP模型是通用的,并且适用于所有实现,但是当我们进入资源管理时,详细信息是特定于代理实现的。因此,在本节中,我们将重点讨论仅存在于“spring-rabbit”模块中的代码,因为此时RabbitMQ是惟一受支持的实现。管理到RabbitMQ代理的连接的中心组件是ConnectionFactory接口。ConnectionFactory实现的职责是...翻译 2019-07-08 17:51:43 · 1826 阅读 · 0 评论 -
rabbitmq 学习 之Dynamic Shovel使用(23)
转载自 :https://yq.aliyun.com/articles/42378?spm=a2c4e.11153940.0.0.666f202bTDO7gAConfiguring Dynamic ShovelsInformation about dynamic shovels is stored in the RabbitMQ database, along with users, pe...转载 2019-07-08 20:51:01 · 957 阅读 · 0 评论 -
rabbitmq 学习 之shovel 插件使用(22)
转载自https://yq.aliyun.com/articles/41807为了方便工作中使用,对 RabbitMQ 的【Shovel】文档进行了翻译,鉴于自己水平有限,翻译中难免有纰漏产生,如果疑问,欢迎指出探讨。此文以中英对照方式呈现。 官方原文:http://www.rabbitmq.com/shovel.html==========================...转载 2019-06-16 23:13:53 · 2835 阅读 · 0 评论 -
rabbitmq 学习 之fedration 插件使用(21)
https://www.rabbitmq.com/federation.htmlfederation 插件的 high level 目标是,在不同 broker 之间进行消息传递而无需建立集群;该功能在很多场景下非常有用:Loose coupling松耦合性The federation plugin can transmit messages between brokers (or ...转载 2019-06-16 23:02:17 · 299 阅读 · 0 评论 -
rabbitmq 学习 之 消费者确认机制(6)
在RabbitMQ中,即使将queue,exchange, message等都设置了持久化之后,还是不能保证100%保证数据不丢失了。为了实现消息不丢失,我们需要从Consumer端和Productor端同时进行处理。本篇文章先介绍Consumer端,在AMPQ-0-9-1中有定义从消费者到RabbitMQ的消息确认机制,通过此机制可以保证消息能够从RabbitMQ正确到达消费者端。在消费者...原创 2019-06-15 18:49:29 · 256 阅读 · 0 评论 -
rabbitmq 学习 之 AMQP 0-9-1 学习(5)
AMQP 0-9-1 Quick Referencehttps://www.rabbitmq.com/amqp-0-9-1-quickref.htmlcomplete AMQP 0-9-1 reference.amqp 0-9-1 协议是高级消息队列协议 ,它定义了好多客户端和服务器之间交互的方法,rabbitmq 实现了这些方法,此外还实现了许多其他协议。ba...原创 2019-06-13 23:48:23 · 191 阅读 · 0 评论 -
rabbitmq 学习 之 概念学习(3)
https://www.rabbitmq.com/tutorials/amqp-concepts.html1 什么是AMQP 0-9-1?AMQP 0-9-1 (Advanced Message Queuing Protocol) is a messaging protocol that enables conforming client applications to commun...原创 2019-06-13 23:29:34 · 439 阅读 · 0 评论 -
rabbitmq 学习 之 exchange 和简单示例学习(4)
rabbitmq 类似一个邮局负责 收件 发件,客户端发送消息到exchange ,exchange 路由消息到指定队列exchange主要 有 header ,fanout direct,topic 四种类型1 fanout exchange 会发送消息到 所有与它绑定的队列2 direct exchange 会按照 routingkey 发送消息到 与routeingkey 绑...原创 2019-06-13 22:04:33 · 406 阅读 · 0 评论 -
rabbitmq 学习 之 特性总结 (2)
1Asynchronous MessagingSupportsmultiple messaging protocols,message queuing,delivery acknowledgement,flexible routing to queues,multiple exchange type.2 Developer Experience 支持多客户端3 Distr...原创 2019-05-29 00:58:14 · 162 阅读 · 0 评论 -
rabbitmq 学习 之下载和安装(1)
参考官网 :https://www.rabbitmq.com/download.html1 选择适合自己系统的安装方式,比如centos ,打开连接https://www.rabbitmq.com/install-rpm.html2 There are two ways to install the most recent version of RabbitMQ:Installi...原创 2019-05-29 00:17:49 · 1150 阅读 · 0 评论 -
rabbitmq 学习 之 生产者确认机制(7)
1 RabbitMQ在收到消息后,还需要有一段时间才能将消息存入磁盘之中。RabbitMQ并不是为每条消息都做fsync的处理,可能仅仅保存到cache中而不是物理磁盘上,在这段时间内RabbitMQ broker发生crash, 消息保存到cache但是还没来得及落盘,那么这些消息将会丢失。为了解决这个问题RabbitMQ引入发送端消息确认机制,主要通过事务和publisher Confirm机...原创 2019-06-15 20:00:58 · 405 阅读 · 0 评论 -
rabbitmq 学习 之集成springboot 使用发送和监听功能(8)
1. 本文主要介绍内容:在Spring boot中消息的发送和接收的两种方式的demo配置使用MessageConverter对消息序列化2. 添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-sta...原创 2019-06-15 20:38:40 · 812 阅读 · 0 评论 -
rabbitmq 学习 之服务器端配置(9)
官网地址:https://www.rabbitmq.com/configure.html#configuration-filesA RabbitMQ node can be configured using a number of mechanisms responsible for different areas:Mechanism Description Configurat...原创 2019-06-15 22:42:34 · 897 阅读 · 1 评论 -
rabbitmq 学习 之分布式部署策略(20)
https://www.rabbitmq.com/distributed.html#federationRabbitMQ可以通过三种方法部署分布式系统:集群、联盟(federation)和shovel。集群通过连接多个机器组成单个逻辑中间服务器。机器之间通信要借助于Erlang的消息传输,要求集群中所有节点必须有相同的Erlang cookie;节点之间的网络必须是可靠的,且运行相同版本的...原创 2019-06-16 22:28:03 · 467 阅读 · 0 评论 -
rabbitmq 学习 之rabbitmq-diagnostics学习(19)
https://www.rabbitmq.com/rabbitmq-diagnostics.8.html作用 诊断 监控 健康检查语法rabbitmq-diagnostics[-n {nodename}] [-t timeout] [-q] [-s] [-l]{command} [command options...]-n 指定操作命令的节点 格式 rabb...原创 2019-06-16 22:08:29 · 1471 阅读 · 0 评论