预建的 AMQP 和 STOMP 客户端(如 GUI 客户端)
Posted
技术标签:
【中文标题】预建的 AMQP 和 STOMP 客户端(如 GUI 客户端)【英文标题】:Pre-built AMQP and STOMP client (as in GUI client) 【发布时间】:2011-03-20 21:01:40 【问题描述】:我正在寻找一个客户端(如 GUI 客户端,而不是客户端库)来使用我们的 MQ 服务器并熟悉它的语义。只需按下按钮(或文本命令)即可发送和接收消息,甚至可能会更新我有关服务器队列和消息的状态的信息。管理将是一个奖金。 UI 不必是图形的(即命令行客户端也可以)。
服务器可能会运行 RabbitMQ,所以任何特定于 RabbitMQ 的东西都可以,ActiveMQ 也是如此。但我宁愿有一个通用的 AMQP 或 STOMP 工具。
那么,有没有类似的东西存在?
我知道一些管理和监控工具随服务器分发一起提供,但没有客户端,对吧?
【问题讨论】:
【参考方案1】:RabbitMQ 附带的rabbitmq-management
插件(由rabbitmq-plugins enable rabbitmq_management
启用)有一个基于Web 的界面,它在端口15672 上侦听,可以做你(我曾经)要求的一切。
【讨论】:
【参考方案2】:用于发送和接收 AMQP 消息的命令行工具(用 C 编写):http://github.com/rmt/amqptools
【讨论】:
【参考方案3】:查看BQL RabbitMQ 插件。
它为您提供了一种用于 AMQP 的 SQL 风格的语言。例如,
BQL> create exchange myexchange;
ok
BQL> create durable queue 'myqueue'
ok
BQL> select name,messages from queues where 'durable'=true order by name
----------------------
| name | messages |
----------------------
| myqueue | 0 |
显然,它是 RabbitMQ 特定的。
如果您愿意编写一些代码,可以查看 RabbitMQ Java 和 .NET 客户端中的示例:
Java examples .NET examples它们不是很形象化,但试图理解它们会迫使你提出正确的问题。
已经有一段时间了,但我记得我认为熟悉 AMQP 的最好方法是阅读 0-9-1 spec 并编写一些简单的程序;特别是,该站点上的协议文档提供了很多示例。
【讨论】:
嗯,还有 Stomp 插件,但我无法评论。 dev.rabbitmq.com/wiki/StompGateway 另外,如果您有任何问题(任何与 AMQP 相关的问题),请在 RabbitMQ 讨论邮件列表上写一行。 lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss 我害怕这个。不过还不错:大约 5 年后我再次开始编写 Java,并且还学习了一些 Ant。我确实会使用 Rabbit 的 Java 库编写我自己的 AMQP 客户端,但同时我会使用 BQL。谢谢。 BQL 原来是我一直在寻找的工具。谢谢! (协议规范我也打印出来了)【参考方案4】:对于 Apache ActiveMQ,有
http://localhost:8161/admin/ 的 Web 管理控制台
Sourceforge 上的ApacheActiveMQBrowser 项目:
HermesJMS,在plugin page上没有提到ActiveMQ 5(只有3和4),但是有一个活跃的user forum开发的开源项目 基于消息管理 gui 的工具 Apache ActiveMQ。
【讨论】:
虽然我已经决定使用 RabbitMQ,但我仍然会使用您提到的两个工具来使用 ActiveMQ(我已经了解 Web 界面。)谢谢。以上是关于预建的 AMQP 和 STOMP 客户端(如 GUI 客户端)的主要内容,如果未能解决你的问题,请参考以下文章