【发布时间】:2020-05-23 15:49:56
【问题描述】:
这将是一个陈述性问题。我知道什么是 rabbitMQ 以及它的用途。 我有一个包含许多 API 端点的 spring API 项目。 例如localhost:80/do-A, localhost:80/do-B 现在,我的客户端项目使用这些带有所需参数的端点创建请求。 在我的 API 项目中,端点看起来像
Map(/do-1)
public Customer DoA(Customer customerObject){
return customer
}
据我所知,RabbitMQ 是 API 和 CLIENT 之间的一个中间件,用于存储请求,API 将能够逐个检索每个请求,这种方法保证了在重负载时的稳定性和不丢失请求,尤其是当涉及交易活动。
如果我实现rabbitMQ,设计会是这样的,
- 客户端->创建请求>发送到rabbitMQ,监听rabbitMQ
- API 从队列中检索请求,对其进行处理,然后将响应发送到队列。
所以,问题是,我应该怎么做才能将我现有的端点转换为兔子实现的端点?在 rabbit 实现之后它们是否仍然存在,或者我将不得不全部更改它们并为它们一一附加侦听器?
【问题讨论】:
-
如果客户端项目将消息推送到队列并且服务器监听同一个队列,我认为你不需要API层。
-
这是一个很好的观点,我试图理解。如果我实现rabbit,是否还需要保留api层
-
不,你只需要保留服务层。