node.js - 服务于 REST api 的 nodejs Web 服务,同时也是消息队列的消费者
问题描述
我正在构建一个应用程序并尝试遵循微服务的最佳实践,目前正在学习消息队列的主题及其相对于 REST API 的优势。
我的主要问题是,在后端提供一个面向外部的 REST API 并同时充当消息队列消费者的 Web 服务是不是一个坏主意?
细节:
我在 NodeJS 中有一个名为 MyObjectService 的服务,它的面向外部的 REST API 是驻留在数据库中的 MyObject 上的简单 GET。我有另外两个服务想要更新 MyObject 的状态,而不是将另外两个服务直接连接到数据库来更新对象,我想排队更新对象以供 MyObjectService 使用,然后 MyObjectService 将更新数据库中的 MyObject。这将有助于提高可用性和松散耦合。
这是不好的做法,尤其是对于 NodeJS(由于 NodeJS 的单线程方面?),正确的解决方案是拥有两个独立的服务,一个 GETs MyObject,另一个 UPDATEs MyObject?还是我所描述的完全可能?
我将不胜感激对此的任何想法。谢谢你。
解决方案
推荐阅读
- python-3.x - 确定父列表的主要元素之间所有可能的组合
- python-3.x - 从 html 代码中提取年份内容并将其保存为数据框
- javascript - 如何为 for 循环中的最后一个值提供不同的代码?
- android - 如何检查坐标是在位图内还是位图外
- html - 使用 display flex 无法重新调整顶部大小
- c++ - 如何在我的 Qt 窗口中创建一个“洞”?
- spring-boot - Apache Camel AS2 如何处理异步 mdn
- clips - CLIPS:CLIPS 中的数组?(需要一些指导,CLIPS 中的新功能)
- c++ - 如何获取驱动器的文件复制百分比或文件复制进度
- reactjs - RangeFormat 的 columnWidth 给出了一些随机数,而不是给出了 excel-addin office-js 中的实际宽度