问题标签 [rabbitmq-management]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
363 浏览

rabbitmq - RabbitMQ API 返回不正确的队列统计信息

我正在使用托管在 CloudAMQP 上的 RabbitMQ 实例。我正在调用管理 API以获取详细的队列统计信息。对 API 的 10 次调用中约有 1 次返回无效数字。

端点是/api/queues/[vhost]/[queue]?msg_rates_age=600&msg_rates_incr=30。我正在寻找在 10 分钟内以 30 秒为增量的平均消息速率。通常会返回我感兴趣的统计数据的有效数据,例如

但有时我会得到一个或两个“avg_rate”值的错误结果,通常是 714676 或更高。如果我然后等待 15 秒并再次调用相同的 API,则数字会恢复正常。超过 10 分钟的平均值不可能以 200 的倍数跳跃,然后几秒钟后又回落。

我无法通过本地安装重现该问题,只能在队列总是非常繁忙的生产环境中重现。管理网页上显示的数据看起来总是正确的。有没有其他方法可以像 UI 一样准确地获得相同的统计数据?

0 投票
0 回答
491 浏览

rabbitmq - RabbitMq 抗饥饿模式

要解决的问题:防止客户饿死其他客户。

我计划让每个客户都有自己的队列,然后让一个消费者从所有这些队列中消费。就我而言,可能有数百名客户,但排队很便宜。具有合理的低预取计数默认代理行为(随机选择从哪个队列弹出)应该会产生令人满意的结果。

在此处输入图像描述

这种策略的问题是当新客户出现时。我可以懒惰地创建队列并将其绑定到Publishermsg.in中的交换。但是如何让消费者从这个新队列中消费呢?customer.xxx

这几乎是主题模式,但不是真的,因为我需要每个客户端的缓冲区。优先级也不能解决这个问题,这会破坏每个客户的消息订单。有没有一种基于模式的消费方式?就像绑定一样,例如。customer.*.

轮询管理 API是一种选择,但会延迟新客户的第一条消息的处理,直到消费者轮询为止。拥有一个单独的发布/订阅通道用于消费者可以采取行动的元数据new customer.003将减少延迟(并避免轮询 API),但会使发布者更加复杂。

我觉得那里有一个很好的解决方案,我只是还没有找到它。感谢您的反馈!

0 投票
1 回答
49 浏览

.net - 如何在新/旧 RabbitMQ 队列声明/销毁时得到通知

在我们的解决方案中,客户端可能会声明数千个队列(实际上,我们系统中的每个物联网设备都有一个队列)。

每次声明新队列(已连接 IoT 设备)或销毁某些现有队列(例如由于网络问题而断开 IoT 设备)时,我都希望收到通知。

现在我加载所有当前存在的队列的列表,并用之前加载的列表截取它。这种方法看起来不太理想,并且会产生不必要的服务器负载,我想避免这种情况。有没有更好的办法?

0 投票
1 回答
52 浏览

python - 为什么 rabbitmq 管理插件报告统计数据有差异?

我正在使用 rabbitmq 服务器和 celery。我有一个队列,生产者向其中发布任务。任务是自动确认的。但我发现 rabbitmq 报告的内容存在差异。在消息率中,它显示自上一分钟以来没有消息被确认/发布/传递,但排队的消息不断下降。

RabbitMQ 队列

这是预期的行为吗?或者引擎盖下发生了一些事情。

提前致谢。

0 投票
1 回答
546 浏览

rabbitmq - 是否可以对 rabbitmq-management 插件使用基于证书的身份验证?

我们使用rabbitmq-managementREST API 对rabbitmq的实体(队列/交换)进行不同的操作。通过登录名/密码进行的标准身份验证工作正常,但出于某些原因,我们希望使用无密码身份验证(基于 ssl 证书)。根据文档(https://www.rabbitmq.com/management.html),看起来有这种可能性。

但是如果我们尝试配置插件:

高级配置

我们客户的 .NET 应用程序

我们得到以下信息(Fiddler 会话):

  1. | 隧道到 | HTTP/1.1 200 连接已建立(发现与 SSLv3 兼容的 ClientHello 握手)
  2. | 主机名 | HTTP/1.1 401 未经授权

是否可以对rabbitmq-management插件使用基于证书的身份验证?如果是,有人可以提供任何样本或文档链接我们必须做什么?

0 投票
1 回答
412 浏览

rabbitmq - 是否可以配置 RabbitMQ 管理插件使用的密码套件?

我有一个 RabbitMQ 3.7.7 管理映像正在运行。它启用了rabbitmq-management插件,并根据文档配置为使用 HTTPS :

当我使用testssl.sh测试工具评估 TLS 设置时,对SWEET32漏洞的测试失败:

OpenVAS框架也抱怨:

漏洞检测结果

解决方案类型:缓解

是否可以配置 RabbitMQ 管理插件将使用哪些密码套件?对于RabbitMQ 是可能的,但是查看rabbitmq_management.schema似乎对于管理插件来说是不可能的。还是有其他方法可以修复漏洞?

0 投票
1 回答
176 浏览

rabbitmq - 访问rabbitMQ管理界面

我已按照安装程序解锁浏览器访问:

到达 localhost:15672 后,我得到的只是一个空白页:

登录表格在哪里?

0 投票
1 回答
800 浏览

ssl - 如何为rabbitmq添加密码套件支持?

我的环境中有两个 RMQ 安装。旧安装版本为 3.7.8 和 erlang 21.1。较新的安装版本为 3.7.9 和 erlang 21.2

新安装只有这些套件支持此密码。与具有两倍多密码套件的旧安装不同,根本没有 ecdhe 支持。

我无法登录 chrome 中的管理插件。它抛出 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 异常。如何添加更多密码套件?

0 投票
1 回答
739 浏览

macos - 在通过自制软件安装的 macos 上访问 Rabbit MQ UI 时出错

我通过以下方式在运行 OS X 的本地机器上安装了 Rabbit MQ:

brew install rabbitmq

我通过以下方式启动和停止服务器:

brew services start/stop rabbitmq

我通过以下方式安装了 Web UI 插件:

rabbitmq-plugins enable rabbitmq_management

我希望在浏览器中查看 Web UI:

http://localhost:15672/

它不加载。报告的错误是 431,这意味着请求标头字段太大。 https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/431

0 投票
2 回答
6426 浏览

docker - 如何使用 DockerProvider 服务修复 Windows Server 2019 中的“Cookie 文件 /var/lib/rabbitmq/.erlang.cookie 必须只能由所有者访问”错误

我在 Windows Server 2019 中安装了 docker,DockerProvider 我正在使用此代码

之后我Docker-Compose用这个代码安装

之后我使用 docker compose 文件

到这里为止一切都很好,但是在我http://localhost:15672/在浏览器中调用 url 之后,rabbitmq 崩溃了,我看到了这个错误docker logs <container-id>

.yml文件正常工作,docker for windows 但在 Windows 服务器中运行该文件后,我看到此错误