跳至主内容

3.7.0 版本中全新的 rabbitmqctl

·阅读 2 分钟
Daniil Fedotov

v3.7.0 Milestone 8 开始,RabbitMQ 将提供一套全新的命令行工具(rabbitmqctlrabbitmq-plugins 等),它们经过了彻底的重构。我们在这个项目中有几个目标。

我们希望使用更易于使用的命令行解析器,并生成更有用的帮助和错误消息。

  • CLI 工具应当能够通过插件进行扩展:例如管理、联邦(federation)、铲子(shovel)、信任存储(trust store)等插件,都具有旨在由 CLI 工具调用的功能,但以往唯一的方法是使用 rabbitmqctl eval,这不仅容易出错,而且可能存在危险。
  • 我们希望在一个真实的项目中尝试使用 Elixir,并让不熟悉 Erlang 的开发者更容易扩展 CLI 功能。
  • 我们的 CLI 工具历来缺乏良好的测试覆盖率;新的工具应当(而且确实已经)具备这一点。
  • CLI 工具应当能够生成机器友好的格式,无论是 JSON、CSV 还是其他格式;在最初的实现中,并没有为此提供内部基础设施。
  • CLI 工具应当像所有插件、客户端库等一样,成为一个独立的存储库。

九个月后,这项实验被宣布成功,并集成到了 RabbitMQ 的发行版中。

请尝试 v3.7.0 Milestone 8 版本,并查看 扩展 CLI 有多简单

还有一个更长的文档,涵盖了新功能和实现决策。

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