使用 Micrometer 和 Datadog 的 RabbitMQ Java 客户端指标
在本帖中,我们将介绍 RabbitMQ Java 客户端库如何收集运行时指标并将其发送到 JMX 和 Datadog 等监控系统。
在本帖中,我们将介绍 RabbitMQ Java 客户端库如何收集运行时指标并将其发送到 JMX 和 Datadog 等监控系统。
RabbitMQ 团队很高兴宣布 HOP(RabbitMQ HTTP API Java 及其他 JVM 语言客户端)2.0 版本发布。此新版本引入了一个基于 Spring Framework 5.0 WebFlux 的新响应式客户端。
RabbitMQ Java 客户端 4.0 版本引入了运行时指标支持。这对于了解客户端应用程序的运行状况特别有用。让我们看看如何启用指标收集以及如何在 JMX 中甚至在 Spring Boot 应用程序内部监控这些指标。
这篇博文是为 2015 年发布的 RabbitMQ 3.5 编写的。虽然有些部分仍然适用,但有很多信息已过时。例如,RabbitMQ 4.0 不再支持队列镜像,“将消息分页到磁盘”已不再是 RabbitMQ 需要做的事情,因为消息几乎总是立即持久化到磁盘。
为了防止快速的发布者使代理(broker)超载,超出其当前处理能力,RabbitMQ 实现了一个内部机制,称为*信用流(credit flow)*。RabbitMQ 内部的各种系统将使用此机制来降低发布者的速度,同时允许消息使用者追赶。在这篇博文中,我们将了解*信用流*的工作原理,以及我们可以做什么来调整其配置以获得最佳性能。
RabbitMQ 3.3 的目标之一是让您能够更轻松地找到运行系统中的瓶颈。旧版本的 RabbitMQ 允许您看到您受到速率限制,但并不容易让您看到原因。在这篇博文中,我们将讨论 3.3 版本中的一些新性能指标。
我先警告您:这又是一篇关于 RabbitMQ 3.3 中性能相关更改的长篇博文。您还在吗?很好。
所以,在 上一篇帖子中,我提到了“一个我将在未来的博文中讨论的新功能”。那个功能就是消费者偏差。
昨天我们已经公布了坏消息,所以今天我们来聊聊(一些)好消息:某些类型的发布和消费现在速度快了很多,尤其是在集群环境中。
欢迎回来!上次我们讨论了流量控制和延迟;今天,让我们来谈谈不同功能如何影响我们看到的性能。这里有一些简单的场景。和上次一样,它们都是围绕一个发布者和一个消费者以最快速度发布消息的主题进行的变体。
所以今天我想谈谈 RabbitMQ 性能的某些方面。有大量的变量影响您可以从 RabbitMQ 服务器获得的整体性能水平,今天我们将尝试调整其中的一些变量,看看会发生什么。