【发布时间】:2020-10-17 13:38:21
【问题描述】:
我正在使用 RabbitMQ 和 Spring 构建后端。我的 POST、UPDATE 和 DELETE 端点使用我的消息代理 (rabbitMQ) 可以正常工作。 但是,我不知道应该如何使用消息代理实现 GET 端点。有没有办法使用异步通信为前端检索数据库信息?
编辑:我找到了解决方案。如果你想在微服务 Y 上使用它,你应该从微服务 X 克隆数据。此外,如果在 X 上更改它,你必须保持这些数据的更新,每次都将它发送给 Y。
微软有一些关于微服务的好东西,对我帮助很大:https://docs.microsoft.com/pt-br/dotnet/architecture/microservices/architect-microservice-container-applications/communication-in-microservice-architecture
【问题讨论】:
-
如果你使用邮递员,如果你输入你的请求的 URL 以及它的 CRUD 操作类型,你可以得到它的代码。
-
只是好奇,有什么理由需要'get'端点是异步的,为什么它应该通过消息代理?如果前端需要API响应,应该是直接同步调用后端API,将响应返回给前端?
-
是的,@DinakaranSankaranarayan。我正在学习异步通信,并且在尝试了解如何使用微服务通信使我的所有端点完全异步时遇到了很多麻烦。好吧,我想我应该将它用于 GET。但如果我不这样做,那么我将在服务之间进行耦合,不是吗?
标签: java spring rabbitmq microservices