如何通过网关/ Api网关/ Rest将外部服务连接到队列?

时间:2019-01-03 08:44:40

标签: java spring spring-boot rabbitmq gateway

我想允许外部服务使用我的RabbitMQ队列,问题是我不想直接访问我想通过网关/ API管理器/ Rest端点公开的RabbitMQ。

我不确定这是否可行,但我想知道将事件留在队列中的方法,这些事件可以由以安全方式公开或像网关一样集中化的外部服务使用。

谢谢大家的回复:)

2 个答案:

答案 0 :(得分:0)

您可以尝试创建回调服务。

系统将要执行的工作是接受(甚至存储)POST URL。当您的 own 队列使用者使用一条消息时,它将只发送队列消息(可能带有附加数据)作为对您存储的URL的回调。然后,URL所属的服务器将对回调服务发送的消息执行任何所需的操作。

答案 1 :(得分:0)

@ KaNa0011回答说,回调可以是一个解决方案,但这给生产者带来了更多的责任(如果接收者不可用该怎么办?)

另一种方法是将事件显示为Atom提要,Oliver Gierke在他的演讲“重构到系统系统”中对此进行了解释https://youtu.be/MEySjYD86PQ?t=5487 < / p>