跳至主内容

管理、监控和统计

·阅读 2 分钟
Simon MacMullen

长久以来,RabbitMQ 内置的管理和监控功能一直是 rabbitmqctl。虽然它是一个合理(如果您喜欢命令行的话)的管理工具,但 rabbitmqctl 作为监控工具从未强大过。因此,我们将要构建更好的东西。

当然,很多人不喜欢命令行工具,所以一些人已经构建了管理 RabbitMQ 的替代方法。例如,Alice / WonderlandSpring AMQP 是我能想到的两个。然而,标准化程度不高,并且人们通过 epmd 与 Rabbit 通信并不总是很方便。因此,我们将构建更简单的东西。

考虑到这一点,我想宣布 RabbitMQ Management 的存在。这是一个提供通过 RESTful 接口进行管理和监控的插件,并附带一个 Web GUI。您可以将其视为一个超级 Alice,也是任何其他人们想要构建的工具的集成点。

因此,RabbitMQ Management 将允许更轻松的管理和更好的监控。如何更好?好吧,作为即将发布的 rabbit 版本的一部分,我们在 broker 中添加了统计信息收集功能。这可以按通道/队列/交换器的粒度计数消息的发布、路由、传递和确认,因此我们可以确定哪些通道发布速度快或消费速度慢,哪些队列从哪些交换器接收消息,哪些连接和主机最繁忙等等。

当然,所有这些额外的记账都需要付出代价;当启用统计信息收集时,服务器的运行速度可能会变慢约 10%(假设它是 CPU 密集型的;这通常意味着处理瞬时消息。如果它是 I/O 密集型的,性能影响可能较小)。目前,当安装 management 插件时,统计信息收集会自动启用,但我们将使其可配置。

因此,我想在此发出警告:它目前处于开发的 **非常** 早期阶段,实际上不应信任任何除了实验和玩耍之外的事情。REST API 会改变,UI 会改变,该插件可能会导致服务器崩溃,并且 TODO 列表目前几乎长得可笑。但希望这能让您对我们将要做的事情有一个大概的了解。

© . This site is unofficial and not affiliated with VMware.