spring boot rabbit 消费者 vs REST API 优先级

问题描述

我们正试图弄清楚 Srping Boot 在一个服务中如何运行

a) 从兔子队列中拉取事件 b) 提供带有 REST API 的 UI

问题是我们希望以某种方式配置 Spring Boot,使 REST API 优先于 Rabbit 队列。我在谷歌上搜索了 Spring Boot Rest 控制器缓冲区等内容,但没有找到任何可行的方法

Spring Boot 应该有某种方法,在处理事件(REST API 调用或 Rabbit pull)之后,检查 REST 缓冲区中是否有任何东西(如果这样的东西甚至存在),并且仅当它为空时,从队列中拉出另一个事件。

我们甚至不确定 Spring Boot 是否优先考虑 Rabbit 而不是 REST,但经过一些 UAT 之后似乎确实如此。

切换到使用 Rabbit 的推送模式似乎是一种选择,但我们想要别的东西。

另一种选择是创建副本服务:两个服务中的相同业务逻辑,一个只消耗兔子,另一个提供用于 UI 的 REST API,但这当然增加了 DevOps 的复杂性

解决方法

两种机制是完全独立的;该框架不提供它们之间的协调。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...