3

我正在尝试建立一个发布/订阅系统。我的技术总监建议在分配给我的项目中使用 Rabbitmq 和 STOMP。

在这个系统中,我希望在服务器端创建交换并传递给用户订阅。我希望用户订阅交换并在信息可用时接收信息。我不希望客户端能够订阅任意交换(或主题交换的路由密钥,我不确定我要使用什么系统)。

例如,如果有人为公司的 widgetInk 工作,当他们登录我们的网站时,他们会收到与 widgetInk.whatever 交换和 AllUsers.whatever 交换的连接,但仅此而已。如果客户端尝试订阅其他内容,他们会收到错误消息。

我已经阅读了所有的 RabbitMQ 教程,并查看了他们的部分内容。我找到了这篇关于访问控制的基本文章,但是现在已经阅读了三遍我仍然不知道rabbitmq是否适合我的要求。

可以根据我的要求配置 Rabbitmq 吗?我可以使用哪些资源来了解 Rabbitmq 的权限系统?有没有人建立或使用过这样的系统?切换到 ZeroMQ 或 ActiveMQ 是否符合我的最大利益?

4

1 回答 1

0

我想提一下您可能会使用的另一个平台:Autobahn(开源)或WebMQ(基于 Autobahn)。

WebMQ 提供了这些特性(除了许多其他开箱即用的特性):

  • 基于 WebSocket 的发布订阅 ( WAMP )
  • 客户端会话的身份验证 (WAMP-CRA)
  • 主题的细粒度可配置授权

如果您想走开源/构建自己的道路,这里有一些教程。如果您需要具有用于配置/管理的 Web UI 的集成商业支持产品,请与我们联系。

免责声明:我是 Autobahn/WAMP 的创建者,并为 Tavendo 工作。

于 2012-08-14T06:59:28.517 回答